Cómo deshabilitar temporalmente los reenvíos locales

13

Tengo en mi ~/.ssh/configarchivo entradas con definiciones locales como

HOST myServer
   hostname 10.10.0.1
   user xyz
   LocalForward 8080 localhost:80
   LocalForward 4000 127.0.0.1:4000
   ...

Esto funciona de maravilla, pero también tengo scripts para sincronizar algunos datos.
Estas secuencias de comandos muestran muchas advertencias cuando intentan conectarse al servidor mientras ya hay una conexión.

bind: Address already in use
channel_setup_fwd_listener_tcpip: cannot listen to port: 8080
bind: Address already in use
channel_setup_fwd_listener_tcpip: cannot listen to port: 4000
....

¿Hay una forma ordenada de usar ssho rsynccon una opción para deshabilitar todos los reenvíos locales para una sesión?

Obviamente, podría copiar y pegar cada bloque de configuración y construir uno con uno sin reenvíos locales, pero espero que haya una mejor solución.

jeb
fuente

Respuestas:

14

Hay una ClearAllForwardingsopción en ssh_config, que hace exactamente lo que necesita:

ClearAllForwardings

Especifica que se borren todos los reenvíos de puertos locales, remotos y dinámicos especificados en los archivos de configuración o en la línea de comandos. Esta opción es principalmente útil cuando se usa desde la línea de comandos ssh (1) para borrar los reenvíos de puertos establecidos en los archivos de configuración, y se configura automáticamente mediante scp (1) y sftp (1). El argumento debe ser sí o no (el valor predeterminado).

Puede usarlo como una opción de línea de comandos:

ssh -o ClearAllForwardings=yes host
Jakuje
fuente
Perfecto - pensé que había leído la documentación con suficiente cuidado
jeb
2
En caso de que alguien necesite esto con git:GIT_SSH_COMMAND="/usr/bin/ssh -o ClearAllForwardings=yes"
user1338062
Definitivamente no RemoteForward=no, que es el tipo de cosas que estaba buscando cuando buscaba la misma respuesta.
DouglasDD
Esto también suprime el mensaje Warning: remote port forwarding failed for listen port XYZcuando ya hay una conexión.
Jan
1
@wbkang seguro. Corregido ahora. Lo siento, probablemente fue un error tipográfico.
Jakuje