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

моя конфигурация 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

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

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

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

and i want browse https://somedomain.com in my browser

you can find a lot of ip port proxy that work like this for example using this ip 173.161.0.227

if i add a line in to my client /etc/hosts

173.161.0.227 www.iplocation.net

i can browse https://www.iplocation.net

my server is CentOS 7

0
задан 23 May 2017 в 15:41
1 ответ

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

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

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

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

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

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

  • Если вы хотите использовать NAT прокси для перехвата, то сотрите строку always_direct и измените опцию "акселератора vhost" на "перехват".

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

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

Но когда NAT'ing единственная причина, по которой ваш прокси получает трафик на порт 443, это то, что вы являетесь NAT'ing портом 443 на него. Чтобы "обойти", вам просто нужно стереть ваши NAT правила, содержащие порт 443.

.
1
ответ дан 4 December 2019 в 16:28

Теги

Похожие вопросы