VPN bağlıyken Git 403: yanıtı vereni bulun
403 bir yanıttır, VPN hakkında bir hüküm değil. Hangi bileşenin reddettiğini belirleyin, sonra ağlar arasında her seferinde tek bir değişkeni karşılaştırın ve neyin değiştiğini kaydedin.
Ofis Wi-Fi'sinde çalışıyor, telefonun hotspot'unda başarısız oluyor; her iki durumda da VPN bağlı. Git 403 döndürüyor ve hata üç satır. Baştan çıkarıcı olan, hotspot'u neden sayıp bir şey hareket edene kadar ağ ayarlarını değiştirmek. HTTP 403, bir sunucunun isteği anladığı ve reddettiği anlamına gelir, bu yüzden faydalı soru hangi sunucu olduğudur ve faydalı sonraki adım her seferinde tek bir şeyi değiştiren bir karşılaştırmadır.
Ağdan önce durumu okuyun
403 başarısız bir arama, bir TCP zaman aşımı ya da hiç tamamlanmayan bir TLS el sıkışması değildir. Bu, isteğinizi ayrıştıran bir şeyin verdiği bir karardır.
O kararı neyin verdiğini bilene kadar denediğiniz her ağ değişikliği, inandırıcı bir hikâyeyle birlikte bir tahmindir.
403 ile kim yanıt verebilir?
Depo uygulaması yalnızca bir adaydır. Bir proxy, bir ağ geçidi ya da bir filtreleme hizmeti onun önünde durup ilk yanıtı verebilir ve istemci her iki durumda da aynı durumu görür. Durumu, ilgili başlıkları ve temizlenmiş bir hata gövdesini saklayın, sonra bunları yetkili hizmetin günlükleriyle ilişkilendirin. Uzak URL ile gerçekten ulaşılan uç nokta DNS veya proxy yapılandırması nedeniyle de farklı olabilir, bu yüzden yapılandırılmış adresi ve isteği yapan süreci kontrol edin.
Ret depoya hiç ulaşmadıysa günlükleri sessiz kalır ve o sessizlik kanıttır.
Her seferinde tek bir değişkeni karşılaştırın
Hotspot karşılaştırması sorunu daralttığı için faydalıdır, bir nedeni kanıtladığı için değil. İki ağ aynı anda adresleme, IP ailesi, proxy, TLS görüşmesi ve çıkış politikası bakımından farklı olabilir.
Her denemede tek bir şeyi değiştirin ve gerisini kaydedin. Aşağıdaki tablo bunu yaparken notta tuttuğum en az miktardır:
| Keep constant | Record when it changes |
|---|---|
| Repository, operation and credentials | Resolved address and IP family |
| Git process and configuration | Proxy use and the responding component |
| Intended VPN profile | Actual route and exit seen by the service |
Çalışan ile başarısız çalıştırma arasında farklı olan tek bir satır, bir sonraki saatin gideceği yerdir.
Geçici çözüm kanıttır, açıklama değil
Başka bir adres ailesini zorlamak hedefi, rotayı ya da seçilen aracıyı değiştirebilir, bu yüzden IPv6'nın depoyla uyumsuz olduğunu kanıtlamadan sonucu değiştirebilir. Farklı bir TLS sürümü de aynı kategoride bir gözlemdir. Hiçbiri sertifika denetimlerini kapatmayı ya da bağlantıyı zayıflatmayı haklı çıkarmaz. İşleyen ilk değişiklikte durmak yerine reddeden bileşenin politikasını ve günlüklerini gerçek karara kadar izleyin.
Açıklayamadığınız bir geçici çözüm başka bir yerde yeniden başarısız olur.
Düzeltilecek bir rapor yazın
Yanıt veren bileşenin sahibine aynı işlemi, iki yolu ve hayır diyen bileşeni verin. Bir şey paylaşmadan önce yetkilendirme başlıklarını, gömülü kimlik bilgilerini ve özel depo ayrıntılarını kaldırın.
Faydalı rapor kısa, yeniden üretilebilir ve semptomu değil katmanı adlandırır.
Sırayla yaptığım kontrol
Uzak URL'yi ve çözümlenen uç noktayı doğrulayın, sonra başarısız bir çalıştırmadan durumu ve başlıkları yakalayın. Aynı işlemi ikinci bir ağda tekrarlayın ve iki kaydı karşılaştırın.
Sonra bu farkı yanıt veren bileşene götürün:
- İstemcide ve ağda proxy yapılandırması.
- Deponun önünde çıkış politikası veya filtreleme.
- Token veya hesap kapsamı, son kullanma ve SSO koşulları dahil.
- Tokenin temsil ettiği kimlik için depo izni.
Durumun anlambilimi RFC 9110 içinde yer alır ve raporu yazarken ondan alıntı yapmaya değer.