iptables命令格式web
iptables的命令格式較爲複雜,通常的格式以下:
iptables [-t table] 命令 [chain] [rules] [-j target]
table——指定代表
命令——對鏈的操做命令
chain——鏈名
rules——規則
target——動做如何進行
1.表選項
表選項用於指定命令應用於哪一個iptables內置表,iptables內置包括filter表、nat表、mangle表和raw表,其中filter表是默認表
2.命令選項iptables命令格式服務器
命令 說明
-A或—append <鏈名> 在規則列表的最後增長1條規則
-I或–insert <鏈名> 在指定的位置插入1條規則
-D或–delete <鏈名> 從規則列表中刪除1條規則
-R或–replace <鏈名> 替換規則列表中的某條規則
-F或–flush <鏈名> 刪除表中全部規則
-Z或–zero <鏈名> 將表中數據包計數器和流量計數器歸零網絡
3.匹配選項app
匹配 說明
-i或–in-interface <網絡接口名> 指定數據包從哪一個網絡接口進入,如ppp0、eth0和eth1等
-o或–out-interface <網絡接口名> 指定數據包從哪塊網絡接口輸出,如ppp0、eth0和eth1等
-p或—proto協議類型 < 協議類型> 指定數據包匹配的協議,如TCP、UDP和ICMP等
-s或–source <源地址或子網> 指定數據包匹配的源地址
–sport <源端口號> 指定數據包匹配的源端口號,可使用「起始端口號:結束端口號」的格式指定一個範圍的端口
-d或–destination <目標地址或子網> 指定數據包匹配的目標地址
–dport目標端口號 指定數據包匹配的目標端口號,可使用「起始端口號:結束端口號」的格式指定一個範圍的端口ssh
4.動做選項
動做 說明
ACCEPT 接受數據包
DROP 丟棄數據包
REDIRECT 與DROP基本同樣,區別在於它除了阻塞包以外, 還向發送者返回錯誤信息。
SNAT 源地址轉換,即改變數據包的源地址
DNAT 目標地址轉換,即改變數據包的目的地址
MASQUERADE IP假裝,便是常說的NAT技術,MASQUERADE只能用於ADSL等撥號上網的IP假裝,也就是主機的IP是由ISP分配動態的;若是主機的IP地址是靜態固定的,就要使用SNAT
LOG 日誌功能,將符合規則的數據包的相關信息記錄在日誌中,以便管理員的分析和排錯tcp
5. filter ,nat ,mangle ,raw 這四個表對應的鏈選項ide
filter,用於路由網絡數據包。spa
INPUT 網絡數據包流向服務器rest
OUTPUT 網絡數據包從服務器流出日誌
FORWARD 網絡數據包經服務器路由
nat,用於NAT表.NAT(Net Address Translation )是一種IP地址轉換方法。
PREROUTING 網絡數據包到達服務器時能夠被修改
POSTROUTING 網絡數據包在即將從服務器發出時能夠被修改
OUTPUT 網絡數據包流出服務器
mangle,用於修改網絡數據包的表,如TOS(Type Of Service),TTL(Time To Live),等
INPUT 網絡數據包流向服務器
OUTPUT 網絡數據包流出服務器
FORWARD 網絡數據包經由服務器轉發
PREROUTING 網絡數據包到達服務器時能夠被修改
POSTROUTING 網絡數據包在即將從服務器發出時能夠被修改
raw, 用於決定數據包是否被跟蹤機制處理
OUTPUT 網絡數據包流出服務器
PREROUTING 網絡數據包到達服務器時能夠被修改
iptables -L --默認看的就是filter表
iptables -L -t filter
固然也能夠手工保存到另外一個文件,就須要iptables-restore手工還原了