Linux防火牆iptables實用設定

劉秋杉發表於2015-03-09

維護一個伺服器其中重要的一步就是管理好埠的開放與關閉,以避免因為服務一直執行著,而外部惡意攻擊利用這些服務所佔用的埠。


首先是能夠檢視iptables的情況:

sudo iptables -L

會列出每一條規則,標有ACCEPT的規則是指這條規則指示的通訊可以成功,標有DROP的規則是指阻斷所表示的通訊。要注意,在系統執行中,會從開始到結束一條一條去匹配規則,所以最後一條規則是DROP,表示結束,而中間不能有DROP,否則其後的ACCEPT會不起作用。


新增規則:

# iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT

-A表示追加,-p tcp表示tcp協議,-i eth0表示網路卡,--dport ssh表示埠ssh(也就是22),-j ACCEPT表示這條規則是ACCEPT。如果我們想開放9001埠,就把ssh換成9001.


刪除規則:

# iptables -D INPUT 3

3是指第三條規則,就是上面用iptables -L列出的表中,第一行就是第一條規則。


我們最後一條是DROP,所以要阻斷通訊:

# iptables -A INPUT -j DROP


相關文章