Napasick
07-02-2007, 11:01
Помогите с настройкой правил iptables
Есть сервак который непостредственно смотрит в инет. На нем установлен Сквид.
При настройке iptables имею проблему - странички через прокси очень долго грузяться и в конце имею сообщение что превышен таймаут соединения. В логах cквида пишется TCP_MISS/504 и TCP_DENIED/403. При отключеном фаерволе все работает.
Вот часть скрипта (eth1 внешний интерфейс). Не судите строго это первый опыт работы с iptables. Подскажите хотябы куда копать или что я делаю не так. (Кроме сквида обязательно нужен НАТ).
iptables -A OUTPUT -j ACCEPT
############localhost############################
iptables -A INPUT -d 127.0.0.1 -j ACCEPT
iptables -A OUTPUT -s 127.0.0.1 -j ACCEPT
##################################################
######################DNS##########################
iptables -A INPUT -p tcp --sport 53 -j ACCEPT
iptables -A FORWARD -p tcp --sport 53 -j ACCEPT
iptables -A FORWARD -p tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --sport 53 -j ACCEPT
iptables -A FORWARD -p udp --sport 53 -j ACCEPT
iptables -A FORWARD -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
####################################################
#####################squid#########################
iptables -A INPUT -p tcp --dport 3128 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 3128 -j ACCEPT
iptables -A FORWARD -p tcp --dport 3128 -j ACCEPT
###################################################
#######################HTTP#########################
iptables -A INPUT -i eth1 -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -o eth1 -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 80 -j ACCEPT
iptables -A FORWARD -p tcp --dport 80 -j ACCEPT
####################################################
iptables -A INPUT -j REJECT --reject-with icmp-host-prohibited
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
Есть сервак который непостредственно смотрит в инет. На нем установлен Сквид.
При настройке iptables имею проблему - странички через прокси очень долго грузяться и в конце имею сообщение что превышен таймаут соединения. В логах cквида пишется TCP_MISS/504 и TCP_DENIED/403. При отключеном фаерволе все работает.
Вот часть скрипта (eth1 внешний интерфейс). Не судите строго это первый опыт работы с iptables. Подскажите хотябы куда копать или что я делаю не так. (Кроме сквида обязательно нужен НАТ).
iptables -A OUTPUT -j ACCEPT
############localhost############################
iptables -A INPUT -d 127.0.0.1 -j ACCEPT
iptables -A OUTPUT -s 127.0.0.1 -j ACCEPT
##################################################
######################DNS##########################
iptables -A INPUT -p tcp --sport 53 -j ACCEPT
iptables -A FORWARD -p tcp --sport 53 -j ACCEPT
iptables -A FORWARD -p tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --sport 53 -j ACCEPT
iptables -A FORWARD -p udp --sport 53 -j ACCEPT
iptables -A FORWARD -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
####################################################
#####################squid#########################
iptables -A INPUT -p tcp --dport 3128 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 3128 -j ACCEPT
iptables -A FORWARD -p tcp --dport 3128 -j ACCEPT
###################################################
#######################HTTP#########################
iptables -A INPUT -i eth1 -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -o eth1 -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --sport 80 -j ACCEPT
iptables -A FORWARD -p tcp --dport 80 -j ACCEPT
####################################################
iptables -A INPUT -j REJECT --reject-with icmp-host-prohibited
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE