Chyba curl 77: umiestnenia overenia certifikátu pri inštalácii VPN
Chyba 77 je zlyhanie lokálneho vstupu CA, nie zlý certifikát servera. Nájdite súbor dôvery, ktorý curl číta, opravte ho a skript si prezrite pred spustením.
Vložíte jednořádkový inštalačný príkaz z návodu, stlačíte Enter a dostanete curl: (77). Správa spomína umiestnenia overenia certifikátu, takže inštinkt je predpokladať, že certifikát poskytovateľa VPN je pokazený, a siahnuť po prepínači, ktorý overenie preskočí. To čítanie je nesprávne a konanie podľa neho mení lokálny problém so súborom na bezpečnostné rozhodnutie. Vráťme sa na začiatok.
Krok 1: prečítajte si, čo číslo znamená
Chyba 77 sa týka lokálneho vstupu CA: curl nedokázal prečítať ani načítať certifikátový materiál, ktorému mal dôverovať. Chyba 60 je tá o protistrane, keď reťazec servera neprejde overením. V návodoch stoja vedľa seba a znamenajú opačné veci.
Ak váš výstup hovorí 77, server nikdy nebol problém. Klient nedokázal otvoriť súbor, ktorý chcel použiť na kontrolu, a to je problém cesty, oprávnení alebo balenia na vašom počítači.
Krok 2: prečítajte si príkaz, ktorý ste skopírovali
Skopírované príkazy skrývajú znaky. Malé -l je --list-only, ktoré sa vzťahuje na vypisovanie protokolov. Veľké -L je --location, ktoré nasleduje presmerovanie HTTP. Nie sú to alternatívne zápisy a návod, ktorý píše jedno, zatiaľ čo opisuje druhé, posiela ľudí po ceste presmerovania, ktorá nebola nikdy zamýšľaná.
Nasledovanie presmerovania neopraví cestu k úložisku dôvery a nedokáže, že konečný hostiteľ je vydavateľ, ktorého ste mysleli. Ak príkaz pochádza z príspevku na fóre, prepíšte ho z vlastných pokynov projektu namiesto dôvery vloženému textu.
Krok 3: zistite, ktorý vstup CA tento build používa
Začnite identifikáciou binárky, pretože odpoveď závisí od toho, ako bola skompilovaná:
curl --versionZapíšte verziu a TLS backend. Build s natívnym úložiskom dôvery číta systémové úložisko cez knižnicu TLS, zatiaľ čo build nasmerovaný na balík číta súbor. Explicitný --cacert, nastavenie CURL_CA_BUNDLE alebo obal shellu môžu ktorýkoľvek z nich prepísať, takže inštalácia z balíka sa nemusí dotknúť súboru, ktorý skutočne zlyháva.
Pri úložisku založenom na súbore skontrolujte tri veci v poradí: či cesta existuje, či ju účet, ktorý príkaz volá, môže prečítať a či obsahuje materiál CA, ktorý očakávate. Balík s nesprávnymi oprávneniami zlyháva rovnako ako chýbajúci a oba zlyhávajú pred akoukoľvek sieťovou konverzáciou o serveri.
Krok 4: opravte vstup, nie overovanie
Obnovte podporovanú konfiguráciu dôvery prostredníctvom toho, komu patrí: distribučného balíka, vašej správy konfigurácie alebo dokumentovanej premennej prostredia. Cieľom je čitateľný a správny vstup CA pre túto binárku.
Neprepínajte URL na HTTP, nepridávajte --insecure a nedôverujte certifikátu skopírovanému z nevysvetleného stiahnutia. Každá z týchto zmien mení to, čo ste ochotní prijať, namiesto toho, aby opravila to, čo curl nedokázal prečítať, a zmena zvyčajne prežije incident.
Referenciou pre čísla je katalóg chýb curl, a je dosť krátky na to, aby ste si ho raz poriadne prečítali.
Krok 5: stiahnite, pozrite sa, potom spustite
Stiahnite inštalátor do súboru namiesto toho, aby ste ho v tom istom príkaze posielali do shellu. Táto jediná zmena oddeľuje prenos, ktorý môžete skontrolovať, od kódu, ktorý beží s vašimi oprávneniami.
curl -fL -o vpn-installer.sh https://example.invalid/install.sh
file vpn-installer.sh
head -n 40 vpn-installer.shSkontrolujte, či je odpoveď očakávaný skript a nie HTML chybová stránka, oznámenie o presmerovaní alebo prázdny súbor. Ak vydavateľ poskytuje kontrolný súčet alebo podpis, overte ho cez ich dokumentovaný proces vydania, nie cez hodnotu citovanú v tom istom vlákne fóra.
Pamätajte, čo HTTPS urobil a čo nie. Overil prenos k hostiteľovi, s ktorým ste sa spojili; nepreskúmal obsah skriptu a nehovorí vám, či je vydavateľ dôveryhodný.
Krok 6: držte inštalačné kroky oddelene
Stiahnutie súboru, inštalácia klienta, konfigurácia tunela a overenie trás sú štyri operácie so štyrmi rôznymi režimami zlyhania. Robiť ich po jednom znamená, že chyba neskôr v poradí má jednu zjavnú príčinu namiesto štyroch kandidátov.
Ak inštalácia uspeje a tunel sa zdvihne, overte trasy a jeden skutočný cieľ pred zatvorením tiketu. Chyba curl je opravená, keď jednoduchý curl -I https://example.invalid znova funguje, nie keď si inštalátor prestane sťažovať.