O comando deve ser
osx_host$ ssh -fNL 9922:remote_server_on_vpn:22 ubuntu_vm
osx_host$ ssh localhost -p 9922
Lembre-se de terminar as conexões existentes.
Eu tenho uma VM Ubuntu conectada a uma VPN (usando o OpenConnect no Ubuntu), e quero SSH do meu host OS X para a VPN através do Ubuntu:
(osx_host) --ssh--> (ubuntu_vm) --ssh--> (remote_server_on_vpn)
Eu tentei usar o encaminhamento de porta SSH com os comandos abaixo para encaminhar a porta do Ubuntu 9922 para o porta do servidor remoto 22, de modo que o SSH'ing para a porta 9922 do Ubuntu se conectaria ao servidor remoto, mas estou obtendo resultados inesperados.
osx_host$ ssh -R 9922:remote_server_on_vpn:22 ubuntu_vm
osx_host$ ssh localhost -p 9922
ubuntu_vm$ ssh -L 9922:remote_server_on_vpn:22 localhost
osx_host$ ssh ubuntu_vm -p 9922
Mas estes só abrem um shell para o Ubuntu e não para o servidor remoto.
ubuntu_vm$ ssh -D localhost:9922 remote_server_on_vpn
osx_host$ ssh ubuntu_vm -p 9922
mas a conexão para a porta 9922 expira. Eu já verifiquei que meu /etc/ssh/sshd_config
contém AllowTcpForwarding yes
e reiniciei. O que estou fazendo errado?
O comando deve ser
osx_host$ ssh -fNL 9922:remote_server_on_vpn:22 ubuntu_vm
osx_host$ ssh localhost -p 9922
Lembre-se de terminar as conexões existentes.