HTTP CONNECT: si e trajton HTTPS një proxy HTTP
Ndiqni një kërkesë HTTPS përmes një proxy HTTP, ndani përgjigjen CONNECT nga përgjigjja e serverit të origjinës dhe gjeni ku dështon tuneli.
«200 Connection Established» do të thotë se proxy pranon një tunel. Sajti ende nuk ka kthyer një faqe. Më pas vjen TLS me destinacionin dhe pastaj vetë kërkesa HTTPS.
Nga lidhja me proxy-n te përgjigjja e sajtit
- Klienti lidhet me pikën fundore të proxy-t.
- I kërkon proxy-t të lidhet me hostin dhe portën e destinacionit.
- Proxy e pranon ose e refuzon atë kërkesë.
- Pas pranimit, klienti negocion TLS me destinacionin përmes tunelit.
- Klienti dërgon kërkesën HTTPS dhe merr përgjigjen e sajtit brenda TLS.
Një lidhje e refuzuar me proxy-n, një tunel i refuzuar dhe një gabim certifikate ndodhin në pika të ndryshme të kësaj sekuence. Gjeni hapin e fundit të përfunduar para se të ndryshoni cilësimet.
Shkëmbimi CONNECT
Në HTTP/1.1, një shkëmbim i thjeshtuar duket kështu:
CONNECT example.com:443 HTTP/1.1
Host: example.com:443
HTTP/1.1 200 Connection Established
Objektivi i kërkesës është një host dhe një portë, pa shtegun ose parametrat e pyetjes së sajtit. Pas një përgjigjeje CONNECT të suksesshme, lidhja mbart bajtet e tunelit. Për një destinacion HTTPS, shkëmbimi i radhës i klientit është shtrëngimi i duarve TLS.
Lexoni statusin numerik në vend që të kërkoni përputhje me frazën shpjeguese në anglisht. Proxy-t mund të përdorin tekst të ndryshëm për të njëjtin status.
Vëzhgojeni me curl
Për një proxy HTTP në portën lokale 8080:
curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/Zëvendësoni adresën e dëgjimit me pikën tuaj fundore. Nëse ju duhen kandidatë, shfletoni listën e proxy-ve HTTP dhe testoni hyrjen e zgjedhur. Lista bosh e anashkalimeve siguron që kjo thirrje të zgjedhë proxy-n. Në rend kohor, kërkoni lidhjen me proxy-n, përgjigjen CONNECT, verifikimin e certifikatës së destinacionit dhe përgjigjen e sajtit. Formulimi i saktë i regjistrit varet nga ndërtimi i curl.
Destinacioni mund të kthejë 404, 429 ose 500 pasi proxy të ketë pranuar tunelin. Mund edhe të dështojë gjatë TLS para se të kthejë çfarëdo përgjigjeje HTTP.
Ku u ndal?
| Vëzhgimi | Çfarë të kontrolloni më pas |
|---|---|
| Lidhja me proxy-n refuzohet | Adresën e proxy-t, portën e dëgjimit, procesin dhe qasjen në rrjet. |
| Proxy kthen 407 | Llogarinë e proxy-t dhe skemën e autentikimit. |
| Proxy refuzon një destinacion ose portë | Politikën e qasjes dhe destinacionet CONNECT të lejuara. |
| Tuneli hapet, pastaj verifikimi TLS dështon | Emrin e destinacionit, depon e besimit, orën dhe çdo përgjim TLS të menaxhuar. |
| TLS ka sukses dhe sajti kthen një gabim | Përgjigjen e sajtit. |
Për krahasime, mbani një anë të pandryshuar: provoni një destinacion tjetër përmes të njëjtit proxy ose krahasoni të njëjtin destinacion në një rrugë të drejtpërdrejtë të lejuar.
Tuneli ende ka një operator
Proxy e di destinacionin CONNECT dhe trajton kohën dhe vëllimin e trafikut. TLS i zakonshëm nga skaji në skaj mbron përmbajtjen e aplikacionit të sajtit nga një proxy që nuk e përfundon atë sesion TLS. Një proxy përgjimi i menaxhuar, të cilit klienti i beson, ka një marrëdhënie tjetër besimi.