Назад | Перейти на главную страницу

squid с iptables обходить https

Я просто хочу сделать интернет-анонимный прозрачный прокси, который в обход трафика просто хочет скрыть IP-адрес клиента, но не работает для https ..

Я не хочу использовать sslbump и т. Д., Просто хочу обойти трафик

Я много ищу в google и serverfault.com и stackoverflow.com и тестирую это решение на обход https-трафика:

Обход прозрачного Squid с помощью IPTables

Проблемы Squid с iptables

https://stackoverflow.com/questions/2601400/squidiptables-how-do-i-allow-https-to-pass-through-and-bypassing-squid

моя конфигурация кальмара:

acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

http_access deny CONNECT !SSL_ports

http_access allow localhost
http_access allow all

short_icon_urls on

http_port 0.0.0.0:13128 accel vhost
always_direct allow all

refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern .           0   20%     4320
coredump_dir /var/spool/squid

forwarded_for off

и мой iptables conf теперь просто:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 13128
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 13128

Я пытаюсь использовать эту команду, но не работаю:

iptables -t filter -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -I FORWARD -p tcp --dport 443 -j ACCEPT
iptables -I INPUT -i lo -j ACCEPT

iptables -t nat -A PREROUTING -d x.x.x.x -j ACCEPT

iptables -t nat -A PREROUTING -i eth0 -p tcp -s x.x.x.x -m tcp --dport 443 -j REDIRECT --to-ports 13128

Этот x.x.x.x - мой действующий IP-адрес в Интернете.

и моя клиентская конфигурация для использования прокси выглядит так:

добавлен somedomain.com в / etc / hosts x.x.x.x somedomain.com

и я хочу просмотреть https://somedomain.com в моем браузере

вы можете найти много прокси-серверов ip-портов, которые работают так, например, используя этот ip 173.161.0.227

если я добавлю строку в свой клиент / etc / hosts

173.161.0.227 www.iplocation.net

я могу просматривать https://www.iplocation.net

мой сервер CentOS 7

Слова «анонимный прозрачный» противоречат друг другу.

Анонимный прокси - это когда сведения о клиенте скрыты, а сервер видит только прокси. Прозрачный означает, что сведения о прокси-сервере скрыты, а сведения о клиенте отправляются на сервер.

Итак, краткий ответ на ваш вопрос: то, о чем вы просите, невозможно. Вы не можете иметь и то, и другое одновременно. Особенно когда задействован TLS (как HTTPS).

Приведенные вами примеры / etc / hosts не являются прозрачным прокси. Это могут быть анонимные прокси. Это определенно «открытые прокси». Посмотрите это.

Ваш squid.conf предназначен для обратного прокси, который был превращен в открытый прокси (с помощью строки always_direct). Правила NAT бессмысленны с этой конфигурацией прокси.

  • Если вы хотите использовать способ / etc / hosts, удалите свои правила NAT и заставьте Squid использовать http_port 80 вместо 13128.

  • Если вы хотите использовать прокси-сервер перехвата NAT, сотрите строку always_direct и измените параметры «Accel vhost» на «Intercept».

Порт 80 и порт 443 имеют очень разные синтаксисы трафика. Http_port, который вы используете NAT, принимает только синтаксис порта 80. Это первая причина, по которой порт 443 NAT не работает.

Чтобы получить синтаксис HTTPS в Squid, вам понадобится https_port для его получения. Однако TLS предотвращает работу способа / etc / hosts. Получение HTTPS для доменов, которые вам не принадлежат, означает SSL-Bump. Даже прозрачная ретрансляция порта 443 с NAT требует, чтобы SSL-Bump был настроен на «сращивание».

НО, при использовании NAT единственная причина, по которой ваш прокси-сервер получает трафик порта 443, в первую очередь, заключается в том, что вы используете NAT для порта 443. Чтобы «обойти», вам просто нужно стереть ваши правила NAT, содержащие порт 443.