iptables規則小結
iptables規則小結:
iptables
-t
filter: 顧名思義,用于過濾的時候
nat: 顧名思義,用于做 NAT 的時候
-A、-I、-D、-R、-P、-F
APPEND,追加一條規則
INSERT,插入一條規則
DELETE,刪除一條規則
REPLACE,替換一條規則
POLICY,設置某個鏈的默認規則
FLUSH,清空規則
INPUT: 位于 filter 表,匹配目的 IP 是本機的數據包
FORWARD: 位于 filter 表,匹配穿過本機的數據包,
PREROUTING: 位于 nat 表,用于修改目的地址(DNAT)
POSTROUTING:位于 nat 表,用于修改源地址 (SNAT)
-i、-o
流入、流出接口
-i ppp0
-s、-d
來源、目的地址
-s 192.168.0.1 匹配來自 192.168.0.1 的數據包
-s 192.168.1.0/24 匹配來自 192.168.1.0/24 網絡的數據包
-p
協議類型
-p icmp --icmp-type 類型
-p tcp
--sport、--dport
來源、目的端口
--sport 1000 匹配源端口是 1000 的數據包
--sport 1000:3000 匹配源端口是 1000-3000 的數據包(含1000、3000)
--sport :3000 匹配源端口是 3000 以下的數據包(含 3000)
--sport 1000: 匹配源端口是 1000 以上的數據包(含 1000)
-m
state --state NEW、RELATED、ESTABLISHED、INVALID
mac --mac-source xxxxxxx
limit --limit 50/s
-m multiport --dports 21,22,25,80,110
-j
ACCEPT
DROP
SNAT
DNAT
MASQUERADE
典型應用:
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 \
-j DNAT --to 192.168.1.1
做dnat,內網提供web服務
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 \
-j SNAT --to 1.1.1.1
做snat,為內網提供上網服務
-L [鏈名]
LIST,列出規則
v:顯示詳細信息,包括每條規則的匹配包數量和匹配字節數
x:在 v 的基礎上,禁止自動單位換算(K、M)
n:只顯示 IP 地址和端口號碼,不顯示域名和服務名稱
所有鏈名必須大寫
INPUT/OUTPUT/FORWARD/PREROUTING/POSTROUTING
所有表名必須小寫
filter/nat/mangle
所有動作必須大寫
ACCEPT/DROP/SNAT/DNAT/MASQUERADE
所有匹配必須小寫
-s/-d/-m
通過文章的介紹,我們具體的知道了iptables規則里的東西。希望本文對大家有幫助!
【編輯推薦】