Iptables и доступ из локальной сети к ресурсам, висящим на внешнем белом ip
Добрый день.
Изучил документацию по iptables (работать начал с пакетом только недавно) на opennet, долго рыскал по форумам, но к сожалению так проблему своими силами решить и не смог, посему прошу вашей помощи в создании необходимых правил.
По порядку: есть шлюз на базе Debbian wheezy, на нем же располагается прокси сервер squid. Шлюз подключен к двум сетям - локальной с адресом вида 192.168.1.0 и к сети Интернет, вида 89.x.x.x. Из внутренней локальной сети правилами iptables прокинуты в Интернет определенные сервисы, например Moodle. Доступ из сети Интернет к сервису есть, но из локальной сети, через прокси-сервер, по белому ip доступ получить не удается - проксик пишет что хост недоступен.
Правила iptables:
# Generated by iptables-save v1.4.14 on Wed Mar 11 09:59:35 2015
*nat
:PREROUTING ACCEPT [233:15548]
:INPUT ACCEPT [17:856]
:OUTPUT ACCEPT [23:1440]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -p tcp -m tcp --dport xx -j DNAT --to-destination 192.168.1.x:80
-A PREROUTING -d 89.x.x.x/32 -p tcp -m tcp --dport 98 -j DNAT --to-destination 192.168.1.x:80
-A PREROUTING -d 89.x.x.x/32 -p tcp -m tcp --dport 1723 -j DNAT --to-destination 192.168.1.x:1723
-A PREROUTING -d 89.x.x.x/32 -p tcp -m tcp --dport 5980 -j DNAT --to-destination 192.168.1.x:80
-A PREROUTING -d 89.x.x.x/32 -p tcp -m tcp --dport 5921 -j DNAT --to-destination 192.168.1.5:5921
-A PREROUTING -d 89.x.x.x/32 -p tcp -m tcp --dport 5920 -j DNAT --to-destination 192.168.1.x:5920
-A PREROUTING -d 89.x.x.x/32 -p tcp -m multiport --dports 31020:31030 -j DNAT --to-destination 192.168.1.x
-A PREROUTING -d 89.x.x.x/32 -p tcp -m multiport --dports 31031:31041 -j DNAT --to-destination 192.168.1.x
-A POSTROUTING -o eth2 -j MASQUERADE
-A POSTROUTING -d 192.168.1.x/32 -p tcp -m tcp --dport 80 -j SNAT --to-source 89.x.x.x
-A POSTROUTING -d 192.168.1.x/32 -p tcp -m tcp --dport 1723 -j SNAT --to-source 89.x.x.x
-A POSTROUTING -d 192.168.1.x/32 -p tcp -m tcp --dport 80 -j SNAT --to-source 89.x.x.x
-A POSTROUTING -d 192.168.1.x/32 -p tcp -m tcp --dport 80 -j SNAT --to-source 89.x.x.x
-A POSTROUTING -s 192.168.1.0/24 -d 192.168.1.5/32 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.1.x
-A POSTROUTING -d 192.168.1.x/32 -p tcp -m tcp --dport 5921 -j SNAT --to-source 89.x.x.x
-A POSTROUTING -d 192.168.1.x/32 -p tcp -m tcp --dport 5920 -j SNAT --to-source 89.x.x.x
-A POSTROUTING -d 192.168.1.x/32 -p tcp -m multiport --dports 31020:31030 -j SNAT --to-source 89.x.x.x
-A POSTROUTING -d 192.168.1.x/32 -p tcp -m multiport --dports 31031:31041 -j SNAT --to-source 89.x.x.x
COMMIT
# Completed on Wed Mar 11 09:59:35 2015 # Generated by iptables-save v1.4.14 on Wed Mar 11 09:59:35 2015 *filter :INPUT DROP [103:7157]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
-A INPUT -s 192.168.1.0/24 -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -s 192.168.2.0/24 -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
-A INPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -s 192.168.1.x/32 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -s 192.168.2.x/32 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 3551 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 81 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
-A INPUT -s 192.168.2.0/24 -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
-A FORWARD -d 192.168.1.x/32 -i eth2 -o eth1 -p tcp -m tcp --dport 98 -j ACCEPT
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
-A FORWARD -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -m state --state INVALID -j DROP
-A FORWARD -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -p -A FORWARD -p gre -j ACCEPT
gre -j ACCEPT
-A FORWARD -i eth2 -o eth0 -j REJECT --reject-with icmp-port-unreachable
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
-A OUTPUT -p icmp -j ACCEPT
COMMIT # Completed on Wed Mar 11 09:59:35 2015 # Generated by iptables-save v1.4.14 on Wed Mar 11 09:59:35 2015 *mangle :PREROUTING ACCEPT [1704:809882] :INPUT ACCEPT [1396:786544] :FORWARD ACCEPT [300:22714] :OUTPUT ACCEPT [1815:1523186] :POSTROUTING ACCEPT [2115:1545900] COMMIT # Completed on Wed Mar 11 09:59:35 2015