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