TLS-eraroj nur en la kompania VPN: riparu la ĝustan fido-tenejon
Sama ilo, sama tekokomputilo, nur la VPN rompas TLS. Legu la mesaĝon, trovu la CA-pakaĵon, kiun la binara dosiero legas, kaj aldonu unu radikon anstataŭ malŝalti kontrolojn.
La Go-konstruo, la Composer-instalo kaj la Python-kliento ĉiuj funkcias hejme kaj ĉiuj malsukcesas ene de la kompania VPN. Tiu ŝablono parolas pri la vojo, ne pri la aplikaĵo. Io en la tunelo ŝanĝis la atestilan ĉenon, kiun vidas via procezo, aŭ restarigis la manpremon antaŭ ol iu ajn ĉeno alvenis. La du paneoj aspektas similaj en terminalo kaj postulas tute malsamajn respondojn.
Tri mesaĝoj, tri meĥanismoj
La eraro x509 certificate signed by unknown authority signifas, ke ĉeno estis konstruita kaj ĝia radiko mankas en la fido-tenejo, kiun tiu procezo uzas. La eraro self-signed certificate in certificate chain kutime signifas, ke inspektada prokurilo respondis per sia propra atestilo, kio estas ĉeno, kiun via rulmedio ne rekonas. SSL EOF dum la manpremo signifas, ke la konekto fermiĝis antaŭ ol estis sendita iu ajn uzebla atestilo, kaj tio estas meza aparato, kiu rifuzas la ClientHello, tute ne fida problemo.
Aldoni flagon por nesekura reĝimo malaperigas ĉiujn tri mesaĝojn dum la interkapto restas siaplace, kaj ĝi forigas la kontrolon, kiu kaptus veran atakanton.
Trovu la pakaĵon, kiun la procezo efektive legas
La kompania radiko instalita en la Windows-tenejo riparas retumilojn kaj .NET-aplikaĵojn, kiuj konsultas la sisteman tenejon. Ĝi faras nenion por konstruo rulanta ene de ujo, kiu portas sian propran CA-pakaĵon, kaj nenion por Python-procezo uzanta certifi aŭ Node-procezo uzanta sian enkonstruitan liston. Go legas la sisteman provizon de la medio, en kiu la binara dosiero ruliĝas, do la ujon, ne la tekokomputilon. Unu maŝino do samtempe produktas funkciantan retumilon kaj malsukcesan konstruilon.
Demandu la ilon anstataŭ supozi. python3 -c "import ssl; print(ssl.get_default_verify_paths())" presas la dosierojn, kiujn Python konsultos, kaj node -e "console.log(process.env.NODE_EXTRA_CA_CERTS)" montras, ĉu anstataŭigo jam estas agordita. Por ujo, rulu la saman kontrolon ene de la bildo, ĉar tio estas la medio, kiun la konstruo efektive uzas.
Instalu unu radikon tie, kie la konstruo ruliĝas
Akiru la inspektadan radikon de IT kiel PEM-dosieron kaj kontrolu ĝian fingrospuron per aparta kanalo antaŭ ol fidi ĝin. Sur Debian-derivitaj bildoj, kopiu ĝin en /usr/local/share/ca-certificates/ kaj rulu update-ca-certificates; bildoj de la RHEL-familio uzas update-ca-trust post kiam la dosiero estas metita en /etc/pki/ca-trust/source/anchors/. En uja konstruo, aldonu tiujn paŝojn antaŭ la malsukcesa komando, por ke la tavolo estu kaŝmemorigita super la dependeca instalo.
Por loka devcontainer, muntu la PEM-dosieron kaj rulu la saman ĝisdatigan komandon ĉe starto anstataŭ baki ĝin en personan bildon, kiun neniu alia povas reprodukti. Iloj, kiuj portas sian propran pakaĵon, bezonas sian propran dokumentitan anstataŭigon: pip havas atestilan agordon, npm havas cafile-agordon, kaj la plej multaj aliaj akceptas la normajn mediovariablojn.
Tio ne samas al akcepti ajnan atestilon. Vi aldonas unu specifan radikon, akiritan de la partio, kiu faras la inspektadon, al unu medio, kaj la kontrolado restas ŝaltita por ĉiu alia ĉeno. Notu, kiu dosiero estis aldonita kaj kiam ĝi eksvalidiĝos, ĉar inspektada radiko renoviĝas kiel ĉiu alia CA.
Kiam la manpremo mortas antaŭ atestilo
Se nenio estas prezentata, neniu ŝanĝo de la fido-tenejo helpos. Komparu la saman peton kun la tunelo malfermita kaj fermita, poste inspektu la ĉenon rekte per openssl s_client -connect host:443 -servername host -showcerts. Konekto, kiu kompletiĝas ekster la VPN kaj restarigas ene de ĝi, estas politika decido de la meza aparato, kaj la kuracilo estas escepto por tiu gastiganto, ne alia atestilo. Petu, ke la pakaĵa registro aŭ la API-finpunkto trapasu senŝanĝe.
Dividi la tunelon tiel, ke la ilo preterpasu la VPN, evitas inspektadon por tiu trafiko, kio povas malobservi politikon kaj ne igas la ilon fidinda.
Notu la rezulton por ĉiu ilo
Mallonga noto listiganta la binaran dosieron, la fidan dosieron, kiun ĝi legas, la mediovariablon en ludo kaj la aprobitan escepton ŝparas al la sekva persono la tutan diagnozon. Tenu la noton por ĉiu ilo, ne por ĉiu tekokomputilo, ĉar la tekokomputilo malofte estas tio, kio ŝanĝiĝis.
Kaj tenu du frazojn aparte en la bileto: ni instalis specifan kompanian radikon, kaj ni malŝaltis la kontroladon. Nur unu el tiuj estas subtena ago.