Proxychains через Squid: ограничения CONNECT на порту 80
Различайте обычные запросы HTTP-прокси и туннели HTTP CONNECT от proxychains, когда целевой порт 80 запрещён.
Браузер загружает HTTP-страницу через Squid. Та же цель не работает под proxychains. Это не обязательно значит, что одна из двух программ выбрала неправильный IP прокси.
Обычный клиент, понимающий HTTP, может отправить веб-запрос на прямой прокси в форме HTTP-прокси. Универсальная обёртка над сокетом, напротив, нуждается в байтовом туннеле для соединения, которое хотело открыть приложение. Для HTTP-прокси в своей цепочке proxychains использует CONNECT.
Это значит, что обычный текстовый сайт на порту 80 может создать запрос CONNECT для порта 80. Политика Squid, разрешающая CONNECT только к утверждённому списку портов TLS, может отклонить такой туннель, даже если обычные HTTP-запросы на порт 80 разрешены.
Сравнивайте запросы, а не только имена хостов
Документация proxychains-ng описывает поддержку HTTP CONNECT. Правила доступа Squid умеют различать метод и целевой порт. Это разные пути запроса к одному и тому же сайту.
Прочитайте отказ и предполагаемую политику, прежде чем её менять. Расширение доступа CONNECT на каждый порт — существенное изменение; оно не должно быть ответом по умолчанию на несоответствие обёртки.
Если приложение имеет собственную поддержку HTTP-прокси, её использование может избежать лишнего универсального туннеля для обычного текстового HTTP. Если ему действительно нужен необработанный TCP-туннель, выберите утверждённый протокол прокси и политику портов, которые его предоставляют.
Успешный запрос браузера — полезное свидетельство достижимости прокси и одного поддерживаемого режима запроса. Но он не доказывает, что каждый метод туннелирования, целевой порт или протокол приложения разрешён через этот прокси.