Обратный прокси-сервер 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 и как это работает. Я не хочу открывать дыры в обратном прокси.

Другие вопросы по тегам