Tüneliniz açık, durum sayfası sağlıklı bir el sıkışma gösteriyor, ama bir uygulama hâlâ hiçbir şey yüklemiyor. O uygulama isteklerini muhtemelen hâlâ daha eski bir aracıya gönderiyor: bir sistem proxy'si, bir uzantı, cihaz yönetimi tarafından itilen bir yapılandırma dosyası veya yalnızca kendi sürecinin okuduğu bir proxy değişkeni. VPN sunucusunu değiştirmek o ayara dokunmaz ve bu, diğer uygulamaların aynı makineden çalıştığı deseni açıklar. Başarısız uygulamadan dışarı doğru çalışın ve proxy sorusu çözülene kadar tüneli rahat bırakın.

Proxy ayarı hangi katmana ait

Dört yer bir uygulamanın istekleri üzerinde yetki iddia edebilir ve genellikle en dar olan kazanır. İşletim sistemi küresel bir proxy ve isteğe bağlı otomatik yapılandırma URL'si tutar; tarayıcı bunu izleyebilir, geçersiz kılabilir veya kontrolü bir uzantıya bırakabilir; komut satırı aracı kendi ortamını okur; ve yönetilen bir ilke değişiklikten sonra yukarıdakilerden herhangi birini yeniden sabitleyebilir. Bir şeyi düzenlemeden önce hangi katmanın sorumlu olduğuna karar verin, çünkü yanlış katmanı temizlemek başarılı bir onarımmış gibi görünür ve bir sonraki oturum açmada geri döner.

İki uygulamayı aynı sıradan web sitesinde karşılaştırın, yalnızca VPN'e özel bir test sayfasında değil. Tarayıcı başarısız olurken terminaldeki indirme başarılıysa sorun işletim sistemi değildir ve fark tarayıcı profilinde veya uzantılarındadır. İkisi de başarısız olur ama aynı makinedeki ikinci kullanıcı hesabı başarılı olursa ayar kullanıcı başınadır. Bu karşılaştırma bir dakika sürer ve tahminlerin çoğunu ortadan kaldırır.

Her aracın gerçekte kullandığı değeri okuyun

Yapılandırmayı değiştirmeden önce yazdırın ve tam proxy dizesini geri yükleyebileceğiniz bir yere kopyalayın. Kabuk değişkenleri komut satırı araçları için en hızlı kontroldür, çünkü bir VPN istemcisi genellikle onlara dokunmaz.

env | grep -i -E 'http_proxy|https_proxy|all_proxy|no_proxy'
scutil --proxy
gsettings get org.gnome.system.proxy mode
netsh winhttp show proxy

Yalnızca önünüzdeki platforma uyan satırı çalıştırın, sonra ana makine, bağlantı noktası ve kimlik bilgileri için çıktıyı okuyun. Şöyle bir değer http://proxy.corp.example:8080 aracın her istekte o ana makineye sorduğu anlamına gelir, boş bir sonuç ise doğrudan gittiği ve gerçek arızanın başka yerde olduğu anlamına gelir. Çıktıyı bir bilete yapıştırmadan önce kullanıcı ve parola kısmını gizleyin, çünkü bu dizeler insanların sandığından çok daha sık canlı kimlik bilgileridir.

Kendi proxy motoru olan araçların kendi kanıtlarına ihtiyacı vardır. Curl, ayrıntı düzeyini artırdığınızda verdiği kararı bildirir, bu ortamdan tahmin etmekten iyidir ve aynı bayrak ad çözümlemesinin yerel olarak mı yoksa proxy'de mi gerçekleştiğini gösterir.

Geçersiz kılmayı temizleyin ve aynı isteği yeniden test edin

Bir katmanı değiştirin, sonra başarısız olan isteği tam olarak yineleyin, çünkü başka bir URL hiçbir şeyi kanıtlamaz. Önce geçerli kabuktaki ortam değişkenlerini temizleyin, çünkü bu düzenleme geri alınabilir ve tüneli bozamaz:

unset http_proxy https_proxy all_proxy
curl -v --max-time 10 https://example.com 2>&1 | grep -i -E 'uses proxy|connected to|http/'

Ayrıntılı çıktı hâlâ bir proxy olduğunu iddia ediyorsa, ortam yetkili değildi. Daha fazla geçersiz kılma yığmak yerine bir katman yukarı çıkın.

macOS'te otomatik bir yapılandırma dosyasının değeri sağlamadığını doğrulayın, sonra hizmet proxy'sini kapatın ve değişikliği onaylayın. Windows'ta WinHTTP ayarı ile kullanıcı başına tarayıcı ayarının farklı nesneler olduğunu unutmayın, bu nedenle temiz bir komut satırı aracı hâlâ eski bir sunucuyu işaret eden bir tarayıcıyla bir arada olabilir. Uzantılar da aynı şüpheyi hak eder: bir proxy uzantısı istekleri yalnızca tek bir profil için yeniden yazabilir ve bu, bir tarayıcıyı etkileyip başka hiçbir şeyi etkilemeyen bir arızanın tam şeklidir.

Onarımın yeniden başlatmaya dayandığını doğrulayın

Yalnızca düzenlediğiniz terminalde çalışan bir ayar onarılmış değildir. Uygulamayı masaüstündeki başlatıcıdan yeniden açın, oturumu kapatıp yeniden açın ve eski proxy'nin geri dönüp dönmediğine bakın.

İki kontrol gerçek bir onarımı geçici olandan ayırır ve ikisi de doğrudan bağlantı veya amaçlanan değeri bildirmelidir. Temiz bir ortamda çalıştırma, arındırılmış bir sürecin hâlâ bir sistem ayarını alıp almadığını gösterir.

env -i /usr/bin/curl -sS -o /dev/null -w '%{http_code} %{remote_ip}
' https://example.com
networksetup -getwebproxy "Wi-Fi"

Yeniden başlatmadan sonra eski değer geri dönerse kaynak, onu yeniden uygulayan yönetilen bir ilke veya profildir ve o ilkenin sahibi istisnayı kaldırmalıdır. Sertifika doğrulamasını her zaman açık tutun, çünkü trafiği yakalayan bir proxy, kontrolleri kapattığınız anda çözülmüş gibi görünecektir. Son olarak kaldırılan değeri ve tarihi notlarınıza yazın, böylece sonraki kişi kasıtlı bir proxy'yi unutulmuş olandan ayırt edebilsin.

İlgili makaleler