Un tunnel SSH è un percorso cifrato che trasporta altro traffico di rete all'interno di una sessione SSH. In pratica, è una forma di inoltro di porta: una porta su un sistema locale o remoto viene mappata attraverso la connessione SSH sicura verso un servizio di destinazione, come un database, un pannello di amministrazione o un'app web interna. Le modalità più comuni includono l'inoltro locale, l'inoltro remoto e l'inoltro dinamico, che consentono di reindirizzare il traffico in direzioni diverse o verso più destinazioni.
I tunnel SSH sono importanti perché riducono l'esposizione evitando la pubblicazione diretta dei servizi interni. Sono ampiamente usati per l'amministrazione, i test e l'accesso temporaneo. I difensori dovrebbero comunque considerarli un confine di privilegi: un tunnel può creare un percorso nascosto che aggira i normali percorsi di rete, rendendo più importanti registrazione, revisione e controllo degli accessi. Negli attacchi, il tunneling SSH può essere usato per pivotare nelle reti interne o per far transitare il traffico attraverso una sessione SSH autorizzata. Una buona pratica è consentire i tunnel solo quando necessario, collegarli a utenti e finalità approvati e monitorarli come qualsiasi altro percorso di accesso sensibile.


