# Configuración de net.netfilter.nf_conntrack_tcp_timeout_established en Debian 13

- Link: https://binariocero.com/linux/configuracion-de-net-netfilter-nf_conntrack_tcp_timeout_established-en-debian-13
- Published: 2025-08-15T08:19:07+02:00
- Author: Juan José Fernández Durán

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

En Debian 13, el parámetro `net.netfilter.nf_conntrack_tcp_timeout_established` 
controla el tiempo de expiración (en segundos) de las conexiones TCP establecidas
en el subsistema **Netfilter Connection Tracking** (`nf_conntrack`).
Modificar este
valor puede ser útil en entornos con conexiones persistentes de larga duración, 
como aplicaciones de streaming, VPNs o túneles TCP.

## **1. Cambio temporal (no persistente)**

Para modificar el valor en caliente, sin reiniciar el sistema, se puede usar `sysctl`:

    ```wp-block-code
    sudo sysctl -w net.netfilter.nf_conntrack_tcp_timeout_established=3600
    ```

**Características:**

 * El cambio es inmediato.
 * No persiste tras reiniciar el sistema o recargar el módulo del kernel.

## **2. Cambio persistente**

En Debian, los parámetros del kernel gestionados por `sysctl` se pueden definir 
en archivos que se cargan automáticamente al iniciar el sistema.

### **Opción 1 – Archivo global `/etc/sysctl.conf`**

Editar el archivo:

    ```wp-block-code
    sudo nano /etc/sysctl.conf
    ```

Añadir la línea:

    ```wp-block-code
    net.netfilter.nf_conntrack_tcp_timeout_established = 3600
    ```

### **Opción 2 – Archivo específico en `/etc/sysctl.d/` (recomendado)**

Crear un archivo de configuración dedicado:

    ```wp-block-code
    sudo nano /etc/sysctl.d/99-nf_conntrack.conf
    ```

Contenido:

    ```wp-block-code
    net.netfilter.nf_conntrack_tcp_timeout_established = 3600
    ```

Este método es más limpio y facilita la gestión de configuraciones personalizadas,
evitando modificar el archivo global.

## **3. Aplicar cambios sin reiniciar**

Para aplicar los cambios inmediatamente:

    ```wp-block-code
    sudo sysctl --system
    ```

o, si usaste un archivo específico:

    ```wp-block-code
    sudo sysctl -p /etc/sysctl.d/99-nf_conntrack.conf
    ```

## **4. Consideraciones sobre el módulo `nf_conntrack`**

Si el parámetro no aparece al consultar:

    ```wp-block-code
    sysctl net.netfilter.nf_conntrack_tcp_timeout_established
    ```

es posible que el módulo `nf_conntrack` no esté cargado. En ese caso:

    ```wp-block-code
    sudo modprobe nf_conntrack
    ```

## **5. Ejemplo de automatización con script Bash**

El siguiente script configura el valor de forma persistente en Debian 13:

    ```wp-block-code
    #!/bin/bash
    # Configuración persistente de nf_conntrack_tcp_timeout_established en Debian 13

    CONF_FILE="/etc/sysctl.d/99-nf_conntrack.conf"
    PARAM="net.netfilter.nf_conntrack_tcp_timeout_established"
    VALUE=3600

    # Cargar módulo si no está presente
    if ! lsmod | grep -q "^nf_conntrack"; then
        echo "Cargando módulo nf_conntrack..."
        sudo modprobe nf_conntrack
    fi

    # Crear o modificar archivo de configuración
    echo "$PARAM = $VALUE" | sudo tee "$CONF_FILE" > /dev/null

    # Aplicar cambios
    sudo sysctl -p "$CONF_FILE"

    echo "Configuración aplicada: $PARAM=$VALUE"
    ```

## **Conclusión**

Modificar `net.netfilter.nf_conntrack_tcp_timeout_established` en Debian 13 es un
proceso sencillo que puede hacerse temporal o persistentemente. La mejor práctica
es usar un archivo dedicado en `/etc/sysctl.d/` para mantener una configuración 
clara y fácil de mantener, asegurando además que el módulo `nf_conntrack` esté cargado
antes de aplicar los cambios.
