Mac OS X Lion: reenvíe todas las conexiones en el puerto 22 a una IP externa [cerrado]

8

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.confarchivo:

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.

freedev
fuente
Lo averiguaste? Estoy intentando insertar un proxy transparente en localhost entre localhost y servicios externos y sin suerte. Supongo que OS X acaba de unirse a Windows en este frente: no más soporte NAT a nivel de firewall del sistema, pero todavía espero que se pueda hacer.
foxx1337
2
No, he abandonado y encendido Linux.
freedev
exactamente lo que hice, de hecho; gracias por la actualización
foxx1337

Respuestas:

0
rdr pass on $internal_ip inet proto tcp from any to any port 22

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 :)

Jake
fuente
Gracias Jake por tu tentativa de ayudar, desafortunadamente esta sintaxis no es compatible e incluso tratar de corregir la regla rdr no dio el resultado esperado. He actualizado mi pregunta con su sugerencia.
freedev
0

Puede intentar encontrar un puerto de rinetd para Mac OS X.

Miguel
fuente