miércoles, 29 de agosto de 2012

Bloquear trafico ICMP (ping, nmap, traceroute, etc)

Cuando tu jefe te dice " A partir de ahora la seguridad de este servidor queda bajo tu responsabilidad".
Ahí empezamos a tomarnos con seriedad la recolección de datos vía internet.

Bloquear trafico ICMP para evitar obtener información extra de nuestros equipos, por ejemplo al hacer un nmap, traceroute, ping -R, etc, etc.


Mediante IPTables

#Dropear todos los paquetes icmp (ping, nmap, etc)
iptables -I -INPUT -s 0/0 -d nuestra_ip -p icmp -icmp-type echo-request -j DROP

# Dropear el trafico udp del puerto 3000 al 4000 (traceroute, etc)
iptables -I INPUT -s 0/0 -d nuestra_ip -p udp --dport 3000:4000 -j DROP

-I input = reglas de entrada
-s = source ip ( 0/0 es todo)
-d = destination ip (ip destino)
-p = protocolo
--dport = puerto destino
-j = jump (salta a la regla ó hace lo siguiente  allow, drop, etc)

Hay muchas formas mas con iptables, pongo esas dos a titulo de ejemplo, en vez de usar -s 0/0 pueden no poner nada y automáticamente genera un "anywhere" (cualquier sitio)


Mediante config del kernel

#Activar el bloqueo icmp (no devuelve ping)
sysctl -w net.ipv4.icmp_echo_ignore_all = 1

#Desactivar el bloqueo icmp (si devuelve ping)
sysctl -w net.ipv4.icmp_echo_ignore_all = 0

#Activar el bloqueo de broadcast
sysctl -w icmp_echo_ignore_broadcasts = 1


Para que este parametro quede configurado de manera permanente debemos editar el sysctl

vim /etc/sysctl.conf 

y agregar las lineas anteriormente mencionadas.

Para que el cambio tome efecto correr:
sysctl -p



parámetros que podemos configurar:
sysctl -A




Mas adelante voy a subir un post de aspectos básicos de seguridad.

No hay comentarios:

Publicar un comentario