Puerto de redireccionamiento del firewall OpenWRT IPv6

Puerto de redireccionamiento del firewall OpenWRT IPv6

¿Alguien sabe cómo redirigir un puerto entrante a otro puerto para una dirección IPv6 en OpenWRT?

No hay NAT involucrada, solo una dirección IPv6 global ordinaria.

Lo que intento hacer es cambiar el puerto de SSH para varios servidores; redirigir un número de puerto arbitrario al 22 internamente. Mientras permanece en el puerto 22 para la red local.

Por ejemplo, [2345::1]:5000 -> OpenWRT -> [2345::1]:22

Cuando se utiliza el NAT IPv4 equivalente, esta configuración es muy sencilla porque los puertos se pueden configurar fácilmente con reenvío de puertos.

Muchas gracias

Respuesta1

De hecho, también puedes usar el mismo reenvío de puertos basado en DNAT en Linux ip6tables. La principal diferencia es que nocambiarla dirección de destino; por otro lado, es necesariofósforoen la dirección existente.

-t nat -I PREROUTING -d 2345::1 -p tcp --dport 5000 -j DNAT --to-destination [2345::1]:22

Por supuesto, con IPv6 no necesita enmascaramiento basado en SNAT, pero para empezar, esa es una regla de firewall completamente separada, por lo que puede simplemente omitirse.

No sé cómo se traduce esto en OpenWRT (excepto que es posible que necesites el kmod-ipt-nat6paquete), pero sospecho que es algo como:

config redirect
    option family ipv6
    option src wan6
    option src_dip 2345::1
    option proto tcp
    option src_dport 5000
    option target DNAT
    option dest_ip 2345::1
    option dest_port 22

Respuesta2

Actualmente no parece posible utilizar "redireccionamiento de configuración" para IPv6 en el firewall 3 de OpenWRT.

Sin embargo, pude lograrlo manualmente usando las siguientes reglas:

ip6tables -t nat -I PREROUTING -d IPV6_ADDRESS_HERE -p tcp --dport 5000 -j DNAT --to-destination [IPV6_ADDRESS_HERE]:22 ip6tables -A zone_wan_input -m conntrack --ctstate DNAT -j ACCEPT ip6tables -A zone_wan_forward -m conntrack --ctstate DNAT -j zone_(ZONE_NAME)_dest_ACCEPT

información relacionada