curl kļūda 77: sertifikāta pārbaudes vietas VPN instalācijā
77. kļūda ir lokālas CA ievades kļūme, nevis slikts servera sertifikāts. Atrodiet uzticības failu, ko nolasa curl, izlabojiet to un pārbaudiet skriptu pirms tā palaišanas.
Jūs ielīmējat instalatora vienas rindas komandu no apmācības, nospiežat Enter un iegūstat curl: (77). Ziņojumā minētas sertifikāta pārbaudes vietas, tāpēc instinkts ir pieņemt, ka VPN pakalpojumu sniedzēja sertifikāts ir bojāts, un meklēt karodziņu, kas izlaiž pārbaudi. Šis lasījums ir nepareizs, un rīkošanās pēc tā lokālu faila problēmu pārvērš drošības lēmumā. Atgriezīsimies pie sākuma.
1. solis: izlasiet, ko nozīmē skaitlis
77. kļūda attiecas uz lokālo CA ievadi: curl nevarēja nolasīt vai ielādēt sertifikāta materiālu, kam tam bija jāuzticas. 60. kļūda ir par otru pusi, kad servera ķēde netiek validēta. Apmācībās tās parādās blakus un nozīmē pretējas lietas.
Ja jūsu izvade saka 77, serveris nekad nav bijis problēma. Klients nevarēja atvērt failu, ko tas gribēja izmantot pārbaudei, un tā ir ceļa, atļauju vai iepakojuma problēma jūsu mašīnā.
2. solis: izlasiet komandu, ko nokopējāt
Nokopētas komandas slēpj rakstzīmes. Mazais -l ir --list-only, kas attiecas uz protokolu uzskaitīšanu. Lielais -L ir --location, kas seko HTTP novirzīšanai. Tie nav alternatīvi rakstības varianti, un apmācība, kas raksta vienu, bet apraksta otru, sūta cilvēkus pa novirzīšanas ceļu, kas nekad nav bijis paredzēts.
Novirzīšanas sekošana nesalabo uzticības krātuves ceļu un nedod pamatu uzskatīt, ka galējais resursdators ir izdevējs, kuru jūs domājāt. Ja komanda nāk no foruma ziņas, pārrakstiet to no paša projekta instrukcijām, nevis uzticieties ielīmētajam tekstam.
3. solis: noskaidrojiet, kādu CA ievadi šī būvēšana izmanto
Sāciet ar binārā faila noteikšanu, jo atbilde ir atkarīga no tā, kā tas tika kompilēts:
curl --versionPierakstiet versiju un TLS aizmuguri. Būvējums ar vietējo uzticības krātuvi nolasa sistēmas krātuvi caur TLS bibliotēku, savukārt uz paketi vērsts būvējums nolasa failu. Skaidra --cacert, CURL_CA_BUNDLE iestatījums vai shell ietvars var pārrakstīt jebkuru no tiem, tāpēc pakotnes instalācija var arī nepieskarties failam, kas faktiski neizdodas.
Faila krātuves gadījumā pārbaudiet trīs lietas pēc kārtas: vai ceļš pastāv, vai to var nolasīt komandu izsaucošais konts un vai tajā ir gaidītais CA materiāls. Pakotne ar nepareizām atļaujām neizdodas tāpat kā trūkstoša, un abas neizdodas pirms jebkuras tīkla sarunas par serveri.
4. solis: izlabojiet ievadi, nevis pārbaudi
Atjaunojiet atbalstīto uzticības konfigurāciju caur tā īpašnieku: izplatīšanas pakotni, jūsu konfigurācijas pārvaldību vai dokumentēto vides mainīgo. Mērķis ir lasāma un pareiza CA ievade šim binārajam failam.
Nemainiet URL uz HTTP, nepievienojiet --insecure un neuzticieties sertifikātam, kas nokopēts no neizskaidrotas lejupielādes. Katrs no šiem grozījumiem maina to, ko esat gatavs pieņemt, nevis izlabo to, ko curl nevarēja nolasīt, un izmaiņa parasti pārdzīvo incidentu.
Skaitļu atsauce ir curl kļūdu katalogs, un tas ir pietiekami īss, lai to vienreiz rūpīgi izlasītu.
5. solis: lejupielādējiet, apskatiet un tad izpildiet
Lejupielādējiet instalatoru failā, nevis novirziet to uz shell to pašu komandu ietvaros. Šī viena izmaiņa atdala pārbaudāmu pārsūtīšanu no koda, kas darbojas ar jūsu privilēģijām.
curl -fL -o vpn-installer.sh https://example.invalid/install.sh
file vpn-installer.sh
head -n 40 vpn-installer.shPārbaudiet, vai atbilde ir gaidītais skripts, nevis HTML kļūdas lapa, novirzīšanas paziņojums vai tukšs fails. Ja izdevējs nodrošina kontrolsummu vai parakstu, pārbaudiet to ar viņu dokumentēto izlaišanas procesu, nevis ar tajā pašā foruma pavedienā citētu vērtību.
Atcerieties, ko HTTPS izdarīja un ko ne. Tas autentificēja pārsūtīšanu uz resursdatoru, ar kuru sazinājāties; tas nepārbaudīja skripta saturu un nepasaka, vai izdevējs ir uzticams.
6. solis: turiet instalācijas soļus atsevišķi
Faila lejupielāde, klienta instalēšana, tuneļa konfigurēšana un maršrutu validēšana ir četras darbības ar četriem dažādiem kļūmes veidiem. Veicot tās pa vienai, vēlākai kļūdai secībā ir viens acīmredzams cēlonis četru kandidātu vietā.
Ja instalācija izdodas un tunelis paceļas, pirms biļetes aizvēršanas pārbaudiet maršrutus un vienu reālu galamērķi. curl kļūda ir izlabota, kad vienkārša curl -I https://example.invalid atkal darbojas, nevis kad instalators pārstāj sūdzēties.