压在透明的玻璃上c-国产精品国产一级A片精品免费-国产精品视频网-成人黄网站18秘 免费看|www.tcsft.com

IPTABLS命令詳解及使用

iptables簡介

netfilter/iptables(簡稱為iptables)組成Linux平臺下的包過濾防火墻,與大多數的Linux軟件一樣,這個包過濾防火墻是免費的,它可以代替昂貴的商業防火墻解決方案,完成封包過濾、封包重定向和網絡地址轉換(NAT)等功能。

iptables基礎

規則(rules)其實就是網絡管理員預定義的條件,規則一般的定義為“如果數據包頭符合這樣的條件,就這樣處理這個數據包”。規則存儲在內核空間的信息包過濾表中,這些規則分別指定了源地址、目的地址、傳輸協議(如TCP、UDP、ICMP)和服務類型(如HTTP、FTP和SMTP)等。當數據包與規則匹配時,iptables就根據規則所定義的方法來處理這些數據包,如放行(accept)、拒絕(reject)和丟棄(drop)等。配置防火墻的主要工作就是添加、修改和刪除這些規則。

iptables和netfilter的關系:

這是第一個要說的地方,Iptables和netfilter的關系是一個很容易讓人搞不清的問題。很多的知道iptables卻不知道netfilter。其實iptables只是Linux防火墻的管理工具而已,位于/sbin/iptables。真正實現防火墻功能的是netfilter,它是Linux內核中實現包過濾的內部結構。

iptables傳輸數據包的過程

IPTABLS命令詳解及使用

可以簡單理解為:

1.若數據包是發送到本機,則經過PREROUTING–》INPUT;

2.若數據包是需要本機轉發,則經過PREROUTING–》FORWORD–>POSTROUTING;

3.若數據包是本機發出的,則要經過OUTPUT–》POSTROUTING.

iptables的規則表和鏈:

表(tables)提供特定的功能,iptables內置了4個表,即filter表、nat表、mangle表和raw表,分別用于實現包過濾,網絡地址轉換、包重構(修改)和數據跟蹤處理。

鏈(chains)是數據包傳播的路徑,每一條鏈其實就是眾多規則中的一個檢查清單,每一條鏈中可以有一條或數條規則。當一個數據包到達一個鏈時,iptables就會從鏈中第一條規則開始檢查,看該數據包是否滿足規則所定義的條件。如果滿足,系統就會根據該條規則所定義的方法處理該數據包;否則iptables將繼續檢查下一條規則,如果該數據包不符合鏈中任一條規則,iptables就會根據該鏈預先定義的默認策略來處理數據包。

四張表和五個鏈的關系圖:

IPTABLS命令詳解及使用

規則表與鏈的關系

1.filter表——三個鏈:INPUT、FORWARD、OUTPUT

作用:過濾數據包  內核模塊:iptables_filter.

2.Nat表——三個鏈:PREROUTING、POSTROUTING、OUTPUT

作用:用于網絡地址轉換(IP、端口) 內核模塊:iptable_nat

3.Mangle表——五個鏈:PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD

作用:修改數據包的服務類型、TTL、并且可以配置路由實現QOS內核模塊:iptable_mangle(別看這個表這么麻煩,咱們設置策略時幾乎都不會用到它)

4.Raw表——兩個鏈:OUTPUT、PREROUTING

作用:決定數據包是否被狀態跟蹤機制處理  內核模塊:iptable_raw

表的一般順序:Raw——mangle——nat——filter。

iptables命令和規則寫法:如圖

IPTABLS命令詳解及使用
IPTABLS命令詳解及使用

關于添加/除去/編輯規則的命令的一般語法如下:

iptables [-t table] command [match] [target]

一條iptables規則包含如下4個基本元素:表,命令,匹配,目標。

iptables

-N:創建新的鏈

-X:刪除鏈

-F:清空鏈上的規則

-Z:計數器置零

-P:設置默認策略

規則:

-A:添加一條規則,在最后位置。

-I:插入一條規則,可以指定插入為第n條。

-R:替換一條規則,指定替換第n條。

-D:刪除一條規則。

匹配條件:

基本匹配:

-s:源地址

-d:目標地址

-p:指定協議(tcp|udp|icmp)

-i:指定數據流入接口,只能在前半段的鏈上。(prerouting|input|forword)

-o:指定數據流出接口,在后半段的鏈上。(forword|output|postrouting)

擴展匹配:

隱式擴展:

若限定-p udp  –dport

–sport

若限定-p tcp  –dport

–sport

–tcp-flags 檢查tcp鏈接的標志位       包括這些(URG,ACK,SYN,FIN,RST,PSH,ALL,NONE)。

–syn  匹配第一次握手syn=1的狀態,也可寫為

–tcp-flags ACK,SYN,FIN,RST SYN

若限定-p icmp  –icmp-flags

顯示擴展:

-m state

-m muliport

特別說明:

iptables雖然也有服務腳本,但是它并不是服務,腳本的作用是把寫入的規則全部啟用。

服務腳本在 /etc/rc.d/init.d/iptables.

腳本配置文件  /etc/sysconfig/iptables-config.

規則保存位置  /etc/sysconfig/iptables

 文章來源:http://mylinuxroad.blog.51cto.com/1348472/1611579

上一篇:安卓防火墻 PS DroidWall

下一篇:CSRF 花式繞過Referer技巧