HTTP CONNECT: HTTP прокси HTTPS-ті қалай өңдейді?
HTTPS сұрауын HTTP прокси арқылы қадағалап, CONNECT жауабын бастапқы сервер жауабынан ажыратыңыз және туннельдің қай жерде істен шығатынын табыңыз.
«200 Connection Established» проксидің туннельді қабылдағанын білдіреді. Сайт әлі бетті қайтарған жоқ. Одан кейін нысанамен TLS орнатылады, содан соң HTTPS сұрауының өзі жіберіледі.
Проксиге қосылудан сайт жауабына дейін
- Клиент проксидің түпкі нүктесіне қосылады.
- Проксиден мақсатты хост пен портқа қосылуды сұрайды.
- Прокси сол сұрауды қабылдайды немесе қабылдамайды.
- Қабылдағаннан кейін клиент туннель арқылы нысанамен TLS келіссөзін жүргізеді.
- Клиент HTTPS сұрауын жіберіп, сайттың жауабын TLS ішінде алады.
Проксиге қосылудан бас тарту, туннельді қабылдамау және сертификат қатесі осы тізбектің әртүрлі жерінде болады. Баптауларды өзгертпес бұрын соңғы аяқталған қадамды табыңыз.
CONNECT алмасуы
HTTP/1.1-де қарапайым алмасу мынадай:
CONNECT example.com:443 HTTP/1.1
Host: example.com:443
HTTP/1.1 200 Connection Established
Сұраудың нысанасы — сайт жолы мен сұрау параметрлері қосылмаған хост пен порт. Сәтті CONNECT жауабынан кейін қосылым туннель байттарын тасымалдайды. HTTPS нысанасы үшін клиенттің келесі алмасуы TLS қол алысуы болады.
Ағылшынша түсіндірме тіркесті дәл сәйкестендірмей, сандық күй кодын оқыңыз. Проксилер бір күй үшін әртүрлі мәтін қолдануы мүмкін.
curl арқылы бақылау
Жергілікті 8080 портындағы HTTP прокси үшін:
curl --noproxy '' --proxy http://127.0.0.1:8080 --connect-timeout 5 --max-time 15 --verbose https://example.com/Тыңдау мекенжайын өз түпкі нүктеңізбен ауыстырыңыз. Үміткерлер қажет болса, HTTP прокси тізімін қарап, таңдалған жазбаны тексеріңіз. Айналып өту тізімінің бос болуы осы шақырудың проксиді таңдауын қамтамасыз етеді. Уақыт ретімен прокси қосылымын, CONNECT жауабын, нысана сертификатын тексеруді және сайт жауабын іздеңіз. Журналдағы нақты сөздер curl құрастырылымына байланысты.
Прокси туннельді қабылдағаннан кейін нысана 404, 429 немесе 500 қайтара алады. Кез келген HTTP жауабын қайтармас бұрын TLS кезінде де қате болуы мүмкін.
Қай жерде тоқтады?
| Бақылау | Келесі тексеру |
|---|---|
| Проксиге қосылудан бас тартылады | Прокси мекенжайы, тыңдау порты, процесс және желіге қолжетімділік. |
| Прокси 407 қайтарады | Прокси тіркелгісі және аутентификация сызбасы. |
| Прокси нысананы немесе портты қабылдамайды | Қолжетімділік саясаты және рұқсат етілген CONNECT нысаналары. |
| Туннель ашылады, содан кейін TLS тексеруі сәтсіз болады | Нысана атауы, сенім қоймасы, сағат және ықтимал басқарылатын TLS ұстап қалуы. |
| TLS сәтті, ал сайт қате қайтарады | Сайттың жауабы. |
Салыстыруда бір жағын өзгертпеңіз: сол прокси арқылы басқа нысананы көріңіз немесе сол нысананы рұқсат етілген тікелей бағытпен салыстырыңыз.
Туннельдің де операторы бар
Прокси CONNECT нысанасын біледі және трафиктің уақытын әрі көлемін өңдейді. Қалыпты ұшынан ұшына дейінгі TLS сайттың қолданбалық мазмұнын осы TLS сеансын өзінде аяқтамайтын проксиден қорғайды. Клиент сенетін басқарылатын ұстап қалушы проксиде басқа сенім қатынасы бар.