在linux kernel所用的防火牆機制
語法:
列出filter table 的規則: sudo iptables -L -n
列出filter table 的規則,加上封包等資訊: sudo iptables -L -nv
**
沒打sudo會出現
FATAL: Error inserting ip_tables (/lib/modules/2.6.32-24-generic/kernel/net/ipv4/netfilter/ip_tables.ko): Operation not permitted
iptables v1.4.4: can't initialize iptables table `filter': Permission denied (you must be root)
Perhaps iptables or your kernel needs to be upgraded.
害我以為要更新甚麼的,完全沒注意到 (you must be root)這句@@
**
刪除規則
Delete all rules in chain or all chains: iptables -F
Zero counters in chain or all chains: iptables -X
Delete a user-defined chain: iptables -Z
制定policy
有三個表 INPUT:進來主機 FORWARD:主機轉送 OUTPUT:從主機出去
把INPUT設為DROP: iptables -P INPUT DROP
**
現在封包都進不來主機了
**
來自lo介面的封包都允許通過 iptables -A INPUT -i lo -j ACCEPT
來自此ip的封包都允許通過 iptables -A INPUT -i eth0 -s xxx.xxx.xxx.xxx -j ACCEPT
**
除了以上兩個其它封包都進不來
**
制定tcp udp規則
開啟一些常用port 20-25 53 110等
iptables -A INPUT -i eth0 -p tcp --dport 20:25 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 110 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 113 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -i eth0 -p udp --dport 53 -j ACCEPT
狀態模組(好像蠻好用的)
有四種STATE
INVALID :無效的封包
ESTABLISHED:已經連線成功的狀態
NEW :想要新建立連線的封包狀態
RELATED :封包和主機送出去的封包有關
讓RELATED,ESTABLISHED 的封包進來
iptables -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
開放mac
iptables -A INPUT -m mac --mac-source aa:bb:cc:dd:ee:ff -j ACCEPT
儲存與回復
iptables-save > filename
iptables-restore < filename
@如果在家裡透過hinet上網 eth0要改成ppp0
參考資料
鳥哥的 Linux 私房菜 http://linux.vbird.org/
- Nov 01 Mon 2010 14:45
ubuntu筆記-iptables
全站熱搜
留言列表