關於iptables

一、iptables防火牆的一些基礎知識:
1、關於netfilter與iptables的區別:
netfilter:指的是linux內核中實現包過濾防火牆的內部結構,不以程序或文件的形式存在,屬於“內核態”的防火牆功能體系。
iptables:用來管理linux防火牆的命令程序,通常位於/sbin/iptables目錄下,屬於“用戶態”的防火牆體系。
2、關於iptables的表、鏈結構:
爲了更加方便的組織和管理防火牆規則,iptables採用了“表”和“鏈”的分層結構。
根據規則集的不同用途劃分爲默認的四個表(raw、mangle、nat、filter);在每個表容器內包括不同的規則“鏈”,根據處理數據包的不同實際劃分爲五種鏈(Input,Output,Forward,Prerouting,Postrouting);
2.1.四種表所包含的鏈及各自的用途。
filter表:用來對數據包進行過濾,根據具體的規則要求決定如何處理一個數據包,包含三種鏈既Input、Forward、Output
nat表:主要用來修改數據包的ip地址、端口號等信息。包含Prerouting、Postouting、Output
mangle表:用來修改數據包的tos、ttl、或者爲數據包設置Mark標記以實現流量整形,策略路由等高級應用。包含prerouting、postrouting、input、output、forward鏈。
2.2.關於五種規則鏈。
INPUT鏈:入站時,應用此規則。
OUTPUT鏈:出站時,應用此規則。
FORWARD鏈:當接到需要通過防火牆中轉發送給其他地址的數據包時,應用此鏈規則。
PREROUTING鏈:在對數據包做路由現則之前,應用。
POSTROUTING鏈:在對數據包做路由選擇之後,應用。
2.3.關於規則表之間的順序:
RAW→MANGLE→NAT→FILETER
2.4.關於規則鏈之間的順序:
入站數據流向:prerouting→input
轉發數據流向:prerouting→forward→postrouting
出站數據流方向:output→postrouting
3.規則鏈內部各條防火牆規則之間的順序:
當數據包經過每條規則鏈時,依次按第一條規則,第二條規則….的順序進行匹配和處理。
鏈內的過濾遵循“匹配既停止”的原則,如果找完整個鏈也找不到相匹配的規則,就用默認策略進行處理。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章