Como configurar melhor um túnel ssh para acesso a uma rede remota (Linux)

7

Minha situação: Eu quero depurar remotamente meu aplicativo c ++ com gdbserver e eclipse. O Eclipse está em execução na estação de trabalho local (na rede 192.168.0.0) e o gdbserver está sendo executado em uma máquina de cluster na rede 10.0.0.0. Eu tenho acesso ssh ao clustermachine através de uma máquina que está em ambas as redes.

Como posso configurar um túnel para que meu eclipse possa acessar o gdbserver? Eu não tenho direitos de administrador / acesso root / sudo.

Todas as máquinas são linux / Unix com openssh.

    
por Peter Smit 09.07.2009 / 09:43

2 respostas

8

Eu confio que você já pode SSH para um sistema na rede privada remota (10.0.0.0). Se o seu sistema local estiver executando o openssh, adicione ao seu $HOME/.ssh/config :

Host gatewaymachine
  LocalForward 12080 remote_ip:portnum

Onde 'remote_ip' é o endereço IP do sistema clustermachine remoto onde gdbserver é executado e portnum é a porta que ele atende. SSH para gatewaymachine, em seguida, conecte seu aplicativo ao localhost, porta 12080. Por exemplo, se este for um aplicativo da web

http://localhost:12080

Se você não estiver usando um aplicativo da web, precisará configurar suas informações de conexão para refletir que está indo para a porta 'localhost' '12080' (ou qualquer porta que desejar, veja abaixo).

Em vez de editar sua configuração ssh, você também pode usar os parâmetros do comando ssh:

ssh -L 12080:remote_ip:portnum gatewaymachine

(altere 12080 para qualquer porta que você queira acima de 1024; abaixo de 1024 e você precisará de acesso root para ligar à porta)

    
por 09.07.2009 / 09:49
1

Basicamente, o que jtimberman disse :). Você pode querer olhar para autossh se você tiver problemas para manter seu túnel por longos períodos de tempo.

    
por 09.07.2009 / 21:34