05 septiembre 2008

Bloqueo de redes p2p (ipp2p)

matando al burro

software ipp2p
S.O debian4r3

Primero pasos

Descargamos el paquete y lo descomprimimos

# cd /usr/src
# wget http://www.ipp2p.org/downloads/ipp2p-0.8.2.tar.gz
# tar -xvf ipp2p-0.8.2


Instalamos las dependencias necesarias

# apt-get install iptables-dev
# apt-get install linux-kernel-headers
# apt-get install linux-source-2.6.18
# apt-get install build-essential
# apt-get install linux-headers-2.6.18-6-686


Como estamos en /usr/src vamos a descomprimir el kernel-source

# bunzip2 linux-source-2.6.18.tar.bz2
# tar -xvf linux-source-2.6.18.tar


Creamos un enlace simbolico a linux-source-*

# ln -s linux-source-2.6.18/ linux

Ahora solo nos falta saber que version de iptables estamos usando, para tal caso ejecutamos

# iptables --version
iptables v1.3.6

Entonces descargamos las fuentes de esa version de http://www.netfilter.org/projects/iptables/downloads.html

# wget http://www.netfilter.org/projects/iptables/files/iptables-1.3.6.tar.bz2

Descomprimimos

# bunzip2 iptables-1.3.6.tar.bz2
# tar -xvf iptables-1.3.6.tar

Entramos a la carpeta

# cd ipp2p-0.8.2
Editamos el Makefile

# vim Makefile
y cambiamos la siguiente linea

ld -shared -o libipt_ipp2p.so libipt_ipp2p.o
por

$(CC) -shared -o libipt_ipp2p.so libipt_ipp2p.o
Procedemos a compilar

# make
Para terminar, copiamos los siguiente archivos

# cp libipt_ipp2p.so /lib/iptables/
# cp ipt_ipp2p.ko /lib/modules/2.6.18-6-686/kernel/net/ipv4/
# insmod ipt_ipp2p.ko
# depmod -a


Comprobamos si nuestro modulo cargo bien, con

# lsmod
y

# iptables -m ipp2p --help
Por ultimo la regla que colocamos a nuestro iptables-rules seria

En general para todos
-A FORWARD -m ipp2p --ipp2p -j DROP
Para una determinada red en particular
-A FORWARD -s 172.16.5.0/24 -m ipp2p --ipp2p -j DROP

http://tic-rex.com

5 comentarios:

Anónimo dijo...

Bravo, sin ni un fallo.

Saludos.

Anónimo dijo...

Si no funciona la linea con insmod , probad con modprobe.
A mi, la primera me ha dado error.

pepe sanchez dijo...

El modprobe anterior , sin la extesion .ko del fichero.

Ademas, para capar del todo, he tenido que añadir otra regla al iptables, exactamente igual pero en vez de FORWARD, poniendo INPUT.

kei kurono dijo...

hola a mi me pasa que
cuando hago
user@cpuuser:~$ sudo apt-get install linux-headers
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
El paquete linux-headers es un paquete virtual provisto por:
linux-headers-2.6.28-18-server 2.6.28-18.60
linux-headers-2.6.28-18-generic 2.6.28-18.60
linux-headers-2.6.28-18 2.6.28-18.60
linux-headers-2.6.28-17-server 2.6.28-17.58
linux-headers-2.6.28-17-generic 2.6.28-17.58
linux-headers-2.6.28-17 2.6.28-17.58
linux-headers-2.6.28-16-server 2.6.28-16.57
linux-headers-2.6.28-16-generic 2.6.28-16.57
linux-headers-2.6.28-16 2.6.28-16.57
linux-headers-2.6.28-15-server 2.6.28-15.52
linux-headers-2.6.28-15-generic 2.6.28-15.52
linux-headers-2.6.28-15 2.6.28-15.52
linux-headers-2.6.28-14-server 2.6.28-14.47
linux-headers-2.6.28-14-generic 2.6.28-14.47
linux-headers-2.6.28-14 2.6.28-14.47
linux-headers-2.6.28-13-server 2.6.28-13.45
linux-headers-2.6.28-13-generic 2.6.28-13.45
linux-headers-2.6.28-13 2.6.28-13.45
linux-headers-2.6.28-3-rt 2.6.28-3.12
linux-ports-headers-2.6.28-6 2.6.28-6.20
linux-headers-2.6.28-6-386 2.6.28-6.20
linux-headers-2.6.28-11-server 2.6.28-11.42
linux-headers-2.6.28-11-generic 2.6.28-11.42
linux-headers-2.6.28-11 2.6.28-11.42
Necesita seleccionar explícitamente uno para instalar.
E: El paquete linux-headers no tiene candidato para su instalación

cual opcion es lo que debo de poner??
saludos

Anónimo dijo...

sudo apt-get install linux-headers-$(uname -r)