«200 Connection Established» означает, что прокси принимает туннель. Сайт ещё не вернул страницу. Далее следует TLS с целевым сервером, а затем сам HTTPS-запрос.

От подключения к прокси до ответа сайта

  1. Клиент подключается к конечной точке прокси.
  2. Он просит прокси подключиться к целевому узлу и порту.
  3. Прокси принимает или отклоняет этот запрос.
  4. После принятия клиент согласует TLS с целевым сервером через туннель.
  5. Клиент отправляет 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

Для HTTP-прокси на локальном порту 8080:

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 уже после того, как прокси принял туннель. Сбой может произойти и во время TLS, ещё до любого HTTP-ответа.

На чём всё остановилось?

НаблюдениеЧто проверять дальше
В подключении к прокси отказаноАдрес прокси, прослушиваемый порт, процесс и сетевой доступ.
Прокси возвращает 407Учётную запись прокси и схему аутентификации.
Прокси отклоняет цель или портПолитику доступа и разрешённые цели CONNECT.
Туннель открыт, затем проверка TLS завершается ошибкойИмя целевого сервера, хранилище доверия, часы и возможный управляемый перехват TLS.
TLS установлен, а сайт возвращает ошибкуОтвет сайта.

При сравнении сохраняйте одну сторону неизменной: попробуйте другую цель через тот же прокси или сравните ту же цель по разрешённому прямому маршруту.

У туннеля всё равно есть оператор

Прокси знает цель CONNECT и обрабатывает временные характеристики и объём трафика. Обычный сквозной TLS защищает прикладное содержимое сайта от прокси, который не завершает эту TLS-сессию на себе. У управляемого перехватывающего прокси, которому доверяет клиент, другая модель доверия.

Похожие статьи