然後用了最簡單的語法執行NAT
- 代碼: 選擇全部
iptables -A POSTROUTING -t nat -o ppp0 -s 192.168.1.0/24 -j MASQUERADE
一陣子下來好像都很正常
然後開始建立基本的防火牆
我照鳥哥私房菜的script去改
結果遇到了有些網址能連,有些不能連的問題
爬了文,知道要打開IP_FORWARD
那現在也把/etc/network/options的ip_forward也設下去了
也還是一樣...
可是只開NAT沒問題,設了那些有的沒的就掛掉?
可以幫我trace一下嘛?
我的環境:
對外eth0上面掛ppp0( ADSL撥接式)
對內eth1 192.168.1.1
裡面只有一台電腦是.171
iptables的script如下:
- 代碼: 選擇全部
EXTIF="ppp0"
INIF="eth1"
INNET="192.168.1.0/24" # This is for NAT's network
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -Z
/sbin/iptables -F -t nat
/sbin/iptables -X -t nat
/sbin/iptables -Z -t nat
/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -t nat -P PREROUTING ACCEPT
/sbin/iptables -t nat -P POSTROUTING ACCEPT
/sbin/iptables -t nat -P OUTPUT ACCEPT
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
AICMP="0 3 3/4 4 11 12 14 16 18"
for tyicmp in $AICMP
do
/sbin/iptables -A INPUT -i $EXTIF -p icmp --icmp-type $tyicmp -j ACCEPT
done
iptables -A POSTROUTING -t nat -o ppp0 -s 192.168.1.0/24 -j MASQUERADE
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 1046 -j ACCEPT # SSH
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 1863 -j ACCEPT # auth
/sbin/iptables -A INPUT -p TCP -i $EXTIF --dport 80 -j ACCEPT # www
iptables -t nat -A PREROUTING -p tcp -i $EXTIF --dport 4662 -j DNAT --to 192.168.1.171:4662
iptables -t nat -A PREROUTING -p udp -i $EXTIF --dport 4672 -j DNAT --to 192.168.1.171:4672
iptables -t nat -A PREROUTING -p tcp -i $EXTIF --dport 1863 -j DNAT --to 192.168.1.171:1863