SSH RemoteForward notificar falha do cliente

4

Estou usando o SSH para encaminhar uma porta em uma máquina remota (Cliente) para outra máquina (Servidor) usando ( ~/.ssh/config )

Host Client:

Hostname {ip}
    ...
    RemoteForward localhost:{port} localhost:{port}

O problema é que, mesmo quando não há ninguém escutando no servidor, o cliente pode se conectar com êxito a localhost:port . A única indicação da falha é uma mensagem no servidor: connect_to localhost port {port}: failed.

Existe uma maneira de encaminhar esse erro para o cliente e encerrar a conexão?

    
por Albert 03.02.2013 / 09:51

1 resposta

2

Se o sshd não puder estabelecer a conexão especificada pelo LocalForward, sua conexão com a porta local será imediatamente encerrada. Seu sshd está se comportando mal se não fizer isso.

Veja o que acontece comigo:

Terminal 1:

dennis@lightning:~$ ssh -L 1111:localhost:1112 camel
Last login: Tue Jan 29 00:05:28 2013 from lightning.home.kaarsemaker.net
[dkaarsemaker@camel ~]$ channel 3: open failed: connect failed: Connection refused
channel 3: open failed: connect failed: Connection refused

As mensagens de erro são impressas sempre que tento conectar no terminal 2.

Terminal 2:

dennis@lightning:~$ telnet localhost 1111
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.

E vejo que li a pergunta errada, já que você usa um RemoteForward. Embora isso tenha um resultado semelhante para mim, desligue imediatamente:

dennis@lightning:~$ ssh -R 1111:localhost:1112 camel.ams6.corp.booking.com 
Last login: Sun Feb  3 11:43:07 2013 from lightning.home.kaarsemaker.net
[dkaarsemaker@camel ~]$ telnet localhost 1111
Trying 127.0.0.1...
connect_to localhost port 1112: failed.
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
Connection closed by foreign host.
    
por 03.02.2013 / 11:48