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

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

Minha situação: quero depurar remotamente meu aplicativo c++ com gdbserver e eclipse. O Eclipse está sendo executado na minha estação de trabalho local (na rede 192.168.0.0) e o gdbserver está sendo executado em uma máquina cluster na rede 10.0.0.0. Tenho acesso ssh à máquina cluster por meio de uma máquina que está nas duas redes.

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

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

Responder1

Acredito que você já possa usar 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 o gdbserver é executado e portnum é a porta na qual ele escuta. SSH para gatewaymachine e conecte seu aplicativo ao host local, porta 12080. Por exemplo, se este for um aplicativo da web

http://localhost:12080

Se não estiver usando um aplicativo da web, você precisará configurar suas informações de conexão para refletir que você 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 parâmetros de comando ssh:

ssh -L 12080:remote_ip:portnum gatewaymachine

(altere 12080 para qualquer porta desejada acima de 1024; abaixo de 1024 e você precisará de acesso root para vincular-se à porta)

Responder2

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

informação relacionada