Mimo, niewątpliwych zalet sieci p2p;) niekiedy zachodzi konieczność zablokowania w sieci tego ruchu. Z pomocą przychodzi nam specjalny, dodawany do jądra moduł ipp2p. Obsługuję on większość jąder i pozwala zablokować największe sieci p2p.
Instalacja:
W Debianie przebiega ona następująco:
apt-get install iptables-dev kernel-headers-2.6.8-1-k7 tar xvfz ipp2p*.gz cd ipp2p make cp ibipt_ipp2p.so /lib/modules/iptables cp ipt_ipp2p.ko /lib/modules/`uname -r`/kernel/net/ipv4 depmod insmod ipt_ipp2p.ko
Użycie:
Filtr pozwala kontrolować dobrze dobrane moduły za pomocą parametru „-m”, polecenie ma wtedy postać:
iptables -A FORWARD -m nazwa_modułu --opcja1 --opcja2 ... -j dzialanie
żeby użyć IPP2P wybierz „ipp2p” jako nazwę modułu i jedną albo więcej dostępnych opcji.
Obecnie nastepujące dopasowania są sobie równe:
-m ipp2p --ipp2p -m ipp2p --edk --kazaa --gnu --dc
Kompletna i prosta filtracja przy użyciu IPP2P będzie wyglądać następująco:
iptables -A FORWARD -m ipp2p --ipp2p -j DROP
czyli np.:
iptables -A FORWARD -m ipp2p --ipp2p --bit --apple --winmx --soul --ares -j DROP
W tabeli przedstawione zostały wszystkie moduły opcji obecnie dostępnych dla IPP2P. Należy zwrócić uwagę by nie używać –ipp2p razem z inną opcja już zawartą w –ipp2p.
| Opcja | Sieć p2p | Protokół |
|---|---|---|
| –edk | eDonkey, eMule, Kademlia | TCP i UDP |
| –kazaa | KaZaA, FastTrack | TCP i UDP |
| –gnu | Gnutella | TCP i UDP |
| –dc | Direct Connect | tylko TCP |
| –bit | BitTorrent | TCP i UDP |
| –apple | AppleJuice | tylko TCP |
| –winmx | WinMX | tylko TCP |
| –soul | SoulSeek | tylko TCP |
| –ares | Ares, AresLite | tylko TCP |