ssh encaminhar várias portas

9

Então, isso funciona para mim:

ssh -v -L 8080:remotewebserver:8080 me@jumphost

E se eu também quiser incluir mais portas?

Quero encaminhar não apenas 8080, mas também 8443, 8923 e 8181?

Preciso fazer uma nova conexão para cada porta?

devnull
fonte

Respostas:

19

Não, você não precisa de uma conexão por porta encaminhada, basta adicionar mais -Linstruções:

ssh -L LPort1:RHOST1:RPORT1 -L LPORT2:RHOST2:RPORT2 [email protected]

Isso pode ser reduzido para ssh jump, usando o "alias" jump, se você configurar uma seção correspondente da ~/.ssh/configseguinte maneira:

Host jump
    User myUserName
    Hostname ju.mp.ho.st
    Port 2345
    LocalForward 8080 remotewebserver:8080
    LocalForward 8443 remotewebserver:8443
    LocalForward 8923 remotewebserver:8923
    LocalForward 8181 remotewebserver:8181

# Eliminates reconnection delay, and does not try to re-forward ports:
Host *
  ControlMaster auto
  ControlPath /tmp/%r@%h:%p

Eu uso essa técnica há muitos anos, certamente já com mais de 10 portas, mas quando preciso de mais portas encaminhadas, uso o suporte ao Dynamic Socks Proxy -D.

Alex Stragies
fonte
1
Ao ligar, eu iria ver essas mensagens de erro para cada porta encaminhada: bind: Address already in use channel_setup_fwd_listener_tcpip: cannot listen to port:em seguida, Could not request local forwarding.com o controle * configurações, estes se foram, obrigado! PS: Eu tenho usado muito esse sinalizador de comentários no SE, e você é a primeira pessoa que eu também vi. Aprecio que :) #
18719 Dan Dascalescu 04/04/19