Go derlemesi, Composer kurulumu ve Python istemcisi evde çalışıyor ve hepsi şirket VPN’inin içinde başarısız oluyor. Bu örüntü size uygulamayı değil, yolu anlatıyor. Tüneldeki bir şey sürecinizin gördüğü sertifika zincirini değiştirdi ya da herhangi bir zincir gelmeden el sıkışmayı sıfırladı. İki arıza terminalde benzer görünür ve tamamen farklı yanıtlar gerektirir.

Üç ileti, üç mekanizma

x509 certificate signed by unknown authority hatası, bir zincirin kurulduğu ve kökünün o sürecin kullandığı güven deposunda bulunmadığı anlamına gelir. self-signed certificate in certificate chain hatası genellikle bir denetim vekilinin kendi sertifikasıyla yanıt verdiği anlamına gelir ve bu, çalışma zamanınızın tanımadığı bir zincirdir. El sıkışma sırasında SSL EOF, kullanılabilir bir sertifika gönderilmeden önce bağlantının kapandığı anlamına gelir ve bu ClientHello’yu reddeden bir ara cihazdır, hiç de güven sorunu değildir.

Güvensiz bir bayrak eklemek üç iletinin de kaybolmasını sağlarken araya girmeyi yerinde bırakır ve gerçek bir saldırganı yakalayacak denetimi ortadan kaldırır.

Sürecin gerçekte okuduğu paketi bulun

Windows deposuna kurulan kurumsal kök, sistem deposuna başvuran tarayıcıları ve .NET uygulamalarını düzeltir. Kendi CA paketini taşıyan bir konteyner içinde çalışan derleme için hiçbir şey yapmaz, certifi kullanan bir Python süreci veya kendi gömülü listesini kullanan bir Node süreci için de hiçbir şey yapmaz. Go, ikili dosyanın çalıştığı ortamın sistem havuzunu okur, yani konteyneri, dizüstü bilgisayarı değil. Bu yüzden tek bir makine aynı anda hem çalışan bir tarayıcı hem de başarısız olan bir derleme aracı üretir.

Varsaymak yerine araca sorun. python3 -c "import ssl; print(ssl.get_default_verify_paths())" Python’un başvuracağı dosyaları yazdırır ve node -e "console.log(process.env.NODE_EXTRA_CA_CERTS)" bir geçersiz kılmanın zaten ayarlı olup olmadığını gösterir. Konteyner için aynı denetimi imgenin içinde çalıştırın, çünkü derlemenin gerçekte kullandığı ortam odur.

Derlemenin çalıştığı yere bir kök kurun

Denetim kökünü IT’den PEM dosyası olarak alın ve ona güvenmeden önce parmak izini ayrı bir kanaldan doğrulayın. Debian tabanlı imgelere kopyalayıp /usr/local/share/ca-certificates/ dizinine koyun ve update-ca-certificates komutunu çalıştırın; RHEL ailesindeki imgeler dosyayı /etc/pki/ca-trust/source/anchors/ dizinine koyduktan sonra update-ca-trust kullanır. Konteyner derlemesinde bu adımları başarısız olan komuttan önce ekleyin ki katman bağımlılık kurulumunun üstünde önbelleklensin.

Yerel bir devcontainer için PEM’i bağlayın ve başlangıçta aynı güncelleme komutunu çalıştırın, kimsenin yeniden üretemeyeceği kişisel bir imgeye gömmek yerine. Kendi paketini getiren araçların kendi belgelenmiş geçersiz kılmalarına ihtiyacı vardır: pip’in sertifika ayarı, npm’in cafile ayarı vardır ve çoğu diğeri standart ortam değişkenlerini kabul eder.

Bu, herhangi bir sertifikayı kabul etmekle aynı şey değildir. Denetimi yapan taraftan alınan belirli bir kökü tek bir ortama ekliyorsunuz ve doğrulama diğer her zincir için açık kalıyor. Hangi dosyanın eklendiğini ve ne zaman sona ereceğini kaydedin, çünkü denetim kökü de herhangi bir CA gibi yenilenir.

El sıkışma bir sertifikadan önce öldüğünde

Hiçbir şey sunulmazsa güven deposundaki hiçbir değişiklik yardımcı olmaz. Aynı isteği tünel açık ve kapalıyken karşılaştırın, sonra zinciri doğrudan openssl s_client -connect host:443 -servername host -showcerts ile inceleyin. VPN dışında tamamlanıp içinde sıfırlanan bağlantı, ara cihazın aldığı bir ilke kararıdır ve çare başka bir sertifika değil, o ana bilgisayar için bir istisnadır. Paket kayıt defterinin veya API uç noktasının değiştirilmeden geçmesini isteyin.

Tüneli bölerek aracın VPN’i atlamasını sağlamak o trafik için denetimden kaçınır, bu ilkeyi ihlal edebilir ve aracı güvenilir kılmaz.

Sonucu her araç için kaydedin

İkili dosyayı, okuduğu güven dosyasını, devredeki ortam değişkenini ve onaylanmış istisnayı listeleyen kısa bir not, sıradaki kişiye tüm tanılamayı kazandırır. Notu dizüstü bilgisayar başına değil araç başına tutun, çünkü değişen şey nadiren dizüstü bilgisayardır.

Ve kayıtta iki cümleyi ayrı tutun: belirli bir kurumsal kök kurduk ve doğrulamayı kapattık. Bunlardan yalnızca biri bir destek eylemidir.

İlgili makaleler