Redirección de puertos para todas las interfaces con nft (nftables)

Redirección de puertos para todas las interfaces con nft (nftables)

Tengo un requisito relativamente simple que quiero resolver con nft (nftables). Es para redirigir todos los paquetes entrantes desde el puerto 445 al puerto 1445. Esto debe hacerse para todas las interfaces de red.

Mi implementación actual solo funciona localmente y no para solicitudes externas. El puerto 445 no está disponible para conexiones externas.

table ip nat {                                                             
    chain prerouting {                                                 
            type nat hook prerouting priority 0; policy accept;        
            redirect                                                   
            tcp dport microsoft-ds redirect to :1445                   
    }                                                                  

    chain postrouting {                                                
            type nat hook postrouting priority 100; policy accept;     
    }                                                                  

    chain output {                                                     
            type nat hook output priority 100; policy accept;          
            tcp dport microsoft-ds redirect to :1445                   
    } 
}

¿Alguien tiene un consejo? Gracias.

Respuesta1

Resolví mi problema.

Esto funciona para mí:

table ip nat {
    chain prerouting {
        type nat hook prerouting priority 0; policy accept;
        tcp dport microsoft-ds counter packets 1 bytes 52 dnat to :1445
    }

    chain postrouting {
        type nat hook postrouting priority 100; policy accept;
    }

    chain output {
        type nat hook output priority 100; policy accept;
        tcp dport microsoft-ds counter packets 3 bytes 180 dnat to :1445
    }
}

información relacionada