Обратный прокси-сервер Squid не отправляет трафик на веб-сервер
Я учусь использовать Squid в качестве обратного прокси. Сейчас он не отправляет какой-либо веб-трафик на внутренний сервер. Я беру http-трафик в обратный прокси-сервер и отправляю его на мой веб-сервер в 8080. Мои настройки:
Internet--Firewall--Squid--WebServer
Я настроил кальмаров с 2 NIC. Один с IP-адресом DMZ, который превращается в общедоступный IP-адрес. Другой ник находится внутри той же подсети, что и веб-сервер. Вот файл squid.conf:
http_port 80 accel defaultsite=rcdlab.net vhost
forwarded_for on
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
cache_peer 192.168.3.59 parent 8080 0 no-query no-digest originserver name=web01
acl sites_iis dstdomain www.rcdlab.net rcdlab.net 192.168.222.198
acl our_sites dstdomain www.rcdlab.net rcdlab.net 192.168.222.198
cache_peer_access web01 allow sites_iis
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
acl localnet src 192.168.3.0/24
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 our_sites
http_access allow manager all
http_access allow manager
http_access allow localnet
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny all
visible_hostname rp.rcdlab.local
access_log /var/log/squid/access.log
Обновление 29 июня 2012
Внешний трафик с моего компьютера достигает обратного прокси-сервера, но я вижу это в tcpdump:
172.16.3.254 > 192.168.222.213: ICMP host 172.16.3.254 unreachable - admin prohibited, length 60
IP (tos 0x0, ttl 128, id 4230, offset 0, flags [DF], proto TCP (6), length 52)
172.16.3.254 = обратный прокси-сервер 192.168.222.213 = мой IP
1 ответ
Обновить
Отредактировал / etc / sysconfig / iptables и добавил следующее правило:
-A INPUT -p tcp --dport 80 -j ACCEPT
Это добавляется к цепочке INPUT (пакеты, предназначенные для локального сервера), протоколу tcp, порту назначения 80 и переходу к целевому действию для пакетов, соответствующих правилу, ПРИНЯТЬ.
Это позволяло внешнему трафику попадать на обратный прокси-сервер и перенаправляться на внутренний веб-сервер, что было проверено путем просмотра журналов IIS.
/Обновить
Мои правила NAT и Firewall были хорошими.
Проблема лежит на CentOS и iptables в / etc / sysconfig / iptables
Эта строка:
-A INPUT -j REJECT --reject-with icmp-host-prohibited
блокировал трафик от достижения моего веб-сервера. Я прокомментировал это сейчас, но мне нужно больше исследовать iptables и как это работает. Я не хочу открывать дыры в обратном прокси.