viernes, 1 de octubre de 2010

Monitoreo de servicios "filtrados" con Icinga e iptables

Con iptables se pueden permitir conexiones a un puerto TCP (como para ser monitoreado con Icinga o Nagios) y a la vez evitar que se utilice el puerto para acceder al servicio.

# Icinga
iptables -A INPUT -s $IP_ICINGA -p tcp --dport 139 --syn -j ACCEPT
iptables -A INPUT -s $IP_ICINGA -p tcp --dport 139 -j DROP

# Mantenerlo al utlimo, para q' funque filtrado de conexiones de Icinga
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


Con el ejemplo anterior, monitoreo el servicio de Samba, pero no permito que se reciba nada más que los paquetes TCP que crean la conexion. Los paquetes siguientes son eliminados.

Es importante que "ESTABLISHED,RELATED", si se utiliza, se haga al último.