posts - 167,  comments - 30,  trackbacks - 0

          Iptables

          感覺防火墻可能不能完美的保護(hù)主機(jī),比如ping措施,這時(shí),就需要使用iptables來進(jìn)行配置。

          使用Iptables的內(nèi)置firewall機(jī)制,是通過kernel中的netfilter        模塊實(shí)現(xiàn)的,Linux kernel使用netfilter對(duì)進(jìn)出數(shù)據(jù)包進(jìn)行過濾,netfilter由三個(gè)規(guī)則表組成,每個(gè)表又有許多內(nèi)建的鏈組成。使用iptables命令可以對(duì)這些表鏈進(jìn)行操作,如添加、刪除、列出規(guī)則等。

          Netfilter 規(guī)則表 --- filter nat managle

          filter用于路由網(wǎng)絡(luò)數(shù)據(jù)包。是默認(rèn)的,也就是說如果沒有指定-t參數(shù),當(dāng)創(chuàng)建一條新規(guī)則時(shí),他默認(rèn)存放到該表內(nèi)。

          INPUT 網(wǎng)絡(luò)數(shù)據(jù)包流向服務(wù)器

          OUTPUT 網(wǎng)絡(luò)數(shù)據(jù)包從服務(wù)器流出

          FORWARD 網(wǎng)絡(luò)數(shù)據(jù)包經(jīng)服務(wù)器路由

          nat 用于NAT Net Address Translation 是一種IP地址轉(zhuǎn)換方法

          PREROUTING 網(wǎng)絡(luò)數(shù)據(jù)包到達(dá)服務(wù)器時(shí)可以被修改

          POSTROUTING 網(wǎng)絡(luò)數(shù)據(jù)包在即將從服務(wù)器發(fā)出時(shí)可以被修改

          managle 用于修改網(wǎng)絡(luò)數(shù)據(jù)包的表

           

          配置iptables

          當(dāng)數(shù)據(jù)包進(jìn)入服務(wù)器時(shí),Linux kernel會(huì)查找對(duì)應(yīng)的鏈,直到找到一條規(guī)則與數(shù)據(jù)包匹配。如果該規(guī)則的targetACCEPT,就會(huì)跳過剩下的規(guī)則,數(shù)據(jù)包會(huì)繼續(xù)被傳送。如果該規(guī)則targetDROP,該數(shù)據(jù)包會(huì)被攔截掉,kernel不會(huì)在參考其他規(guī)則。

           

          Note:如果從始至終都沒有一條規(guī)則與數(shù)據(jù)包匹配,而且表末尾有沒有drop all規(guī)則,那么該數(shù)據(jù)包會(huì)被acceptCisco則相反,在表末尾會(huì)因含deny all的規(guī)則。

          1)     iptables命令選項(xiàng)

          iptables [-t iptables ] command option parameter target

          -A 在鏈尾添加一條規(guī)則

          -C 將規(guī)則添加到用戶定義鏈之前對(duì)其進(jìn)行檢查

          -D 從鏈中刪除一條規(guī)則

          -E重命名用戶定義的鏈,不改變鏈本身

          -F 清空鏈,刪除鏈上的所有規(guī)則

          -I在鏈中插入一條規(guī)則

          -L 列出某個(gè)鏈上的規(guī)則,如:iptables –L INPUT 列出INPUT鏈上的規(guī)則

          -N 創(chuàng)建一個(gè)新鏈

          -P 定義某個(gè)鏈的默認(rèn)策略

          -R替換鏈上的某條規(guī)則

          -X 刪除某個(gè)用戶相關(guān)的鏈

          -Z 將所有表的所有鏈的字節(jié)和數(shù)據(jù)包統(tǒng)計(jì)數(shù)器清零

          2)     Iptables的命令參數(shù)

          -p protocol

          應(yīng)用于數(shù)據(jù)包的協(xié)議類型,可以是TCP UDP ICMP ALL ! 也可以

          當(dāng)使用-p tcp時(shí),還可使用其他可選項(xiàng),一邊允許進(jìn)一步定義規(guī)則,選項(xiàng)如下:

          -sport 允許指定匹配數(shù)據(jù)包源端口 port1:port2表示port1port2之間的所有端口

          -dport目的端口,和sport雷同

          當(dāng)使用-p !udp 時(shí),也有特殊的選項(xiàng)供使用

          -sport-dport-p tcp相同,只不過用于UDP

          使用-p icmp參數(shù)時(shí),只有一個(gè)選項(xiàng)可用

          -icmp-type 允許在過濾規(guī)則中指定icmp類型

          -s source 指定數(shù)據(jù)包包的源地址,該參數(shù)后跟一個(gè)IP地址,一個(gè)帶有sub-net mask的網(wǎng)絡(luò)地址,或者一個(gè)主機(jī)名(不建議使用主機(jī)名)

          -d destination 數(shù)據(jù)包的目的地址 -s

          -j jump 用于指定一個(gè)target,告訴規(guī)則將該匹配的數(shù)據(jù)包發(fā)送到該targetTarget可以是ACCEPTDROPQUEIEPETURN。如果沒有-j,那么不會(huì)對(duì)數(shù)據(jù)包進(jìn)行任何操作,只是將計(jì)數(shù)器加1

          -I in-interface 對(duì)于INPUT FOREARD PREROUTING鏈,指定數(shù)據(jù)包到達(dá)服務(wù)器時(shí)所使用的端口

          -o out-interface 對(duì)于OUTPUT FORWARD POSTROUTING,該參數(shù)指定數(shù)據(jù)包離開服務(wù)器時(shí)使用的端口

          3Iptables的命令target

          創(chuàng)建規(guī)則最后一步是指定iptables對(duì)數(shù)據(jù)包的操作。只要某一規(guī)則匹配該數(shù)據(jù)包,就不會(huì)再有別的規(guī)則的操作。內(nèi)建的target有:ACCEPT 允許數(shù)據(jù)包通過 ,到達(dá)目的地

          DROP 拒絕數(shù)據(jù)包通過,丟棄該包

          QUEUE 將數(shù)據(jù)包發(fā)送回到用戶應(yīng)用程序處理

          RETURN 不再根據(jù)當(dāng)前鏈的其他規(guī)則來檢查數(shù)據(jù)包,而是直接返回,繼續(xù)被發(fā)送到其目的地址,或下一個(gè)鏈。

          2、示例:

          允許www

          Iptables –A INPUT –p tcp –dport 80 –j ACCEPT

          該規(guī)則被調(diào)價(jià)到filter表的INPUT鏈,允許目的端口為80的數(shù)據(jù)包通過

          在內(nèi)部接口上允許DHCP

          Iptables –A INPUT –I eth0 –p tcp - - sport - - dport 67 ACCEPT

           Iptables –A INPUT –I eth0 –p udp - - sport - - dport 67 ACCEPT

          同時(shí)允許tcpudp協(xié)議

          3、保存和修改iptables

          使用iptables-save 可將現(xiàn)行的iptables規(guī)則保存

          恢復(fù)iptables

          使用iptables-restore可從配置文檔恢復(fù)iptables表到現(xiàn)行iptables表。

          posted on 2011-06-30 18:59 David1228 閱讀(397) 評(píng)論(0)  編輯  收藏 所屬分類: Linux

          <2011年6月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          常用鏈接

          留言簿(4)

          隨筆分類

          隨筆檔案

          文章檔案

          新聞分類

          新聞檔案

          相冊(cè)

          收藏夾

          Java

          Linux知識(shí)相關(guān)

          Spring相關(guān)

          云計(jì)算/Linux/虛擬化技術(shù)/

          友情博客

          多線程并發(fā)編程

          開源技術(shù)

          持久層技術(shù)相關(guān)

          搜索

          •  

          積分與排名

          • 積分 - 359308
          • 排名 - 154

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 镇平县| 林口县| 抚顺市| 习水县| 河北区| 万年县| 长沙县| 新源县| 镇原县| 黑山县| 襄垣县| 和平区| 叶城县| 鹰潭市| 江山市| 资中县| 思茅市| 田林县| 荃湾区| 鄂托克前旗| 重庆市| 平乐县| 华容县| 开封市| 盖州市| 巴青县| 永定县| 讷河市| 勐海县| 孟州市| 黄骅市| 旺苍县| 南汇区| 仪陇县| 尖扎县| 许昌县| 岑溪市| 夹江县| 治多县| 出国| 郴州市|