SSH túnel reverso werdness: um túnel extra

1

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
    
por Cedar 09.09.2017 / 14:57

0 respostas

Tags