內部主機(NAT) 對外提供服務, 所需要的防火牆設定

No Comments

OS: CentOS 6
在雙介面(對外ppp0, 對內eth0)的主機上設定
題目: 從外部IP的 port 8080, 轉到內部的 port 80
解法: 從DNAT思考

註解: 一般的家庭分享器是SNAT的方式

*filter
:FORWARD ACCEPT [0:0]
-A INPUT -p tcp -m state –state NEW -m tcp –dport 8080 -j ACCEPT # 讓外部可存取8080, 再處理轉PORT的事
-A INPUT -s 192.168.0.0/16 -p tcp -m state –state NEW -m tcp -j ACCEPT
-A INPUT -s 192.168.0.0/16 -p udp -m state –state NEW -m udp -j ACCEPT

*nat
# 處理外部的8888, 轉到內部的80
iptables -A PREROUTING -i ppp0 -p tcp -m tcp –dport 8080 -j DNAT –to-destination 192.168.7.77:80
# 封包進來後, 要再出去的處理, 就變成一般的NAT
iptables -A POSTROUTING -o eth0 -j MASQUERADE
# 註, 之前設定成 iptables -A POSTROUTING -s 192.168.0.0/16 -o eth0 -j MASQUERADE, 雖然沒錯誤, 但不能運作

Leave a Reply

Share via
Copy link