ssh inoltra più porte


9

Quindi questo funziona per me:

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

Che ne dite se vorrei includere anche più porte?

Voglio inoltrare non solo 8080, ma anche 8443, 8923 e 8181?

Devo effettuare una nuova connessione per ciascuna porta?

Risposte:


19

No, non è necessaria una connessione per porta inoltrata, è sufficiente aggiungere ulteriori -Listruzioni:

ssh -L LPort1:RHOST1:RPORT1 -L LPORT2:RHOST2:RPORT2 me@ju.mp.ho.st

Questo può essere abbreviato ssh jump, usando "alias" jump, se imposti una sezione corrispondente nella tua in ~/.ssh/configquesto modo:

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

Ho usato questa tecnica per molti anni, sicuramente già con oltre 10 porte, ma quando ho bisogno di più porte inoltrate, utilizzo il supporto Dynamic Socks Proxy -D.


1
Durante la connessione, vedrei questi messaggi di errore per ciascuna porta inoltrata: bind: Address already in use channel_setup_fwd_listener_tcpip: cannot listen to port:quindi Could not request local forwarding.Con le impostazioni Control *, queste sono sparite, grazie! PS: Ho usato molto quel flag di commento su SE, e tu sei la prima altra persona che ho visto anche usarlo.
Apprezzo
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.