新聞中心
這篇文章給大家分享的是有關(guān)IPTABLS命令怎么用的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)建站自2013年起,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務公司,擁有項目成都網(wǎng)站制作、成都做網(wǎng)站、外貿(mào)營銷網(wǎng)站建設網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元江城做網(wǎng)站,已為上家服務,為江城各地企業(yè)和個人服務,聯(lián)系電話:028-86922220iptables簡介
netfilter/iptables(簡稱為iptables)組成Linux平臺下的包過濾防火墻,與大多數(shù)的Linux軟件一樣,這個包過濾防火墻是免費的,它可以代替昂貴的商業(yè)防火墻解決方案,完成封包過濾、封包重定向和網(wǎng)絡地址轉(zhuǎn)換(NAT)等功能。
iptables基礎
規(guī)則(rules)其實就是網(wǎng)絡管理員預定義的條件,規(guī)則一般的定義為“如果數(shù)據(jù)包頭符合這樣的條件,就這樣處理這個數(shù)據(jù)包”。規(guī)則存儲在內(nèi)核空間的信息包過濾表中,這些規(guī)則分別指定了源地址、目的地址、傳輸協(xié)議(如TCP、UDP、ICMP)和服務類型(如HTTP、FTP和SMTP)等。當數(shù)據(jù)包與規(guī)則匹配時,iptables就根據(jù)規(guī)則所定義的方法來處理這些數(shù)據(jù)包,如放行(accept)、拒絕(reject)和丟棄(drop)等。配置防火墻的主要工作就是添加、修改和刪除這些規(guī)則。
iptables和netfilter的關(guān)系:
這是第一個要說的地方,Iptables和netfilter的關(guān)系是一個很容易讓人搞不清的問題。很多的知道iptables卻不知道netfilter。其實iptables只是Linux防火墻的管理工具而已,位于/sbin/iptables。真正實現(xiàn)防火墻功能的是netfilter,它是Linux內(nèi)核中實現(xiàn)包過濾的內(nèi)部結(jié)構(gòu)。
iptables傳輸數(shù)據(jù)包的過程
可以簡單理解為:
若數(shù)據(jù)包是發(fā)送到本機,則經(jīng)過PREROUTING--》INPUT;
若數(shù)據(jù)包是需要本機轉(zhuǎn)發(fā),則經(jīng)過PREROUTING--》FORWORD-->POSTROUTING;
3. 若數(shù)據(jù)包是本機發(fā)出的,則要經(jīng)過OUTPUT--》POSTROUTING.
iptables的規(guī)則表和鏈:
表(tables)提供特定的功能,iptables內(nèi)置了4個表,即filter表、nat表、mangle表和raw表,分別用于實現(xiàn)包過濾,網(wǎng)絡地址轉(zhuǎn)換、包重構(gòu)(修改)和數(shù)據(jù)跟蹤處理。
鏈(chains)是數(shù)據(jù)包傳播的路徑,每一條鏈其實就是眾多規(guī)則中的一個檢查清單,每一條鏈中可以有一條或數(shù)條規(guī)則。當一個數(shù)據(jù)包到達一個鏈時,iptables就會從鏈中第一條規(guī)則開始檢查,看該數(shù)據(jù)包是否滿足規(guī)則所定義的條件。如果滿足,系統(tǒng)就會根據(jù)該條規(guī)則所定義的方法處理該數(shù)據(jù)包;否則iptables將繼續(xù)檢查下一條規(guī)則,如果該數(shù)據(jù)包不符合鏈中任一條規(guī)則,iptables就會根據(jù)該鏈預先定義的默認策略來處理數(shù)據(jù)包。
四張表和五個鏈的關(guān)系圖:
規(guī)則表與鏈的關(guān)系
1.filter表——三個鏈:INPUT、FORWARD、OUTPUT
作用:過濾數(shù)據(jù)包 內(nèi)核模塊:iptables_filter.
2.Nat表——三個鏈:PREROUTING、POSTROUTING、OUTPUT
作用:用于網(wǎng)絡地址轉(zhuǎn)換(IP、端口) 內(nèi)核模塊:iptable_nat
3.Mangle表——五個鏈:PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD
作用:修改數(shù)據(jù)包的服務類型、TTL、并且可以配置路由實現(xiàn)QOS內(nèi)核模塊:iptable_mangle(別看這個表這么麻煩,咱們設置策略時幾乎都不會用到它)
4.Raw表——兩個鏈:OUTPUT、PREROUTING
作用:決定數(shù)據(jù)包是否被狀態(tài)跟蹤機制處理 內(nèi)核模塊:iptable_raw
表的一般順序:Raw——mangle——nat——filter。
iptables命令和規(guī)則寫法:如圖
關(guān)于添加/除去/編輯規(guī)則的命令的一般語法如下:
iptables [-t table] command [match] [target]
一條iptables規(guī)則包含如下4個基本元素:表,命令,匹配,目標。
iptables
-N:創(chuàng)建新的鏈
-X:刪除鏈
-F:清空鏈上的規(guī)則
-Z:計數(shù)器置零
-P:設置默認策略
規(guī)則:
-A:添加一條規(guī)則,在最后位置。
-I:插入一條規(guī)則,可以指定插入為第n條。
-R:替換一條規(guī)則,指定替換第n條。
-D:刪除一條規(guī)則。
匹配條件:
基本匹配:
-s:源地址
-d:目標地址
-p:指定協(xié)議(tcp|udp|icmp)
-i:指定數(shù)據(jù)流入接口,只能在前半段的鏈上。(prerouting|input|forword)
-o:指定數(shù)據(jù)流出接口,在后半段的鏈上。(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的狀態(tài),也可寫為
--tcp-flags ACK,SYN,FIN,RST SYN
若限定-p icmp --icmp-flags
顯示擴展:
-m state
-m muliport
特別說明:
iptables雖然也有服務腳本,但是它并不是服務,腳本的作用是把寫入的規(guī)則全部啟用。
服務腳本在 /etc/rc.d/init.d/iptables。
腳本配置文件 /etc/sysconfig/iptables-config。
規(guī)則保存位置 /etc/sysconfig/iptables。
簡單實例:
(1)接受來自指定IP地址和指定端口的流入的數(shù)據(jù)包:(放行ssh遠程連接)
#iptables -A INPUT -s 192.168.1.0/24 -d 192.168.1.104 -p tcp --dport 22 -j ACCEPT
#iptables -A OUTPUT -s 192.168.1.105 -d 192.168.1.0/24 -p tcp --sport 22 -j ACCEPT
(2)只接受來自指定端口(服務)的數(shù)據(jù)包:
#iptables -D INPUT --dport 80 -j DROP
(3)允許轉(zhuǎn)發(fā)所有到本地(198.168.10.13)smtp服務器的數(shù)據(jù)包:
#iptables -A FORWARD -p tcp -d 198.168.10.13 --dport smtp -i eth0 -j ACCEPT
(4)允許轉(zhuǎn)發(fā)所有到本地的udp數(shù)據(jù)包(諸如即時通信等軟件產(chǎn)生的數(shù)據(jù)包):
#iptables -A FORWARD -p udp -d 198.168.80.0/24 -i eth0 -j ACCEPT
(5)拒絕發(fā)往WWW服務器的客戶端的請求數(shù)據(jù)包:
#iptables -A FORWARD -p tcp -d 198.168.80.11 --dport www -i eth0 -j REJECT
(6)允許目的為指定端口的tcp數(shù)據(jù)包進入:
#iptables -A INPUT -p tcp -m multiport --destination-port 21,53,80,25,110 ACCEPT
(7)允許來源為指定端口的tcp數(shù)據(jù)包進入:
#iptables -A INPUT -p tcp -m multiport --source-port 21,53,80,25,110 ACCEPT
(8)丟掉SYN和ACK標志位置位的數(shù)據(jù)包:
#iptables -A INPUT-p tcp --tcp-flags ALL SYN,ACK DROP
感謝各位的閱讀!關(guān)于“IPTABLS命令怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
網(wǎng)站欄目:IPTABLS命令怎么用-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://www.ef60e0e.cn/article/cdcipd.html