Utilizando MacOS Catalina 10.15.4, parece que SSH no puede conectarse a localhost en un puerto diferente al predeterminado (22) . Estoy configurando un túnel SSH inverso, por lo que necesito utilizar un puerto distinto al 22. Desde un servidor Linux, ejecuto
work_user@work_machine $ ssh -R 5050:localhost:22 $home_user@$my_public_ip
Esto consigue que me registre en mi Mac de casa, y que añada -vvv
muestra que también consigue configurar el reenvío de puertos :
debug1: remote forward success for: listen 5050, connect localhost:22
Sin embargo, cuando quiero volver a conectarme al servidor Linux a través del túnel, no funciona ("Conexión rechazada"):
home_user@home_mac $ ssh -vvv -p 5050 $work_user@localhost
OpenSSH_8.1p1, LibreSSL 2.7.3
debug1: Reading configuration data /Users/home_user/.ssh/config
debug1: /Users/home_user/.ssh/config line 1: Applying options for *
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 47: Applying options for *
debug1: Connecting to localhost port 5050.
ssh: connect to host localhost port 5050: Connection refused
El /etc/ssh/ssh_config
no se ha modificado desde la instalación, es decir, la única configuración no comentada es SendEnv LANG LC_*
en Host *
. Mi ~/.ssh/config
sólo contiene
Host *
ForwardX11 yes
ServerAliveInterval 60
por lo que no debería importar.
Tenga en cuenta que ssh localhost
funciona, y que el procedimiento anterior solía funcionar bajo 10.15.3.
Pregunta: en MacOS 10.15.4, ¿cómo puedo hacer SSH a un túnel ya abierto con éxito en un puerto distinto al predeterminado?
Preguntas relacionadas y una entrada en el blog:
- Git se cuelga con un URI remoto ssh después de la actualización 10.15.4
- ¿Por qué no puedo hacer ssh usando un puerto diferente al 22 con MacOS 10.15.4?
- https://mjtsai.com/blog/2020/03/31/MacOS-10-15-4-broke-ssh/
Ambos mencionan que SSH parece estar roto en 10.15.4, y que usar la dirección IP en lugar del nombre de host es una solución.