HTTP CONNECT: kako posredniški strežnik HTTP obravnava HTTPS
Spremljajte zahtevo HTTPS skozi posredniški strežnik HTTP, ločite odgovor CONNECT od odgovora izvornega strežnika in ugotovite, kje predor odpove.
»200 Connection Established« pomeni, da posredniški strežnik sprejme predor. Spletno mesto še ni vrnilo strani. Sledi TLS s ciljem, nato pa sama zahteva HTTPS.
Od povezave s posredniškim strežnikom do odgovora spletnega mesta
- Odjemalec se poveže s končno točko posredniškega strežnika.
- Od posredniškega strežnika zahteva povezavo s ciljnim gostiteljem in vrati.
- Posredniški strežnik zahtevo sprejme ali zavrne.
- Po sprejetju se odjemalec skozi predor s ciljem dogovori za TLS.
- Odjemalec pošlje zahtevo HTTPS in v okviru TLS prejme odgovor spletnega mesta.
Zavrnjena povezava s posredniškim strežnikom, zavrnjen predor in napaka potrdila se pojavijo na različnih mestih tega zaporedja. Pred spreminjanjem nastavitev poiščite zadnji dokončani korak.
Izmenjava CONNECT
V HTTP/1.1 je poenostavljena izmenjava videti takole:
CONNECT example.com:443 HTTP/1.1
Host: example.com:443
HTTP/1.1 200 Connection Established
Cilj zahteve sta gostitelj in vrata, brez poti ali poizvedbe spletnega mesta. Po uspešnem odgovoru CONNECT povezava prenaša bajte predora. Pri cilju HTTPS je naslednja izmenjava odjemalca rokovanje TLS.
Berite številčno stanje namesto primerjanja angleške opisne fraze. Posredniški strežniki lahko za isto stanje uporabljajo različno besedilo.
Opazovanje s curl
Za posredniški strežnik HTTP na lokalnih vratih 8080:
curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/Naslov poslušanja zamenjajte s svojo končno točko. Če potrebujete kandidate, preglejte seznam proxyjev HTTP in preizkusite izbrani vnos. Prazen seznam izjem zagotovi, da ta klic izbere posredniški strežnik. V časovnem vrstnem redu poiščite povezavo s posredniškim strežnikom, odgovor CONNECT, preverjanje ciljnega potrdila in odgovor spletnega mesta. Natančno besedilo dnevnika je odvisno od gradnje curl.
Cilj lahko vrne 404, 429 ali 500, potem ko posredniški strežnik sprejme predor. Odpove lahko tudi med TLS, še preden vrne kakršen koli odgovor HTTP.
Kje se je ustavilo?
| Opažanje | Kaj preveriti naprej |
|---|---|
| Povezava s posredniškim strežnikom je zavrnjena | Naslov posredniškega strežnika, vrata poslušanja, proces in omrežni dostop. |
| Posredniški strežnik vrne 407 | Račun posredniškega strežnika in način avtentikacije. |
| Posredniški strežnik zavrne cilj ali vrata | Pravila dostopa in dovoljene cilje CONNECT. |
| Predor se odpre, nato preverjanje TLS odpove | Ime cilja, shrambo zaupanja, uro in morebitno upravljano prestrezanje TLS. |
| TLS uspe in spletno mesto vrne napako | Odgovor spletnega mesta. |
Pri primerjavi ohranite eno stran nespremenjeno: poskusite drug cilj skozi isti posredniški strežnik ali primerjajte isti cilj po dovoljeni neposredni poti.
Predor ima še vedno upravljavca
Posredniški strežnik pozna cilj CONNECT ter obravnava časovni potek in obseg prometa. Običajni TLS od konca do konca ščiti aplikacijsko vsebino spletnega mesta pred posredniškim strežnikom, ki ne zaključuje te seje TLS. Upravljani prestrezni strežnik, ki mu odjemalec zaupa, ima drugačno ureditev zaupanja.