一、語法:
iptables [-t 表名] 選項 [鏈名] [匹配條件] [-j 控制類型]
未指定表名時,默認用filter表;鏈名,控制類型要大寫;除非設置默認策略,否則必須指定匹配條件;不指定鏈名時,默認表內所有鏈。
二、常用的控制類型
ACCEPT:允許數據包通過
DROP:直接丟棄數據包,不給出回應
REJECT:拒絕包通過,必要時會給數據包發送端一個響應信息
LOG:在/var/log/messages文件中記錄日志信息,然后將包傳給下一條規則,防火牆規則的"匹配即停止"對於log操作來說是一個特例,因為log只是一種輔助動作,並沒有真正處理包。
三、常用的選項
-A 在鏈末尾添加一條新規則
-I 插入一條新規則,未指定序號時默認為第一條規則
-D 刪除鏈中的某條規則,可指定規則序號或具體內容
-L 列出鏈中的規則
-F 清空鏈中規則
-n 使用數字形式顯示結果,如顯示IP地址,而不是主機名
-P 為指定鏈設置默認規則
-v 顯示詳細信息
--line-numbers 查看規則表時,同時顯示規則在鏈中的序列號
四、規則增刪查的示例
1、增加規則
~] #iptables -t filter -A INPUT -p tcp -j ACCEPT(在filter表的INPUT鏈中最后一個規則后面添加一個新的規則)
~] #iptables -I INPUT 2 -p tcp --dport 80 -j ACCEPT (在filter表INPUT鏈第二行插入規則,允許tcp的80端口通過)
2、刪除規則
~] #iptables -D INPUT 3(刪除filter表中INPUT鏈的第三條規則)
~] #iptables -t raw -F(清空raw表中所有鏈內的規則)
~] #iptables -F OUTPUT(清空filter表output鏈內所有規則)
3、查詢規則
~] #iptables -nL INPUT --line-number(以數字形式查看filter表INPUT鏈中的所有規則,並顯示規則序號)
五、設置默認策略
默認策略是規則匹配最后一個環節,當找不到任何一條能夠匹配數據包的規則時,則執行默認策略。無論是主機型防火牆還是網關型防火牆,設置filter表INPUT鏈和FORWARD鏈的默認策略為DROP,這樣黑客就不能攻擊此台主機,或把此台主機作為跳板攻擊其他主機。
-P選項:為指定鏈設置默認規則
例如:~] #iptables -t filter -P FORWARD ACCEPT