# Cómo Proteger tu Servidor Linux de Inundaciones SYN-ACK con iptables

- Link: https://binariocero.com/linux/como-proteger-tu-servidor-linux-de-inundaciones-syn-ack-con-iptables
- Published: 2025-05-27T17:27:17+02:00
- Author: Juan José Fernández Durán

![Loading](https://binariocero.com/wp-content/plugins/page-views-count/ajax-loader-
2x.gif)

En `iptables` puedes aplicar reglas para mitigar ataques de **inundación SYN-ACK**(
SYN-ACK Flood), que suelen ser parte de ataques DDoS.:

### 1. **Limitar la tasa de respuestas SYN-ACK**

Puedes evitar responder con demasiados paquetes SYN-ACK a un mismo origen mediante`--
limit`:

    ```wp-block-preformatted
    iptables -A OUTPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -m limit --limit 10/s --limit-burst 20 -j ACCEPT
    ```

Explicación:

 * `-A OUTPUT`: Aplica la regla a los paquetes salientes.
 * `-p tcp --tcp-flags SYN,ACK SYN,ACK`: Filtra los paquetes SYN-ACK.
 * `-m limit --limit 10/s --limit-burst 20`: Permite un máximo de 10 respuestas 
   por segundo con un ráfaga inicial de 20.
 * `-j ACCEPT`: Permite el tráfico que cumple la regla.

### 2. **Usar SYN Cookies (a nivel de kernel)**

Asegúrate de que `syncookies` está activado en el kernel para evitar que la tabla
de conexiones se llene:

    ```wp-block-preformatted
    echo 1 > /proc/sys/net/ipv4/tcp_syncookies
    ```

O, para hacerlo permanente:

    ```wp-block-preformatted
    echo "net.ipv4.tcp_syncookies = 1" >> /etc/sysctl.confsysctl -p
    ```

### 3. **Limitar conexiones por IP**

Para evitar que un solo host sature el servidor con demasiadas conexiones simultáneas:

    ```wp-block-preformatted
    iptables -A INPUT -p tcp --syn -m connlimit --connlimit-above 10 -j DROP
    ```

Explicación:

 * `-A INPUT`: Aplica la regla al tráfico entrante.
 * `-p tcp --syn`: Filtra las nuevas conexiones TCP.
 * `-m connlimit --connlimit-above 10`: Bloquea IPs que intenten abrir más de 10
   conexiones concurrentes.

### 4. **Bloquear IPs con un alto número de peticiones SYN**

Si quieres bloquear IPs que hacen muchas solicitudes SYN en poco tiempo:

    ```wp-block-preformatted
    iptables -A INPUT -p tcp --syn -m hashlimit --hashlimit 10/sec --hashlimit-burst 20 --hashlimit-mode srcip --hashlimit-name syn_rate -j DROP
    ```

Explicación:

 * `--hashlimit 10/sec --hashlimit-burst 20`: Limita a 10 solicitudes por segundo
   con un máximo de 20 en ráfaga.
 * `--hashlimit-mode srcip`: Aplica el límite por IP de origen.

Estas reglas pueden ayudar a mitigar un ataque de SYN-ACK Flood sin afectar demasiado
el tráfico legítimo.
