#cp iptables iptables-save iptables-restore /sbin安裝iptables-p2p軟件
首先解壓iptables-p2p-0.3.0a.tar.gz:
#tar zxvf iptables-p2p-0.3.0a.tar.gz#cd iptables-p2p-0.3.0a拷貝iptables-1.2.8的頭文件到適當(dāng)?shù)哪夸洠?br />
#cp -a /usr/src/iptables-1.2.8/include/* /usr/include運(yùn)行“make”編譯iptables-p2p,并拷貝相關(guān)文件到相應(yīng)的目錄:
#make#cp kernel/ipt_p2p.o /lib/modules/2.4.20-8custom/kernel/net/ipv4/netfilter/#cp iptables/libipt_p2p.so /lib/iptables/
安裝ipp2p軟件
首先修改Makefile文件中的源目錄、內(nèi)核目錄和netfilter版本號,將以下內(nèi)容:
IKERNEL = -I/usr/src/linux/includeIUSER = -I/usr/src/iptables-1.2.7a/includeNETFILTER_VERSION = "1.2.7a"【怎樣用Netfilter/IPtables控制P2P流量】改為:
IKERNEL = -I/usr/src/linux-2.4/includeIUSER = -I/usr/src/iptables-1.2.8/includeNETFILTER_VERSION = "1.2.8"編譯軟件,并拷貝庫文件到相應(yīng)的目錄:
#make#cp libipt_ipp2p.so /lib/iptables裝入模塊:
#insmod ipt_ipp2p應(yīng)用和檢測P2P限制功能
iptables-p2p的應(yīng)用
1.iptables-p2p目前支持如下協(xié)議:
◆ FastTrack(KaZaa、Grokster......)
◆ eDonkey(eDonkey、eMule......)
◆ Direct Connect
◆ Gnutella(regular clients and Shareaza"s gnutella 2)
◆ BitTorrent
◆ OpenFT(giFT)
需要安裝CONNMARK模塊,通過CONNMARK模塊的標(biāo)記包來使用iptables-p2p 。
2.通過-help參數(shù)獲取幫助:
#iptables -m p2p -help……P2P match v0.3.0a options:--p2p-protocol [!] protocol[,...]--p2p ...match application-layer protocol(匹配的應(yīng)用層協(xié)議)Valid p2p protocols:(P2P支持的有效協(xié)議如下:)fasttrackgnutellaedonkeydcbittorrentopenft
iptables-p2p模塊通過-m p2p參數(shù)來實(shí)現(xiàn)對所有已知P2P連接請求的識別 。注意,-m p2p只能識別P2P類型的連接請求,不能識別所有的P2P包,可以通過--p2p-protocol子參數(shù)來識別P2P的各種已知協(xié)議類型 。
3.應(yīng)用實(shí)例
#iptables -A FORWARD -m p2p -j DROP
阻塞網(wǎng)絡(luò)上所有的P2P連接請求 。
#iptables -A FORWARD -m p2p --p2p-protocol fasttrack,bittorrent -j DROP阻塞網(wǎng)絡(luò)上fasttrack和bittorrent協(xié)議連接請求 。
在實(shí)際使用過程中必須和CONNMARK目標(biāo)結(jié)合起來,然后通過tc過濾才能真正對所有P2P包進(jìn)行限制 。更多的信息可以參考example/limit-p2p.sh的實(shí)例腳本 。
ipp2p的應(yīng)用
1.ipp2p目前支持如下Linux內(nèi)核和iptables版本:
◆ Linux-Kernels 2.6:2.6.3
◆ Linux-Kernels 2.4:2.4.18、2.4.19、2.4.20、2.4.21、2.4.22、2.4.23
◆ iptables(www.netfilter.org)1.2.7a、1.2.8、1.2.9
2.獲取ipp2p幫助
# iptables -m ipp2p --help……IPP2P v0.5c options:--ipp2pGrab all known p2p packets (抓所有已知的P2P包)--ipp2p-dataGrab all known p2p data packets (抓所有已知P2P數(shù)據(jù)包)--edkGrab all known eDonkey/eMule/Overnet packets (抓所有已知的eDonkey/eMule/Overnet類型的包)--edk-dataGrab all eDonkey/eMule/Overnet data packets (抓所有已知的eDonkey/eMule/Overnet數(shù)據(jù)包)--dcGrab all known Direct Connect packets (抓所有已知的直接連接包)--dc-dataGrab all Direct Connect data packets (抓所有已知的直接連接數(shù)據(jù)包)--kazaaGrab all KaZaA packets (抓所有KaZaA包)--kazaa-dataGrab all KaZaA data packets (抓所有KaZaA數(shù)據(jù)包)--gnuGrab all Gnutella packets (抓所有Gnutella包)--gnu-dataGrab all Gnutella data packets (抓所有Gnutella數(shù)據(jù)包)--bitGrab all BitTorrent packets (beta - handle with care) (抓所有BitTorrent包)--appleGrab all AppleJuice packets (beta - handle with care) (抓所有AppleJuice包)--soulSoulSeek (beta - handle with care) (SoulSeek類型的包)……
3.應(yīng)用實(shí)例
ipp2p只能識別P2P連接請求,而不能識別所有P2P包,因此也必須和CONNMARK目標(biāo)結(jié)合在一起使用,目前只支持TCP協(xié)議標(biāo)示 。下面來看一個(gè)實(shí)例 。
推薦閱讀
- 棗樹綠盲蝽怎樣防治
- 全方位體驗(yàn)小6
- 新鮮排骨怎么儲存保鮮
- 低處的水管怎樣把水流向高處
- 江南百景圖喜笑顏開旗有什么用
- 社會活動家是怎樣的一種職業(yè)
- 華為nova6se手機(jī)克隆怎么用
- 第一次用微信交水費(fèi)怎樣交
- Redmi k30用的什么散熱系統(tǒng)
- 學(xué)生問老師可以用不恥下問嗎
