1. 程式人生 > >iptables概述 iptables詳解--轉

iptables概述 iptables詳解--轉

 

 

【參考文章】:iptables詳解-朱雙印個人日誌

【參考文章】:linux iptables詳解--個人筆記

【參考文章】:iptables詳解--轉

1. 基本概念

  Linux真正的防火牆安全框架是 netfilter ,它位於Linux的核心空間。

  iptables本質是一個命令列工具,位於使用者空間,它相當於一個代理,將使用者的安全設定執行到對應的安全框架 netfilter 中。

2. 工作方式

  iiptables的工作方式是根據配置的規則去處理資料包。規則儲存在核心空間的資訊包過濾表中,規則裡面包括了源地址,源埠,目的地址,目的埠,傳輸協議,應用層協議等。當資料包與規則匹配時,iptables就根據規則處理資料包,如放行(accept),拒絕(reject)和丟棄(drop)等。配置防火牆的主要方式就是新增,修改,刪除這些規則。 

3. 資料包經過防火牆的流程

  1、當主機收到一個數據包後,資料包先在核心空間中處理,若發現目的地址是自身,則傳到使用者空間中交給對應的應用程式處理;若發現目的不是自身,則會將包丟棄或進行轉發。

  2、iptables實現防火牆功能的原理是:在資料包經過核心的過程中有五處關鍵地方,分別是 PREROUTING、INPUT、OUTPUT、FORWARD、POSTROUTING,稱為鉤子函式,iptables可以在這5處地方寫規則,對經過的資料包進行處理,規則一般的定義為 “如果資料包頭符合這樣的條件,就這樣處理資料包”。

  3、iptables中定義有5條鏈,說白了就是上面說的5個鉤子函式,因為每個鉤子函式中可以定義多條規則,每當資料包到達一個鉤子函式時,iptables就會從鉤子函式中第一條規則開始檢查,看該資料包是否滿足規則所定義的條件。如果滿足,系統就會根據該條規則所定義的方法處理該資料包;否則iptables將繼續檢查下一條規則,如果該資料包不符合鉤子函式中任一條規則,iptables就會根據該函式預先定義的預設策略來處理資料包

  4、iptables中定義有表,分別表示提供的功能,有filter表(實現包過濾)、nat表(實現網路地址轉換)、mangle表(實現包修改)、raw表(實現資料跟蹤),這些表具有一定的優先順序:raw-->mangle-->nat-->filter

 4. iptables規則

  基本語法:iptables [-t 表] [操作命令] [鏈] [規則匹配器] [-j 目標動作]

  

  

  

  

  

  

  

  

5. iptables常用命令

5.1 服務相關

  service iptables start       // 啟動

  service iptables restart   // 重啟

  service iptables stop      // 關閉

5.2 規則儲存設定

  iptables -L -n       // 檢視當前規則

  /etc/init.d/iptables save  // 儲存規則到 /etc/sysconfig/iptables

  iptables-save > 檔案路徑   // 儲存規則到指定檔案

  iptables-resotre < 檔案路徑 // 從指定檔案載入規則

  service iptables save    // 儲存規則