iptables的基礎(chǔ)知識(shí)-iptables中的ICMP
iptables的基礎(chǔ)知識(shí)-iptables中的ICMP:
在iptables看來(lái),只有四種ICMP分組,以下分組類型可以被歸為NEW、ESTABLISHED
ECHO請(qǐng)求(ping,8)和ECHO應(yīng)答(ping,0)
時(shí)間戳請(qǐng)求(13)和應(yīng)答(14)
信息請(qǐng)求(15)和應(yīng)答(16)
地址掩碼請(qǐng)求(17)和應(yīng)答(18)
這些ICMP分組類型中,請(qǐng)求分組屬于NEW,應(yīng)答分組屬于ESTABLISHED。而其它類型的ICMP分組不基于請(qǐng)求/應(yīng)答方式,一律被歸入RELATED。
我們先看一個(gè)簡(jiǎn)單的iptables例子:
- iptables -A OUTPUT -p icmp -m state --state NEW,ESTABLISHED, RELATED -j ACCEPT
- iptables -A INPUT -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT
這鏈條規(guī)則進(jìn)行如下的iptables過(guò)濾:
一個(gè)ICMP echo請(qǐng)求是一個(gè)NEW連接。因此,允許ICMP echo請(qǐng)求通過(guò)OUTPUT鏈。
當(dāng)請(qǐng)求的應(yīng)答返回,由于iptables兩個(gè)方向上都發(fā)包了,此時(shí)連接的狀態(tài)是ESTABLISED,因此允許通過(guò)INPUT鏈。而INPUT鏈沒(méi)有NEW狀態(tài),因此不允許echo請(qǐng)求通過(guò)INPUT鏈。也就是說(shuō),這兩條規(guī)則允許內(nèi)部主機(jī)ping外部主機(jī),而不允許外部主機(jī)ping內(nèi)部主機(jī)。
一個(gè)重定向ICMP(5)分組不是基于請(qǐng)求/應(yīng)答方式的,因此屬于RELATED。INPUT和OUTPUT鏈都允許RELATED狀態(tài)的連接,因此重定向(5)分組可以通過(guò)INPUT和OUTPUT鏈。
上一節(jié):iptables中TCP三次握手 下一節(jié):iptables中包的轉(zhuǎn)發(fā)過(guò)程。
【編輯推薦】





















