İçeriğe geç

Uygulama5 dk okuma

Proxy Ayarları Nasıl Yapılır?

Elinizde bir proxy adresi ve port numarası var; sıradaki soru bunu nereye, nasıl gireceğiniz. Cevap kullandığınız araca göre değişir: işletim sistemi tüm uygulamalar için bir proxy tanımlayabilir, tarayıcılar kendi ayarlarını taşıyabilir, komut satırı ve yazılım kütüphaneleri ise çoğunlukla ortam değişkenlerine ya da kendi parametrelerine bakar. Bu rehberde en yaygın yerleri sırayla ele alıyor, çalışan örnekler veriyoruz.

Kategori
Uygulama
Yayın
Güncelleme
Okuma süresi
5 dakika

Başlamadan önce elinizde olması gerekenler#

Her ayarın temelinde dört bilgi vardır: proxy’nin adresi (IP ya da alan adı), port numarası, protokolü (HTTP, HTTPS ya da SOCKS5) ve gerekiyorsa kullanıcı adı ile parola. Ücretsiz listelerdeki proxy’lerde genellikle kimlik doğrulama yoktur; ücretli hizmetlerde ise kullanıcı adı ve parola neredeyse her zaman vardır. Protokolü yanlış seçmek, ayar doğru olsa bile bağlantının kurulamamasının en sık nedenidir.

İleri proxy akışıİstemci isteği proxy sunucuya gönderir, proxy isteği kendi adresiyle hedef sunucuya iletir ve yanıtı geri taşır. Hedef sunucu istemcinin değil proxy'nin adresini görür.İSTEK YOLUİstemci192.0.2.10Proxy sunucu198.51.100.7Hedef sunucu203.0.113.20istekyanıtistekyanıtProxy, istemcinin adresini görürHedef, proxy'nin adresini görür192.0.2.10 → proxy198.51.100.7 → hedef
Şekil 1İstemci isteğini proxy’ye iletir; proxy hedef siteye kendi adresinden bağlanır ve yanıtı size geri verir.
BiçimÖrnekNerede kullanılır
Adres:portproxy.example.com:PORTTarayıcı ve işletim sistemi ayar formları
URL biçimihttp://proxy.example.com:PORTcurl, ortam değişkenleri, çoğu kütüphane
Kimlik bilgili URLhttp://USERNAME:[email protected]:PORTKomut satırı ve yazılım kodu
SOCKS5 URLsocks5h://USERNAME:[email protected]:PORTSOCKS5 destekleyen istemciler
Tablo 1Aynı proxy bilgisinin farklı yazım biçimleri

Windows’ta sistem proxy’si#

  1. Ayarlar uygulamasını açın ve Ağ ve İnternet bölümünden Proxy’yi seçin.
  2. “El ile proxy kurulumu” altında Proxy sunucusunu kullan seçeneğini açın.
  3. Adres kutusuna proxy adresini, Bağlantı noktası kutusuna portu yazın ve Kaydet’e basın.
  4. İsteğe bağlı olarak “Aşağıdaki girişlerle başlayan adresler için proxy sunucusunu kullanma” alanına yerel adresleri ekleyin.

Bu yöntem HTTP proxy’ler için uygundur ve sistem proxy’sini kullanan uygulamaların hepsini etkiler. Windows’un bu ekranı kullanıcı adı ve parola alanı sunmaz; kimlik doğrulama gerekiyorsa ilgili uygulama sizden bunu ayrıca ister. Doğrudan SOCKS5 gerektiren işler için uygulamanın kendi proxy ayarını ya da ayrı bir istemci yazılımı kullanmak daha sağlıklıdır.

macOS’ta sistem proxy’si#

Sistem Ayarları içinde Ağ’ı açın, bağlı olduğunuz Wi‑Fi ya da Ethernet bağlantısında Ayrıntılar’ı seçin ve Proxy’ler sekmesine geçin. Burada Web Proxy (HTTP), Güvenli Web Proxy (HTTPS) ve SOCKS Proxy seçeneklerini ayrı ayrı açabilirsiniz. macOS bu ekranda kimlik doğrulama için kullanıcı adı ve parola alanı sunar; “Proxy sunucusu parola gerektirir” kutusunu işaretleyerek bilgileri girebilirsiniz.

Tarayıcılarda proxy#

Firefox

Firefox kendi proxy ayarını taşır. Ayarlar sayfasında Ağ Ayarları bölümüne girin, “El ile proxy yapılandırması”nı seçin ve HTTP ya da SOCKS sunucu alanlarını doldurun. SOCKS5 için “SOCKS v5” seçeneğini işaretleyin; DNS sorgularının da proxy üzerinden gitmesi için “SOCKS v5 kullanırken proxy DNS’i kullan” kutusunu açın. Kimlik doğrulama gerektiğinde tarayıcı kullanıcı adı ve parolayı bir pencerede sorar.

Chrome ve Edge

Bu tarayıcılar varsayılan olarak işletim sisteminin proxy ayarını kullanır; yani yukarıdaki Windows ya da macOS adımları yeterlidir. Tek bir oturum için komut satırı parametresiyle de başlatabilirsiniz, ancak bu parametre kullanıcı adı ve parola kabul etmez:

Bash
chrome --proxy-server="http://proxy.example.com:PORT"
chrome --proxy-server="socks5://proxy.example.com:PORT"
Tarayıcıyı yalnızca bu oturum için proxy ile başlatma (kimlik doğrulamasız proxy’ler için)

Komut satırı: curl#

Bir proxy’nin çalışıp çalışmadığını görmenin en hızlı yolu curl’dür. Aşağıdaki komutlar HTTP ve SOCKS5 için aynı hedefi sorgular:

Bash
# HTTP proxy, kimlik bilgisiyle
curl -x "http://USERNAME:[email protected]:PORT" https://example.com/ -I

# SOCKS5 proxy, DNS çözümlemesi proxy tarafında
curl --proxy "socks5h://USERNAME:[email protected]:PORT" https://example.com/ -I

# Proxy kimlik bilgilerini ayrı parametreyle verme
curl -x "http://proxy.example.com:PORT" --proxy-user "USERNAME:PASSWORD" https://example.com/ -I
curl ile HTTP ve SOCKS5 proxy kullanımı

Ortam değişkenleri ve Git#

Birçok komut satırı aracı ve kütüphane HTTP_PROXY, HTTPS_PROXY ve NO_PROXY değişkenlerine bakar. Bunları oturum boyunca tanımlamak, her araca ayrı ayrı ayar vermekten pratiktir:

Bash
export HTTP_PROXY="http://USERNAME:[email protected]:PORT"
export HTTPS_PROXY="http://USERNAME:[email protected]:PORT"
export NO_PROXY="localhost,127.0.0.1"

# Git için kalıcı ayar (kaldırmak için --unset kullanın)
git config --global http.proxy "http://USERNAME:[email protected]:PORT"
git config --global --unset http.proxy
Linux ve macOS kabuğunda oturumluk ortam değişkenleri

Python ile proxy#

requests kütüphanesi proxy bilgisini bir sözlük olarak alır. SOCKS5 için ek bileşen gerekir: pip install requests[socks].

Python
import requests

http_proxy = "http://USERNAME:[email protected]:PORT"
socks_proxy = "socks5h://USERNAME:[email protected]:PORT"

for proxy in (http_proxy, socks_proxy):
    proxies = {"http": proxy, "https": proxy}
    r = requests.get("https://example.com/", proxies=proxies, timeout=10)
    print(proxy.split("://")[0], r.status_code)
requests ile HTTP ve SOCKS5 proxy

Node.js ile proxy#

Node.js’in yerleşik fetch işlevi ortam değişkenlerini kendiliğinden kullanmaz. En sade yol, proxy’yi açıkça bir yönlendirici (dispatcher) ile vermektir. Aşağıdaki örnekte undici paketindeki ProxyAgent kullanılır; paketi npm install undici ile kurmanız gerekir.

JavaScript
import { ProxyAgent, fetch } from "undici";

const dispatcher = new ProxyAgent("http://USERNAME:[email protected]:PORT");

const res = await fetch("https://example.com/", { dispatcher });
console.log(res.status);
undici ile HTTP proxy üzerinden istek

Her dilin ve kütüphanenin proxy davranışı biraz farklıdır; ortak nokta, adres, port, protokol ve kimlik bilgisinin aynı dört parçadan oluşmasıdır. Bir ortamda çalışan ayarı başka bir ortama taşırken yalnızca yazım biçimini uyarlamanız yeterli olur.

Ayarı doğrulama#

Ayarı yaptıktan sonra gerçekten proxy üzerinden çıkıp çıkmadığınızı kontrol edin. Bir adres gösterme sayfasını açtığınızda görünen IP, kendi adresiniz değil proxy’nin çıkış adresi olmalıdır. Hata alırsanız ya da emin olmak isterseniz Proxy Kontrol aracıyla adresi ve portu sınayın; ayrıntılı yöntem için Proxy Nasıl Kontrol Edilir? rehberine bakın.

BelirtiOlası nedenNe yapmalı
Bağlantı zaman aşımına uğruyorProxy kapalı, port yanlış ya da ağ engelliyorAdres ve portu denetleyin; başka bir proxy deneyin
407 Proxy Authentication RequiredKullanıcı adı veya parola yanlışBilgileri yeniden girin; özel karakterleri kodlayın
Bağlantı sıfırlandıProtokol uyuşmazlığı (HTTP yerine SOCKS5 gibi)Protokolü değiştirip yeniden deneyin
Sertifika hatasıHTTPS trafiğine araya girilmeye çalışılıyorGüvenilmeyen proxy’de oturum açmayın
Sayfa açılıyor ama IP değişmemişUygulama sistem proxy’sini kullanmıyorUygulamanın kendi proxy ayarını kullanın
Tablo 2Sık görülen hatalar ve olası nedenleri

Ücretsiz bir listeden proxy deniyorsanız, ayarları yapmadan önce Ücretsiz Proxy Kullanmanın Riskleri rehberini okumanızı öneririz. Hesap bilgisi girdiğiniz oturumlarda güvenilmeyen bir proxy kullanmamalısınız.

Sık sorulan sorular

01Proxy ayarını hangi katmanda yapmam daha doğru?
Tek bir uygulama için işlem yapacaksanız uygulamanın kendi ayarını kullanın; böylece diğer programların trafiği etkilenmez. Tüm cihazın trafiğini yönlendirmek istiyorsanız işletim sistemi ayarı uygundur.
02HTTP proxy ile SOCKS5 proxy ayarında ne fark var?
Ayar ekranında farklı alanlara yazılır ve istemci protokolü ona göre konuşur. HTTP proxy web trafiği için tasarlanmıştır; SOCKS5 ise web dışındaki bağlantı türlerini de taşıyabilir. İstemciniz hangisini destekliyorsa onu seçin.
03Kullanıcı adı ve parola olmadan çalışan proxy var mı?
Ücretsiz listelerde kimlik doğrulamasız proxy’ler yaygındır. Ücretli hizmetler ise yetkisiz kullanımı engellemek için çoğunlukla kullanıcı adı ve parola ister.
04Proxy ayarını yaptım ama IP adresim değişmedi, neden?
Uygulama sistem proxy’sini yok sayıyor olabilir ya da istek proxy dışı bir yol izliyor olabilir. Önce curl ile doğrudan deneyin; çalışıyorsa sorun ayar yerindedir, uygulamada değil.
05Proxy ayarını nasıl geri alırım?
Ayar ekranından proxy seçeneğini kapatın, ortam değişkenlerini unset ile kaldırın ve varsa Git gibi araçlardaki kalıcı ayarı silin. Ardından bir adres gösterme sayfasıyla kendi adresinize döndüğünüzü doğrulayın.

Bilgiyi listede deneyin

Ücretsiz listedeki kayıtları protokole ve ülkeye göre süzebilirsiniz. Bu kayıtların güvenli ya da kalıcı olduğu garanti edilmez; hassas hesaplarınızda kullanmayın.