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

Squid как прозрачный прокси Открывает только https-сайты, а не обычный http

Я установил и настроил прокси-сервер squid как прозрачный прокси-сервер. когда я попытался использовать firefox, прокси-сервер работает нормально, и я могу получить доступ к обоим портам https и http. но когда я использую транспарнет, я могу получить доступ к https-сайтам только как https://google.com не http://google.com

Вот как выглядит мой squid.conf:

acl our_networks src 192.168.20.0/24
http_access allow our_networks
#Recommended minimum configuration:
acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
#
# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
acl localnet src 10.0.0.0/8     # RFC1918 possible internal network
acl localnet src 172.16.0.0/12  # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
#
acl SSL_ports port 443          # https
acl SSL_ports port 563          # snews
acl SSL_ports port 873          # rsync
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 Safe_ports port 631         # cups
acl Safe_ports port 873         # rsync
acl Safe_ports port 901         # SWAT
acl purge method PURGE
acl CONNECT method CONNECT


http_port 3128 transparent
icp_port 0

А вот и мой конфиг IPtable

$IPTABLES -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.20.21:3128
#$IPTABLES -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128

Что я здесь пропустил? я бегу squid 2.7 stable 9

Спасибо,

Вам не хватает базового понимания SSL :)

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

Кроме того, ваша конфигурация прокси также довольно небезопасна (она позволяет любому из 192.168.20.0/24 подключаться к любому порту в любом месте), и вы забыли перенаправить порт 443 (хотя, как я уже сказал, это приведет только к ошибкам на клиенте) .