iptables五表五鏈


 

 

iptables語句是用來管理主機數據包的,鏈的作用是用來分別管理iptables規則語句的。 默認顯示中間三個,並沒有顯示到數據流入和流出的兩個鏈。

鏈的作用根據不同的規則組合起來實現特定場景的功能。

五鏈:

prerouting:數據包進行路由決策前應用的規則,一般用於改變數據包的目標地址,不讓別人知道我找的是誰(對進入的數據包進行預處理)

input:數據包經由路由決策后,進入到本機處理時應用的規則,一般用於本機進程處理的數據包(數據包本機處理)

output:新建數據包經路由決策后,從本機輸出時應用的規則,一般用於本機處理后的數據包(數據包本機發出)

forward:數據包經由路由決策后,本機不做處理,僅僅是轉發數據包時應用的規則(數據包本機轉發)

postrouting:數據包從本機出去前,對數據包應用的規則,一般用於更改數據包的源地址信息,不讓給別人知道我是誰(對輸出的數據包進行預處理)

常見的場景:

本機處理數據包:prerouting->input

本機轉發數據包:prerouting->forward->postrouting

本機相應數據包:output->postrouting

1)192.168.8.14這台

 

 然后再15這台主機上ping 192.168.8.15 發現ping不同 ok

2)14這台主機上接着增加規則。

規則相同,一個拒絕,一個接受。按照優先級的原則,拒絕生效。

3) byets數據包。在15機器上ping 192.168.8.14,就會發現bytes數據包增多。鏈中的規則多個,按照從上到下的順序匹配

 

 4)-N 增加自定義鏈   

      -X 刪除自定義鏈

      -E old-chain new-chain 更改自定義鏈。標准的鏈名無法更改。

 

 

 

 

 

 五表

security表:主要針對的是數據鏈路層的管理規則組合,只不過它是基於target目標來操作的。

filter表:是netfilter中最重要的表,也是默認的表,主要負責數據包的過濾功能

nat表:主要實現網絡地址轉換的表。可以自由轉換數據報文中的ip和port

mangle表:主要實現數據包的拆分-修改-封裝動作

raw表:通過關閉nat表的追蹤功能,從而實現加速防火牆過濾的表

(連接追蹤:就是記錄用戶的操作,下次再來加速訪問,體驗好。但是大用量的情況下,花費大量資源來記錄歷史記錄,導致其他用戶在等待,導致防火牆的性能非常差)

#iptables -t 表名 -L

 

 #iptables -t nat/managle/raw/security -nvL

==>在不同表中,已經定義好了各自的鏈組合,mangle表包含的鏈最多,raw表包含的鏈最少。

 

 

 表鏈關系

表中存放的不同的鏈,聯眾存在不同數據包規則

 

 netfilter為了更高質量的進行表之間的規則運行,已經定制好了這些表的優先級,從高到低:security > raw > mangle > nat >filter 

 

 鏈中的優先級 是從上到下

 

 規則編寫:

必須遵循的原則:限定方向、再定先后

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM