Necesito reenviar toda la conexión a cualquier puerto de dirección 22 a una puerta de enlace diferente (es decir, no predeterminada). En primer lugar, supongo hacerlo con ipfw:
sudo ipfw add 5 fwd $EXTERNAL_IP,22 tcp from any to any 22 keep-state
Pero con Mac OS X Lion parece que no funciona. De todos modos, mirando la documentación de ipfw veo que está en desuso y debería usar pfctl.
Así que he modificado el /etc/pf.conf
archivo:
rdr proto tcp from $internal_ip to any port 22 -> $external_ip port 22
Pero sin suerte.
¿Alguien sabe cómo traducir o reenviar todas las conexiones generadas por las aplicaciones locales a cualquier dirección que no sea el puerto 22 a una puerta de enlace / dirección IP diferente?
Actualizar
Siguiendo la sugerencia de Jake, traté de especificar solo la IP de destino, por lo que convertí la regla rdr a la sintaxis mac os x:
rdr proto tcp from any to any port 22 -> $external_ip port 22
Incluso en este caso no obtuve los resultados que esperaba, es decir, puedo conectarme a través de ssh a mi servidor pero a través de la puerta de enlace predeterminada.
Respuestas:
No es un experto de ninguna manera, creo que debería hacerlo. Ha pasado mucho tiempo desde que usé otra cosa que no sea iptables :)
fuente
Puede intentar encontrar un puerto de rinetd para Mac OS X.
fuente