No he encontrado una verdadera solución "a pedido" para túneles ssh. Aquí está la definición (para mí):
- Un host (ya sea local o remoto) tiene un servicio de escucha en el puerto XXX
- Un cliente (nuevamente, local o remoto) se conecta al puerto XXX
- Luego, el host inicia una conexión ssh predefinida con otro host y configura el reenvío de puertos apropiado, la autenticación típicamente se maneja para el cliente.
- El cliente puede utilizar esa conexión en función del reenvío de puertos.
Por lo que puedo decir, no hay ningún software que actualmente habilite la parte "a pedido"; según lo definido por un servicio que está escuchando activamente las conexiones. Obviamente, puede iniciar un servicio que crea el túnel, pero eso es, por supuesto, una operación manual.
Actualmente mi solución está usando launchd para mantener una conexión ssh abierta todo el tiempo. Usé esta publicación de blog para crear mi propia solución:
http://chris.improbable.org/2008/05/21/mac-quickie-tunnel-your-traffic-using-openssh-and/
Si actualiza su pregunta, probablemente podría ayudarlo a resolver la suya, nuevamente, esta es una solución dedicada no "a pedido".
Como alternativa a esto, puede mirar como SSH Tunnel Manager o el TunnelBlick mencionado anteriormente para iniciar túneles manualmente.