fbpx

FILTRADO COMÚN DE IPTABLES:

La prevención del acceso a la red por atacantes remotos es uno de los aspectos más importantes de la seguridad de la red. La integridad de la LAN debe ser protegida de los usuarios remotos maliciosos por medio del uso de ciertas reglas estrictas de cortafuego. Con la política por defecto de bloquear los paquetes entrantes, salientes y reenviados, sean incapaces de que los usuarios del cortafuego/puerta de enlace y los usuarios internos de la LAN logren comunicarse entre ellos, o con recursos externos. Para que los usuarios logren realizar  relacionadas con la red y y poder usar aplicaciones en la red, por lo que los administradores deben abrir ciertos puertos para la comunicación.

PARA PERMITIR EL ACCESO AL PUERTO 80 EN EL CORTAFUEGO, AGREGAR LA SIGUIENTE REGLA:

[root@myServer ~ ] # iptables -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT

Esto permite a los usuarios navegar sitios que se comunican usando el puerto estándar 80. Para permitir el acceso a sitios web seguros (por ejemplo, https://www.ejemplo.com/), también necesita proveer el acceso al puerto 443, como sigue:

[root@myServer ~ ] # iptables -A INPUT -p tcp -m tcp –dport 443 -j ACCEPT

DEBES ESTAR ALERTA:

Cuando se crea un conjunto de reglas de iptables, el orden es importante.

Si cualquier regla especifica que cualquier paquete desde la sub-red 192.168.100.0/24 debe ignorarse, seguido de una regla que admite los paquetes de 192.168.100.13 que está dentro de la sub-red ignorada, la segunda regla se ignora. La regla para permitir los paquetes de 192.168.100.13 debe estar antes de la que elimina los restantes de la sub-red.

Para insertar una regla en una ubicación específica en una cadena existente, use la opción -I. Por ejemplo:

[root@myServer ~ ] # iptables -I INPUT 1 -i lo -p all -j ACCEPT

Esta regla es agregada como la primera regla en la cadena INPUT para reconocer el tráfico en el dispositivo loopback local.Pueden suceder que en determinadas oportunidades se necesite un acceso remoto a la LAN. Los servicios seguros, por ejemplo SSH, se pueden utilizar para encriptar la conexión remota a los servicios de la LAN.

Una segunda opción es usar iptables para limitar el número de paquetes SYN, que son autorizados para cada dirección IP en un espacio de tiempo. Para ello usamos el patch recent de iptables.

iptables -A INPUT -p tcp -m state –state NEW -m recent –set –name sattack

iptables -A INPUT -p tcp -m state –state NEW -m recent –rcheck –name sattack –seconds 60 –hitcount 20 -j DROP

La primera regla añade la dirección de origen de los paquetes SYN a una tabla llamada sattack, la segunda regla verifica si en los últimos 60 segundos ha habido más de 20 paquetes SYN, desde la dirección de procedencia del paquete, de ser así el paquete es descartado.

En caso de que se use IP Spoofing junto a SYN Flood, la única alternativa es intentar detectar alguna peculiaridad de la cabecera, que permita distinguir los paquetes del atacante del resto, por ejemplo si MSS no tiene un valor correcto:

iptables -t mangle -I PREROUTING -p tcp -m tcp –dport 80 -m state –state NEW -m tcpmss ! –mss 536:65535 -j DROP

Estas reglas pueden interferir con proxy, y con clientes detrás de un NAT, así que no es recomendable usarlas en un sistema que no esté bajo ataque.

Deja un comentario