Cserélje a 127.0.0.1:8080 értéket a szolgáltatása egyik végpontjára vagy a HTTP-proxyk listájából választott címre, majd futtassa ezt egy ártalmatlan HTTPS-cél felé:

curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/

A visszacsatolási cím a saját gépén működő figyelőt jelenti. A parancs kifejezetten ezt választja ki, az adott híváshoz kiüríti a curl megkerülési listáját, és öt másodpercet enged a kapcsolat felépítésére, összesen pedig tizenötöt. A böngésző és a rendszer proxybeállításait nem módosítja.

A tényleges curl futtatható állományt használja, ha a parancsértelmező a curl nevet egy másik program aliasaként kezeli; a curl --version azonosítja a buildet. Ha maga a figyelő TLS-t igényel, a dokumentációjában megadott proxy-URL-sémát használja.

Négy eredményt olvasson ki, ne egyetlen sikerjelzést

  1. Kapcsolat a kiválasztott proxyval: a cím és a port elérhető.
  2. CONNECT elfogadva: a proxy alagutat nyitott a HTTPS-célhoz.
  3. A cél tanúsítványa ellenőrizve: a TLS a várt bizalmi ellenőrzésekkel befejeződött.
  4. A cél válasza megérkezett: vizsgálja meg az állapotot és a tartalmat az alkalmazás számára szükséges eredmény szempontjából.

Működő alagutat is követhet a cél 403 vagy 429 válasza. A curl HTTP-hibaválasz után is sikeresen kiléphet, ezért a válasz állapotát és a curl hibaeredményét is rögzítse. Önmagában a TCP-kapcsolat vagy a sikeres CONNECT nem elegendő.

Tömör eredmény ismételt összehasonlításokhoz

Unix-szerű parancsértelmezőben dobja el a választörzset, és írassa ki az alagút állapotát, a cél állapotát, a kapcsolat túloldalát és az eltelt időt:

curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --silent --show-error --output /dev/null --write-out 'http=%{http_code} connect=%{http_connect} peer=%{remote_ip} total=%{time_total}\n' https://example.com/

A http_connect az alagút válaszát, a http_code a végső HTTP-választ írja le. A remote_ip a curl kapcsolatának túloldala, nem a proxy kilépési címének független mérése. Más rendszereken cserélje le a /dev/null értéket, vagy tartsa meg a választörzset.

Ha a teszt nem sikerül, keresse meg a meghiúsult kapcsolatépítési vagy átviteli lépést, és hasonlítsa össze ugyanazt a célt közvetlen eléréssel, ahol ez az útvonal engedélyezett:

curl --noproxy '*' --connect-timeout 5 --max-time 15 --verbose https://example.com/

A --noproxy '*' megkerüli a proxykat. Ha mindkét útvonalon meghiúsul a tanúsítvány ellenőrzése, az közös bizalmi problémára utal; a sikeres közvetlen elérés elutasított CONNECT mellett proxyhitelesítésre vagy szabályzatra utal. Megosztás előtt nézze át a részletes kimenetet, mert azonosításra alkalmas adatokat tartalmazhat.

Mentse a végpontot, a célt és az időbélyeget az eredménnyel együtt. Ez azt rögzíti, mi működött az adott kérésnél; a jövőbeli elérhetőség, az adatvédelem és a terhelés alatti teljesítmény külön bizonyítékot igényel.

Kapcsolódó cikkek