Perché non riesco a collegarmi a una porta del tunnel SSH inverso in remoto, anche con GatewayPorts abilitato?


20

Richiedo un accesso SSH costante a un host nel nostro dipartimento, il cui indirizzo IP è allocato dinamicamente. Ho impostato un tunnel SSH remoto dall'host di destinazione a uno dei nostri host che possiede un indirizzo IP statico:

ssh -f -N -g -R :22223:localhost:22 tunnelhost

Quando indico SSH verso la porta locale 22223sull'host del tunnel, il tunnel funziona bene. Il mio problema è che non riesco a far legare il tunnel a qualcosa di diverso da localhost, ad esempio quando provo a SSH da remoto tunnelhost:12323, non c'è una porta aperta per riceverlo. Ho anche provato:

ssh -f -N -R :22223:localhost:22 tunnelhost -o GatewayPorts=yes

Ma ancora niente fortuna. Netstat mi mostra:

[me@tunnel_host ~]$ netstat -an | grep 22223
tcp        0      0 127.0.0.1:22223         0.0.0.0:*               LISTEN
tcp6       0      0 ::1:22223               :::*                    LISTEN

Confermando che il tunnel è associato solo a localhost. Ho aggiunto un'eccezione di porta sull'host del tunnel, con firewalld-cmd, e mi sono assicurato che nessun hardware di rete interferisse con la connessione. Qualche idea su cosa potrebbe essere?

Saluti, James.

Risposte:


29

È necessario abilitare GatewayPorts=yesnella configurazione per SSHd ( /etc/ssh/sshd_config), non il client per abilitare l'associazione a interfacce diverse dal loopback su porte remote.

-o GatewayPorts=yes

Funziona solo per le porte locali quando viene passato al sshcomando.


Darth Android, grazie per la tua risposta. Sembra che tu abbia ragione su -g e -o GatewayPorts che funziona solo per tunnel oculari (-L). Per completezza, ecco qualche informazione in più su questo problema, nel caso in cui qualcuno lo incontri in futuro. bugs.debian.org/cgi-bin/bugreport.cgi?bug=228064
James Paul Turner,

3
GatewayPorts=clientspecifiedè un'impostazione un po 'più sicura, vedi askubuntu.com/questions/50064/reverse-port-tunnelling . In questo caso, è necessario l'indirizzo di bind vuoto (due punti finali in :22223:localhost:2).
Michael Goerz,

1
Direi che l' GatewayPorts=clientspecifiedimpostazione in sé non è più sicura, ma piuttosto consente un maggiore controllo su quali connessioni verranno associate ai caratteri jolly, invece di averle tutte associate ai caratteri jolly.
Nick,

Inoltre, riavvia sshd dopo aver modificato sshd_config (in caso di dimenticanza)
Nick

⚠️ Essere consapevoli del fatto che GatewayPorts=yesaprirà le porte inoltrate al mondo.
ccpizza,
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.