He estado tratando de configurar el túnel SSH inverso desde fuera de mi red a casa, pero no he conseguido nada. Mi configuración es todo Apple: dos Macs detrás de un Airport Extreme, uno en x.x.x.20 escuchando en el puerto 22 y el otro en x.x.x.30 escuchando en 10.022. He configurado el NAT en el AP para reenviar los puertos externos 22 al x.x.x.20 y el 10.022 al x.x.x.30. Quiero que el túnel se ejecute a x.x.x.20:10022.
He estado utilizando este comando desde un dispositivo de Apple fuera de mi red doméstica: ssh -v -f -N -R 22:localhost:10022 homeuser@myhomedoman.com
así como ssh -v -f -N -R 10022:localhost:22 homeuser@myhomedoman.com
pero de cualquier manera, los registros en la máquina de escucha x.x.x.20:22 muestran que el tráfico va a ella y la máquina x.x.x.30:10022 no muestran ningún registro en el archivo secure.log. Incluso he probado ssh -v -f -N -R 10022:localhost:10022 homeuser@myhomedoman.com
y el tráfico sigue llegando a la máquina de escucha x.x.x.20:22.
Lo extraño es que cuando ejecuto ssh -p 10022 homeuser@myhomedoman.com
se conecta a la máquina de escucha x.x.x.30:10022 sin problemas. He revisado todas las reglas de NAT en el aeropuerto también y sólo hay una regla que cubre el puerto 10022 por lo que no es un problema de NATing en cuanto a la configuración del AP.
O bien estoy haciendo algo realmente mal, hay un error en la implementación de Apple de los túneles SSH inversos o que el Airport está haciendo algo raro con el tráfico. ¿Alguien más ha tenido este problema o ha encontrado una solución?
La guía que estoy ejecutando para hacer funcionar el túnel inverso es http://www.vdomck.org/2005/11/reversing-ssh-connection.html
Gracias de antemano.