Linux笔记-iptables规则原理和组成
Netfilter
Netfilter:是Linux操作系統(tǒng)內(nèi)核層內(nèi)部的一個數(shù)據(jù)包處理模塊。
Hook point:數(shù)據(jù)包在Netfilter中的掛載點(PRE_ROUTING、INPUT、OUTPUT、FORWARD、POST_ROUTING)。
用通俗的話解釋下:數(shù)據(jù)包通過網(wǎng)卡,走到操作系統(tǒng)內(nèi)核后,就會進(jìn)入Netfilter中這5個掛載點。
可以在這5個掛載點進(jìn)行Hook,修改數(shù)據(jù)包。
Netfilter與iptables
iptables規(guī)則組成
組成部分:四張表 + 五條鏈(Hook point) + 規(guī)則
四張表:filter表、nat表、mangle表、raw表。
五條鏈:INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUTING。
每個鏈的功能都有一個表對應(yīng)。
一般最關(guān)鍵的表為filter,nat表。
Managle表:修改數(shù)據(jù)包,改變包頭中的內(nèi)容(TTL,TOS,MARK)。
Filter表:訪問控制、規(guī)則匹配。
Nat表:地址轉(zhuǎn)發(fā)。
iptables規(guī)則組成
數(shù)據(jù)包訪問控制:ACCEPT、DROP、REJECT。
數(shù)據(jù)包改寫:SNAT、DNAT。
信息記錄:LOG。
其中:SNAT是源地址改寫,DNAT是目標(biāo)地址改寫。
規(guī)則:
| table | command | chain | Parament & | target | |
| iptables | -t filter ? ? nat | -A -D -L -F -P -I -R -n | INPUT FORWARD OUTPUT PREROUTING POSTROUTING | -p tcp -s -d --sport --dport --dports -m tcp ? ? ?state ? ? ?multiport | -j ACCEPT ? ?DROP ? ?REJECT ? ?DNAT ? ?SNAT |
?
總結(jié)
以上是生活随笔為你收集整理的Linux笔记-iptables规则原理和组成的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python笔记-方差分析之多因素方差分
- 下一篇: Linux笔记-解决iptables配置