Reverse o túnel ssh na configuração

9

Como posso estabelecer um túnel ssh reverso com meu arquivo ./ssh/config?

Estou tentando reproduzir este comando

ssh -R 55555:localhost:22 user@host

no meu arquivo .ssh / config para que quando eu digitar ssh host , eu ssh para o host como usuário e com um túnel reverso. Os comandos aceitos pelo arquivo de configuração são contrapartes mais detalhadas dos sinalizadores de linha de comando. Com base na página man do ssh e na página manp do ssh_config, parece que a configuração correspondente é BindAddress.

No meu arquivo .ssh / config eu tenho:

Host host
     Hostname host
     User user
     BindAddress 55555:localhost:22

Isso e pequenas variações resultam em uma conexão recusada quando tento

ssh localhost -p 55555

uma vez logado no host. O mesmo funciona bem se eu explicitamente der o comando no topo quando primeiro sshing para o host. Meu arquivo de configuração funciona sem o comando reverse tunnel; ssh host me registra no host como usuário.

    
por Praxeolitic 14.10.2014 / 20:58

1 resposta

19

BindAddress não é a opção desejada. De man ssh_config :

BindAddress
         Use the specified address on the local machine as the source
         address of the connection.  Only useful on systems with more than
         one address.

O equivalente do arquivo de configuração de -R é RemoteForward :

RemoteForward
         Specifies that a TCP port on the remote machine be forwarded over
         the secure channel to the specified host and port from the local
         machine.  The first argument must be [bind_address:]port and the
         second argument must be host:hostport. [...]

Com esta informação, a linha de comando

ssh -R 55555:localhost:22 user@host

traduz a seguinte sintaxe .ssh/config :

Host host
HostName host
User user
RemoteForward 55555 localhost:22
    
por 14.10.2014 / 22:36