Če se curl poskuša povezati z localhost ne glede na URL, ki ste mu ga dali, je VPN napačno mesto za začetek. Lokalni proxy HTTP ali SOCKS je lahko predvidena prva povezava, tudi ko je storitev, ki jo želite, povsem drugje. Če ta proxy ne deluje več, poskus localhost spodleti, preden curl sploh doseže cilj. Tudi odgovor proxyja ni dokaz, da je cilj odgovoril.

Te korake izvedite po vrsti in se ustavite pri prvem, ki spremeni prvi poskus povezave.

Najprej preberite lastna pravila proxyja v curlu

curl bere proxy spremenljivke, značilne za protokol, na primer https_proxy in HTTPS_PROXY, ter ALL_PROXY, ko ne velja nobena vrednost, značilna za protokol. Preverite okolje lupine, storitve ali opravila, ki dejansko zažene curl, ne pa tistega v trenutnem terminalu. Opravilo CI, enota systemd in interaktivna lupina lahko podedujejo tri različne nize. Prav ugibanje iz vidne lupine je tisto, zaradi česar ta preiskava izgubi celo popoldne.

Eno izjemo si velja zapomniti. curl sprejema http_proxy le z malimi črkami; različica z velikimi črkami HTTP_PROXY se prezre, zato se isto okolje v drugih orodjih obnaša drugače.

Vrednosti berite zasebno, ker URL proxyja pogosto nosi poverilnice.

Nato preverite privzeto konfiguracijsko datoteko curla za prepise proxyja ali povezave in potrdite, katero izvršljivo datoteko pravzaprav izvajate. Vzdevek lupine, funkcija ali ovojna skripta lahko dodajo možnosti, ki se nikoli ne pojavijo v vaši ukazni vrstici.

Primerjajte tri klice z vključenim TLS

Uporabite en odobren diagnostični cilj in isto binarno datoteko za vse tri zagone.

curl -v https://service.corp.example/status
curl -q -v https://service.corp.example/status
curl -q --proxy '' -v https://service.corp.example/status

-q potlači privzeti curlrc in mora biti prvi parameter v vrstici, da deluje. Ne odstrani okoljskih spremenljivk proxyja, kar preseneti tiste, ki to pričakujejo. Tretja oblika doda prazno --proxy vrednost in prepiše proxy, ki ga je zahtevalo okolje, samo za ta klic. Primerjajte prvi poskus povezave v vsakem izpisu, ne končne kode stanja.

Podroben izpis lahko razkrije glave, žetone in poverilnice proxyja, zato ga hranite lokalno in pred deljenjem preberite odlomke.

Kaj izključi vsak rezultat

Če izpustitev privzete konfiguracije spremeni povezavo, je vir konfiguracijska datoteka. Če jo spremeni izrecna izključitev podedovanega proxyja, je vir okoljska spremenljivka. Če je ne spremeni nobeno od tega in se localhost še vedno pojavlja, poglejte prepise povezave v ukazni vrstici, razreševanje imen gostiteljev in izbrano izvršljivo datoteko. Vsak od teh ima drugačno popravilo in nobeno ni sprememba usmerjanja.

Nalaganje lastnih knjižnic ali vbrizgano omrežno vedenje je poznejša plast in sama okoljska spremenljivka ni dokaz zanj.

Odločitev o proxyju imejte ločeno od VPN

Ko curl izbere neposredni cilj, operacijski sistem to povezavo še vedno usmerja. Izklop proxyja aplikacije ne izklopi poti VPN ali njegove politike filtriranja. Primerjave neposrednega dostopa izvajajte samo tam, kjer je ta diagnostika dovoljena. Preizkus, ki tiho obide politiko, ni veljaven rezultat, je incident.

Če je potreben lokalni proxy, obnovite njegovo storitev in naslov, namesto da izbrišete njegove nastavitve.

Če neposredni dostop potrebujejo le izbrani zasebni cilji, dodajte ozko odobreno izjemo in proxy obdržite za vse drugo. Ohranite prvo napako z izbrane poti, ker zavrnitev localhost, zavrnitev CONNECT proxyja, napaka potrdila in napaka avtorizacije označujejo štiri različne stopnje.

Sorodni članki