linux防火墻iptables詳細(xì)教程_第1頁
linux防火墻iptables詳細(xì)教程_第2頁
linux防火墻iptables詳細(xì)教程_第3頁
linux防火墻iptables詳細(xì)教程_第4頁
linux防火墻iptables詳細(xì)教程_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、linux防火墻iptables詳細(xì)教程2.1 框架圖->PREROUTING->ROUTE->FORWARD->POSTROUTING->mangle | mangle manglenat | filter | nat| | |v |INPUT OUTPUT| mangle mangle| filter | natv ->local->| filter2.2 鏈和表表filter:顧名思義,用于過濾的時(shí)候nat:顧名思義,用于做NAT 的時(shí)候NAT:Network Address Translator鏈INPUT:位于filter 表,匹配目的IP

2、是本機(jī)的數(shù)據(jù)包FORWARD:位于filter 表,匹配穿過本機(jī)的數(shù)據(jù)包,PREROUTING:位于nat 表,用于修改目的地址(DNATPOSTROUTING:位于nat 表,用于修改源地址(SNAT3.1 iptables 語法概述iptables -t 要操作的表<操作命令>要操作的鏈規(guī)則號(hào)碼匹配條件-j 匹配到以后的動(dòng)作3.2 命令概述操作命令(-A、-I、-D、-R、-P、-F查看命令(-vnxL-A <鏈名>APPEND,追加一條規(guī)則(放到最后例如:iptables -t filter -A INPUT -j DROP在filter 表的INPUT 鏈里追加

3、一條規(guī)則(作為最后一條規(guī)則匹配所有訪問本機(jī)IP 的數(shù)據(jù)包,匹配到的丟棄-I <鏈名> 規(guī)則號(hào)碼INSERT,插入一條規(guī)則例如:iptables -I INPUT -j DROP在filter 表的INPUT 鏈里插入一條規(guī)則(插入成第1 條iptables -I INPUT 3 -j DROP在filter 表的INPUT 鏈里插入一條規(guī)則(插入成第3 條注意:1、-t filter 可不寫,不寫則自動(dòng)默認(rèn)是filter 表2、-I 鏈名規(guī)則號(hào)碼,如果不寫規(guī)則號(hào)碼,則默認(rèn)是13、確保規(guī)則號(hào)碼 (已有規(guī)則數(shù)+ 1,否則報(bào)錯(cuò)-D <鏈名> <規(guī)則號(hào)碼| 具體規(guī)則內(nèi)容&

4、gt;DELETE,刪除一條規(guī)則例如:iptables -D INPUT 3(按號(hào)碼匹配刪除filter 表INPUT 鏈中的第三條規(guī)則(不管它的內(nèi)容是什么(不管其位置在哪里注意:1、若規(guī)則列表中有多條相同的規(guī)則時(shí),按內(nèi)容匹配只刪除序號(hào)最小的一條2、按號(hào)碼匹配刪除時(shí),確保規(guī)則號(hào)碼 已有規(guī)則數(shù),否則報(bào)錯(cuò)3、按內(nèi)容匹配刪除時(shí),確保規(guī)則存在,否則報(bào)錯(cuò)-R <鏈名> <規(guī)則號(hào)碼> <具體規(guī)則內(nèi)容>REPLACE,替換一條規(guī)則例如:iptables -R INPUT 3 -j ACCEPT將原來編號(hào)為3 的規(guī)則內(nèi)容替換為“-j ACCEPT”注意:確保規(guī)則號(hào)碼 已有規(guī)

5、則數(shù),否則報(bào)錯(cuò)-P <鏈名> <動(dòng)作>POLICY,設(shè)置某個(gè)鏈的默認(rèn)規(guī)則例如:iptables -P INPUT DROP設(shè)置filter 表INPUT 鏈的默認(rèn)規(guī)則是DROP注意:當(dāng)數(shù)據(jù)包沒有被規(guī)則列表里的任何規(guī)則匹配到時(shí),按此默認(rèn)規(guī)則處理-F 鏈名FLUSH,清空規(guī)則例如:iptables -F INPUT清空filter 表INPUT 鏈中的所有規(guī)則iptables -t nat -F PREROUTING清空nat 表PREROUTING 鏈中的所有規(guī)則注意:1、-F 僅僅是清空鏈中規(guī)則,并不影響-P 設(shè)置的默認(rèn)規(guī)則2、-P 設(shè)置了DROP 后,使用-F 一定要

6、小心!3、如果不寫鏈名,默認(rèn)清空某表里所有鏈里的所有規(guī)則-L 鏈名LIST,列出規(guī)則v:顯示詳細(xì)信息,包括每條規(guī)則的匹配包數(shù)量和匹配字節(jié)數(shù)x:在v 的基礎(chǔ)上,禁止自動(dòng)單位換算(K、Mn:只顯示IP 地址和端口號(hào)碼,不顯示域名和服務(wù)名稱例如:iptables -L粗略列出filter 表所有鏈及所有規(guī)則iptables -t nat -vnL用詳細(xì)方式列出nat 表所有鏈的所有規(guī)則,只顯示IP 地址和端口號(hào) iptables -t nat -vxnL PREROUTING用詳細(xì)方式列出nat 表PREROUTING 鏈的所有規(guī)則以及詳細(xì)數(shù)字,不反解3.3 匹配條件流入、流出接口(-i、-o來源、

7、目的地址(-s、-d協(xié)議類型(-p來源、目的端口(-sport、-dport-i <匹配數(shù)據(jù)進(jìn)入的網(wǎng)絡(luò)接口>例如:-i eth0匹配是否從網(wǎng)絡(luò)接口eth0 進(jìn)來-i ppp0匹配是否從網(wǎng)絡(luò)接口ppp0 進(jìn)來-o 匹配數(shù)據(jù)流出的網(wǎng)絡(luò)接口例如:-o eth0-o ppp0-s <匹配來源地址>可以是IP、NET、DOMAIN,也可空(任何地址例如:-d <匹配目的地址>可以是IP、NET、DOMAIN,也可以空例如:-p <匹配協(xié)議類型>可以是TCP、UDP、ICMP 等,也可為空例如:-p tcp-p udp-p icmp -icmp-type 類

8、型ping: type 8 pong: type 0-sport <匹配源端口>可以是個(gè)別端口,可以是端口范圍例如:-sport 1000 匹配源端口是1000 的數(shù)據(jù)包-sport 1000:3000 匹配源端口是1000-3000 的數(shù)據(jù)包(含1000、3000 -sport :3000 匹配源端口是3000 以下的數(shù)據(jù)包(含3000-sport 1000: 匹配源端口是1000 以上的數(shù)據(jù)包(含1000-dport <匹配目的端口>可以是個(gè)別端口,可以是端口范圍例如:-dport 80 匹配源端口是80 的數(shù)據(jù)包-dport 6000:8000 匹配源端口是600

9、0-8000 的數(shù)據(jù)包(含6000、8000 -dport :3000 匹配源端口是3000 以下的數(shù)據(jù)包(含3000-dport 1000: 匹配源端口是1000 以上的數(shù)據(jù)包(含1000注意:-sport 和-dport 必須配合-p 參數(shù)使用1、端口匹配-p udp -dport 53匹配網(wǎng)絡(luò)中目的地址是53 的UDP 協(xié)議數(shù)據(jù)包2、地址匹配3、端口和地址聯(lián)合匹配注意:1、-sport、-dport 必須聯(lián)合-p 使用,必須指明協(xié)議類型是什么2、條件寫的越多,匹配越細(xì)致,匹配范圍越小3.4 動(dòng)作(處理方式ACCEPTDROPSNATDNATMASQUERADE-j ACCEPT通過,允許

10、數(shù)據(jù)包通過本鏈而不攔截它類似Cisco 中ACL 里面的permit例如:iptables -A INPUT -j ACCEPT允許所有訪問本機(jī)IP 的數(shù)據(jù)包通過-j DROP丟棄,阻止數(shù)據(jù)包通過本鏈而丟棄它類似Cisco 中ACL 里的deny例如:-j SNAT -to IP-IP:端口-端口(nat 表的POSTROUTING 鏈源地址轉(zhuǎn)換,SNAT 支持轉(zhuǎn)換為單IP,也支持轉(zhuǎn)換到IP 地址池(一組連續(xù)的IP 地址例如:同上,只不過修改成一個(gè)地址池里的IP-j DNAT -to IP-IP:端口-端口(nat 表的PREROUTING 鏈目的地址轉(zhuǎn)換,DNAT 支持轉(zhuǎn)換為單IP,也支持轉(zhuǎn)

11、換到IP 地址池(一組連續(xù)的IP 地址例如:iptables -t nat -A PREROUTING -i ppp0 -p tcp -dport 80 iptables -t nat -A PREROUTING -i ppp0 -p tcp -dport 81 iptables -t nat -A PREROUTING -i ppp0 -p tcp -dport 80 -j MASQUERADE動(dòng)態(tài)源地址轉(zhuǎn)換(動(dòng)態(tài)IP 的情況下使用例如:3.5 附加模塊按包狀態(tài)匹配(state按來源MAC 匹配(mac按包速率匹配(limit多端口匹配(multiport-m state -state 狀態(tài)

12、狀態(tài):NEW、RELATED、ESTABLISHED、INVALIDNEW:有別于tcp 的synESTABLISHED:連接態(tài)RELATED:衍生態(tài),與conntrack 關(guān)聯(lián)(FTPINVALID:不能被識(shí)別屬于哪個(gè)連接或沒有任何狀態(tài)例如:iptables -A INPUT -m state -state RELATED,ESTABLISHED -j ACCEPT-m mac -mac-source MAC匹配某個(gè)MAC 地址例如:iptables -A FORWARD -m -mac-source xx:xx:xx:xx:xx:xx -j DROP阻斷來自某MAC 地址的數(shù)據(jù)包,通過本機(jī)

13、注意:MAC 地址不過路由,不要試圖去匹配路由后面的某個(gè)MAC 地址-m limit -limit 匹配速率-burst 緩沖數(shù)量用一定速率去匹配數(shù)據(jù)包例如:-j ACCEPT注意:limit 僅僅是用一定的速率去匹配數(shù)據(jù)包,并非“限制”-m multiport <-sports|-dports|-ports> 端口1,端口2,.,端口n一次性匹配多個(gè)端口,可以區(qū)分源端口,目的端口或不指定端口例如:iptables -A INPUT -p tcp -m multiports -ports 21,22,25,80,110 -j ACCEPT注意:必須與-p 參數(shù)一起使用4. 實(shí)例分析

14、單服務(wù)器的防護(hù)如何做網(wǎng)關(guān)如何限制內(nèi)網(wǎng)用戶內(nèi)網(wǎng)如何做對(duì)外服務(wù)器連接追蹤模塊4.1 單服務(wù)器的防護(hù)弄清對(duì)外服務(wù)對(duì)象書寫規(guī)則網(wǎng)絡(luò)接口lo 的處理狀態(tài)監(jiān)測的處理協(xié)議+ 端口的處理實(shí)例:一個(gè)普通的web 服務(wù)器iptables -A INPUT -i lo -j ACCEPTiptables -A INPUT -p tcp -m multiport 22,80 -j ACCEPTiptables -A INPUT -m state -state RELATED,ESTABLISHED -j ACCEPT iptables -P INPUT DROP注意:確保規(guī)則循序正確,弄清邏輯關(guān)系,學(xué)會(huì)時(shí)刻使用-vn

15、L 4.2 如何做網(wǎng)關(guān)弄清網(wǎng)絡(luò)拓?fù)浔緳C(jī)上網(wǎng)設(shè)置nat啟用路由轉(zhuǎn)發(fā)地址偽裝SNAT/MASQUERADE實(shí)例:ADSL 撥號(hào)上網(wǎng)的拓?fù)鋏cho "1" > /proc/sys/net/ipv4/ip_forward-j MASQUERADE4.3 如何限制內(nèi)網(wǎng)用戶過濾位置filer 表FORWARD 鏈匹配條件-s -d -p -s/dport處理動(dòng)作ACCEPT DROP實(shí)例:iptables -A FORWARD -m mac -mac-source 11:22:33:44:55:66 -j DROP4.4 內(nèi)網(wǎng)如何做對(duì)外服務(wù)器服務(wù)協(xié)議(TCP/UDP對(duì)外服務(wù)端口內(nèi)

16、部服務(wù)器私網(wǎng)IP內(nèi)部真正服務(wù)端口實(shí)例:iptables -t nat -A PREROUTING -i ppp0 -p tcp -dport 80 iptables -t nat -A PREROUTING -i ppp0 -p tcp -dport 81 4.5 連接追蹤模塊為什么要使用連接追蹤模塊FTP 協(xié)議的傳輸原理傳統(tǒng)防火墻的做法如何使用使用端口command portdata port傳輸模式主動(dòng)模式(ACTIVE被動(dòng)模式(PASSIVE主動(dòng)模式client serverxxxx |-|-|->| 21yyyy |<-|-|-| 20FW1 FW2被動(dòng)模式client s

17、erverxxxx |-|-|->| 21yyyy |-|-|->| zzzzFW1 FW2只使用主動(dòng)模式,打開TCP/20防火墻打開高范圍端口配置FTP 服務(wù),減小被動(dòng)模式端口范圍modprobe ipt_conntrack_ftpmodprobe ipt_nat_ftpiptables -A INPUT -p tcp -dport 21 -j ACCEPTiptables -A INPUT -m state -state RELATED,ESTABLISHED -j ACCEPTiptables -P INPUT DROP5. 網(wǎng)管策略怕什么能做什么讓什么vs 不讓什么三大“紀(jì)

18、律”五項(xiàng)“注意”其他注意事項(xiàng)5.1 必加項(xiàng)echo "1" > /proc/sys/net/ipv4/ip_forwardecho "1" > /proc/sys/net/ipv4/tcp_syncookiesecho "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses modprobe ip_conntrack_ftpmodprobe ip_nat_ftp5.2 可選方案堵:iptables -A FORWARD -p tcp -dport xxx -j DROPiptables -A FORWARD -p tcp -dport yyy:zzz -j DROP通:iptab

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論