Tüm lokasyonlar aktif · %99.99 uptime
Proxy Rehberi

Proxy Kimlik Doğrulama Yöntemleri

Ücretli bir proxy hizmetine erişim iki yoldan biriyle açılır: ya her istekte kullanıcı adı ve şifre gönderirsiniz, ya da sağlayıcının paneline genel IP adresinizi tanıtıp whitelist (izinli liste) oluşturursunuz. İkisi aynı sorunu çözer — "bu bağlantı gerçekten abonenin mi?" — ama günlük kullanımda çok farklı sonuçlar doğurur.

Bu yazıda iki yöntemin protokol düzeyinde nasıl çalıştığını, hangi senaryoda hangisinin doğru olduğunu ve karşılaşacağınız hata kodlarını ele alıyoruz.

Yöntem 1: Kullanıcı Adı ve Şifre

Bu yöntemde kimlik bilgisi her bağlantıda proxy'ye gönderilir. Protokole göre biçim değişir:

  • HTTP proxy: Proxy-Authorization: Basic <base64(kullanici:sifre)> başlığı eklenir.
  • SOCKS5: RFC 1929'da tanımlı username/password alt görüşmesi yapılır; kullanıcı adı ve şifre ikili biçimde gönderilir.

HTTP tarafında akış şöyledir: istemci kimlik bilgisi olmadan istek gönderir, proxy 407 Proxy Authentication Required ile yanıt verir, istemci kimlik bilgisini ekleyip isteği tekrarlar.

ŞEKİLHTTP proxy kimlik doğrulama el sıkışması
AKIŞİstemciProxyCONNECT hedef.com:443 HTTP/1.1407 Proxy Authentication RequiredProxy-Authenticate: Basic realm="proxy"Proxy-Authorization: Basic a3VsbGFuaWNpOnNpZnJl200 Connection establishedTünel açıldı, veri akabilir

Çoğu istemci bu iki turu otomatik yapar. curl ve tarayıcılar 407 gördüğünde kimliği ekleyip isteği tekrarlar; basit HTTP kütüphaneleri ise bazen tekrar denemez ve doğrudan hata verir.

Önemli

Basic yöntemi kimlik bilgisini şifrelemez, yalnızca Base64 ile kodlar. Base64 geri çevrilebilir bir kodlamadır. Bu yüzden kimlik bilgisinin gizliliği, proxy'ye giden bağlantının kendisinin güvenli olmasına bağlıdır.

Yöntem 2: IP Whitelist

Whitelist modelinde şifre yoktur. Sağlayıcının paneline kendi genel IP adresinizi eklersiniz; proxy yalnızca o adresten gelen bağlantıları kabul eder. Kimlik bilgisi taşınmadığı için istemci tarafı çok basitleşir: curl -x http://proxy.example.com:8080 https://example.com yeterlidir.

Bu modelin can alıcı sorusu şudur: sizin genel IP adresiniz sabit mi? Ev internetlerinin çoğunda IP dinamiktir ve modem yeniden başladığında değişir. Değiştiğinde whitelist geçersiz kalır ve tüm bağlantılar reddedilir.

ŞEKİLKullanıcı/şifre ile IP whitelist karşılaştırması
KARŞILAŞTIRMAKullanıcı / şifreIP whitelistTaşınabilirlikHer ağdan çalışırYalnızca kayıtlı IPİstemci karmaşıklığıKimlik gerekirSıfır yapılandırmaDinamik IPEtkilenmezIP değişince koparSızıntı riskiŞifre çalınabilirÇalınacak sır yokÇok kullanıcıKişi başına hesapAyrım zorSunucu / VPSUygunİdeal — IP sabitMobil / seyahatİdealKullanışsız

Seçim büyük ölçüde "sabit IP'niz var mı" sorusuna iner. Sunucuda çalışan otomasyonlar için whitelist, gezici kullanım için kullanıcı/şifre daha uygundur.

Hangi Senaryoda Hangisi?

01

Sunucuda çalışan scraper veya bot

VPS'inizin IP'si sabittir; whitelist seçin. Kimlik bilgisi koda veya ortam değişkenine gömülmez, sızıntı yüzeyi küçülür. Otomasyon senaryoları için önerdiğimiz varsayılan budur.

02

Dizüstü bilgisayardan manuel kullanım

Ofis, ev ve kafe arasında geçiş yapıyorsanız IP sürekli değişir. Kullanıcı/şifre kullanın; her ağdan sorunsuz çalışır.

03

Ekip içinde paylaşımlı kullanım

Kim ne kadar trafik harcadı sorusunun yanıtı gerekiyorsa kişi başına ayrı kullanıcı açın. Whitelist'te tüm ekip tek kimlik altında görünür.

04

Antidetect tarayıcı ile çoklu profil

Her profile farklı çıkış IP'si atanacaksa kullanıcı/şifre zorunludur; çünkü oturum seçimi çoğu zaman kullanıcı adının içine kodlanır (örneğin user-session-a1).

Oturum Bilgisinin Kullanıcı Adına Gömülmesi

Residential havuzlarda yaygın bir desen vardır: kullanıcı adı yalnızca kimlik değil, aynı zamanda bir komut taşır. Örneğin:

ŞEKİLParametre taşıyan kullanıcı adının anatomisi
ANATOMİmusteri-country-de-session-a91f-ttl-10mmusteriHesap kimliği — faturalama bu alana bakarcountry-deÇıkış ülkesi: Almanyasession-a91fSticky oturum anahtarıttl-10mOturumun yaşam süresi

Ayraç karakteri ve parametre adları sağlayıcıdan sağlayıcıya değişir. Panelinizdeki belgeyi esas alın; buradaki biçim yalnızca yapıyı göstermek içindir.

Bu tasarımın avantajı, istemci tarafında hiçbir API çağrısı gerekmemesidir: kullanıcı adını değiştirerek ülke veya oturum değiştirirsiniz. Dezavantajı ise kimlik bilgisinin uzaması ve yazım hatalarının sessiz davranış değişikliklerine yol açmasıdır. Rotating proxy mantığını anlatan yazımızda bu modelin oturum yönetimine etkisini ayrıntılı ele alıyoruz.

Sık Karşılaşılan Hatalar

ŞEKİLKimlik doğrulama kaynaklı hatalar ve çözümleri
HATA HARİTASIKOD / BELİRTİOLASI NEDENÇÖZÜM407 Proxy AuthenticationRequiredKimlik bilgisi hiç gönderilmedi veya yanlışKullanıcı/şifreyi kontrol edin; istemcinin 407sonrası tekrar denediğinden emin olunBağlantı sessizcekapanıyorSOCKS5'te desteklenmeyen kimlik yöntemiİstemcinin username/password yöntemini sunduğundanemin olun403 ForbiddenIP whitelist dışından bağlanılıyorPanelden güncel genel IP adresinizi ekleyinTarayıcı sürekli şifresoruyorKimlik oturumda saklanmıyorWhitelist'e geçin veya yerel köprü proxy kullanınŞifre özel karakterdebozuluyorURL içinde kodlanmamış @ veya : karakteriŞifreyi yüzde kodlaması ile yazın (@ → %40)

407 ile 403 arasındaki fark kritik: 407 "kimliğini göster" der, 403 ise "kimliğini gördüm, yetkin yok" anlamına gelir.

Özel Karakter Tuzağı

Kimlik bilgisini URL biçiminde yazarken şifredeki bazı karakterler ayraçla karışır. http://user:p@ss@ip:8080 ifadesinde ikinci @ ayraç sanılır ve bağlantı kurulamaz. Çözüm yüzde kodlamasıdır:

KarakterKodlanmış hâliKarakterKodlanmış hâli
@%40/%2F
:%3A#%23
?%3F%%25

Daha sağlam bir yaklaşım, kimlik bilgisini URL'ye gömmek yerine istemcinin ayrı alanlarına vermektir. Python requests, Node undici ve curl'ün --proxy-user seçeneği bunu destekler.

ŞEKİLKimlik bilgisini URL'ye gömmeden verme
Örnekler01# curl — şifre URL'de değil, ayrı seçenekte02curl -x http://proxy.example.com:8080 --proxy-user "kullanici:sifre" https://example.com0304# Python requests — ortam değişkeninden oku05import os, requests06user = os.environ["PROXY_USER"]; pw = os.environ["PROXY_PASS"]07proxies = {"http": f"http://{user}:{pw}@proxy.example.com:8080",08 "https": f"http://{user}:{pw}@proxy.example.com:8080"}09r = requests.get("https://example.com", proxies=proxies, timeout=20)1011# Node.js — undici ProxyAgent12import { ProxyAgent, request } from "undici";13const agent = new ProxyAgent({ uri: "http://proxy.example.com:8080",14 token: "Basic " + Buffer.from(`${process.env.PROXY_USER}:${process.env.PROXY_PASS}`).toString("base64") });

Kimlik bilgisini koda gömmek yerine ortam değişkeninden okumak, hem sürüm kontrolüne sızmasını önler hem de rotasyonu kolaylaştırır.

Güvenlik Açısından Ne Değişir?

İki yöntem farklı riskler taşır. Kullanıcı/şifre modelinde sır çalınabilir: log dosyasına düşen bir komut satırı, sürüm kontrolüne kaçan bir yapılandırma dosyası veya ekran görüntüsü yeterlidir. Whitelist modelinde sır yoktur ama IP paylaşımı riski vardır: aynı ofis ağındaki herkes, farkında olmadan proxy'nizi kullanabilir.

En sağlam yapılandırma ikisini birleştirmektir: whitelist ile kaynağı daraltın, üstüne kullanıcı/şifre ekleyin. Çoğu kurumsal sağlayıcı bu hibrit modeli destekler. Gizlilik tarafında proxy'nin ne gördüğünü merak ediyorsanız proxy güvenli mi yazımız kapsamlı bir çerçeve sunuyor; sızıntı testleri için DNS leak ve WebRTC leak araçlarımızı kullanabilirsiniz.

Kimlik Bilgisi Yönetimi İçin Pratik Kurallar

  • Ortam değişkeni kullanın, kodun içine yazmayın.
  • Her ortam için ayrı kimlik açın: geliştirme, test ve üretim aynı şifreyi paylaşmasın.
  • Kota ve limit tanımlayın; sızan bir kimlik sınırsız trafik harcamasın.
  • Düzenli döndürün; ekipten ayrılan biri sonrası mutlaka değiştirin.
  • Log'larda maskeleyin; hata ayıklama çıktısı şifreyi düz metin yazmasın.

Özet

IP whitelist, sabit IP'li sunucularda en temiz ve en az sızıntı riskli çözümdür. Kullanıcı adı ve şifre ise gezici kullanımda ve çoklu oturum gerektiren senaryolarda vazgeçilmezdir. Karar verirken "IP'm sabit mi", "kaç kişi kullanacak" ve "oturum parametresi göndermem gerekiyor mu" sorularını yanıtlamak yeterlidir. Yapılandırmanızı test etmek için proxy kontrol aracını kullanabilir, çıkış IP'nizi IP Adresim ile doğrulayabilirsiniz.

Sıkça Sorulan Sorular

01IP whitelist mi daha güvenli, kullanıcı adı/şifre mi?

Whitelist'te çalınabilecek bir sır yoktur, bu yönüyle daha güvenlidir. Ancak aynı ağdaki diğer cihazları ayırt edemez. En güçlü yapılandırma ikisini birlikte kullanmaktır: whitelist kaynağı daraltır, şifre kişiyi doğrular.

02407 hatası alıyorum ama kullanıcı adım doğru, neden?

En sık üç neden: şifredeki özel karakterin URL içinde kodlanmamış olması, istemcinin 407 sonrası isteği tekrar etmemesi ve HTTPS isteklerinde kimliğin CONNECT aşamasında gönderilmemesi. Önce curl ile --proxy-user kullanarak test edin.

03Dinamik IP'm var, whitelist kullanabilir miyim?

Kullanabilirsiniz ama IP her değiştiğinde paneli güncellemeniz gerekir. Bazı sağlayıcılar API üzerinden whitelist güncellemeye izin verir; küçük bir betikle otomatikleştirebilirsiniz. Yine de kullanıcı/şifre bu senaryoda daha pratiktir.

04Kullanıcı adına oturum parametresi eklemek zorunda mıyım?

Hayır, bu yalnızca bazı residential sağlayıcıların tercih ettiği bir tasarımdır. Alternatif olarak port bazlı oturum seçimi veya API üzerinden oturum yönetimi sunan hizmetler de vardır.

05Tarayıcı proxy şifresini neden sürekli soruyor?

Tarayıcılar proxy kimliğini oturum boyunca saklar; tarayıcıyı kapatınca unuturlar. Kalıcı çözüm için IP whitelist'e geçmek veya şifreyi taşıyan yerel bir köprü proxy çalıştırmak gerekir.

İlgili Yazılar ve Sayfalar

SONRAKİ ADIM

Proxy altyapınızı bugün güçlendirin.

Ücretli paketlerle dakikalar içinde başlayın veya önce ücretsiz proxy listemizi deneyin.

FREEPROXY.TR

Ücretsiz proxy arıyorsanız doğru yerdesiniz

Güncel ücretsiz proxy adreslerini görüntüleyebileceğiniz, HTTP ve SOCKS proxy türlerini karşılaştırabileceğiniz ve proxy bağlantılarınızı ücretsiz araçlarla kontrol edebileceğiniz kapsamlı bir proxy platformu.