Eu tenho três dispositivos, school
, home
e portable
. Eu vou referir-se a eles como S, H e P. Eu quero poder usar P para executar o comando e buscar arquivos em H através da Internet, mas home
não tem ip público.
Agora, o S tem um ip público, ssh e uma porta exposta 22. Eu posso fazer um túnel para S de qualquer lugar. No entanto, quando eu corro
ssh -R 53469:localhost:22 school
em casa (53469 é apenas uma porta não usada aleatoriamente) e, em seguida,
ssh school -p 53469
Não consigo me conectar: somente a porta 22 é exposta na escola.
Então o que acabei fazendo foi uma espécie de túnel duplo, usando a escola como um ponto de encontro. Em casa, eu corri o comando de tunelamento reverso acima. Então eu usei o portátil para o túnel para a escola e, em seguida, o túnel para casa via localhost:53469
. Então essa coisa estranha acontece:
Após a execução (em portáteis)
ssh school -p 22
e depois
ssh localhost -p 53469
na sessão de túnel, acabo de volta à escola.
Pressionando Ctrl + D pela primeira vez, me leva de volta para casa (que é onde eu quero estar). A segunda vez me leva de novo à escola. A terceira vez me retorna ao portátil.
O que está acontecendo aqui? Estou executando algum tipo de script que me canaliza para o terceiro tempo extra?
Estas são as informações de lsb_release
:
Página inicial
me@home:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.10
Release: 16.10
Codename: yakkety
Escola
me@school:~>lsb_release -a
LSB Version: core-5.0-amd64:core-5.0-noarch:desktop-5.0-amd64:desktop-5.0-noarch:imaging-5.0-amd64:imaging-5.0-noarch:languages-5.0-amd64:languages-5.0-noarch
Distributor ID: openSUSE project
Description: openSUSE Leap 42.3
Release: 42.3
Codename: n/a
Tags ssh