Puede que en nuestra red no nos interese tener tráfico P2P, por motivos de rendimiento de la misma o simplemente por que es una red de empresa, en la que la gente debería de estar trabajando y no descargando cosas. Si bien es cierto que el P2P hoy en día se emplea para muchas cosas, puede darse el caso de que nos interese filtrarlo. En ese caso, vamos a ver cómo bloquear el tráfico con IPTables, algo que no suele ser trivial en la mayoría de los casos.
Para poder llevar a cabo esta tarea, vamos a hacer uso de xtables-addons, una pequeña extensión para IPTables que nos ayudará de forma efectiva a realizar la tarea. Algunas de estas extensiones todavía no fueron aprobadas para entrar a forma parte del kernel, otras quizás nunca lo serán. A nosotros nos interesa concretamente el módulo ipp2p (xt_ipp2p), que el es que facilita el filtrado del tráfico P2P.
Puesto que partimos de un sistema Debian, existe un paquete disponible en los repositorios que facilita la instalación de las xtables. También tenemos disponible el paquete con el código fuente, para poder compilarlo, en caso de que nos interesase. Lo primero, por lo tanto, instalar el software necesario.
shell> apt-get install xtables-addons-common
Al finalizar la instalación, simplemente simplemente tendremos que ver que estén correctamente cargadas y sean funcionales. Para ello,
shell> iptables -m ipp2p --help ... ipp2p v0.10 match options: --edk [tcp,udp] All known eDonkey/eMule/Overnet packets --dc [tcp] All known Direct Connect packets --kazaa [tcp,udp] All known KaZaA packets --gnu [tcp,udp] All known Gnutella packets --bit [tcp,udp] All known BitTorrent packets --apple [tcp] All known AppleJuice packets --winmx [tcp] All known WinMX --soul [tcp] All known SoulSeek --ares [tcp] All known Ares ...
Si en la ayuda os aparece eso, es que el módulo ipp2p está cargado y es funcional. Como podéis observar, el tráfico P2P que detecta y permite filtrar es el típico, por lo que ésto tiene buena pinta...
Ahora toca ver cómo emplear estas reglas para ver si funcionan o no. El método de funcionamiento es el mismo de siempre con IPTables, la única diferencia es que vamos a añadir un match contra el módulo P2P que hemos instalado. Así que para bloquear todo el tráfico P2P, nos quedarían unas reglas tal que así,
shell> iptables -A FORWARD -p tcp -m ipp2p --edk -j DROP shell> iptables -A FORWARD -p udp -m ipp2p --edk -j DROP shell> iptables -A FORWARD -p tcp -m ipp2p --dc -j DROP shell> iptables -A FORWARD -p tcp -m ipp2p --kazaa -j DROP shell> iptables -A FORWARD -p udp -m ipp2p --kazaa -j DROP shell> iptables -A FORWARD -p tcp -m ipp2p --gnu -j DROP shell> iptables -A FORWARD -p udp -m ipp2p --gnu -j DROP shell> iptables -A FORWARD -p tcp -m ipp2p --bit -j DROP shell> iptables -A FORWARD -p udp -m ipp2p --bit -j DROP shell> iptables -A FORWARD -p tcp -m ipp2p --apple -j DROP shell> iptables -A FORWARD -p tcp -m ipp2p --winmx -j DROP shell> iptables -A FORWARD -p tcp -m ipp2p --soul -j DROP shell> iptables -A FORWARD -p tcp -m ipp2p --ares -j DROP
Más información: xtables-addons
La entrada Bloquear tráfico P2P desde IPTables la puedes leer en Puppet Linux.
No hay comentarios :
Publicar un comentario