Un'interfaccia a linea di comando sicura è solo uno dei tanti modi in cui è possibile usare una SSH. Considerata la larghezza di banda, le sessioni X11 possono essere indirizzate tramite un canale SSH. Oppure, utilizzando il TCP/IP forwarding, le connessioni di porta un tempo non sicure tra sistemi diversi possono essere mappate su canali SSH specifici.
Aprire una sessione X11 tramite una connessione SSH stabilita è facile quanto avviare un programma X su un computer locale. Quando un programma X viene eseguito dalla shell, il client e il server SSH creano un nuovo canale sicuro e i dati del programma X vengono inviati tramite questo canale al vostro client.
L'inoltro X11 può essere molto utile. Per esempio, potete usarlo per creare una sessione interattiva e sicura con l'interfaccia grafica utente up2date sul server per aggiornare i pacchetti. Per farlo, connettetevi al server utilizzando ssh e digitate:
up2date & |
Vi viene richiesto di inserire la password di root per il server, comparirá subito dopo Red Hat Update Agent e permetterá all'utente remoto di aggiornare in modo, sicuro il sistema remoto.
Con SSH potete rendere sicuri i protocolli TCP/IP altrimenti insicuri mediante il port forwarding. Con questa tecnica, il server SSH diventa un passaggio cifrato al client SSH.
Il port forwarding consiste nel mappare una porta locale sul client verso una porta remota sul server. SSH vi permette di mappare qualsiasi porta dal server verso qualsiasi porta sul client. I numeri delle porte non devono essere uguali per funzionare.
Per creare un canale TCP/IP di port forwarding che attenda le connessioni sull'host locale, utilizzate il seguente comando:
ssh -L local-port:remote-hostname:remote-port username@hostname |
![]() | Nota Bene |
|---|---|
Per impostare il port forwarding e avviare servizi su porte inferiori alla 1024 è necessario l'accesso di root. |
Se per esempio desiderate controllare la vostra posta su un server chiamato mail.example.com utilizzando il protocollo POP tramite una connessione cifrata, potete usare il comando seguente:
ssh -L 1100:mail.example.com:110 mail.example.com |
Una volta impostato il canale per il port forwarding tra i due computer, potete indicare al vostro client di posta POP di usare la porta 1100 sull'host locale per controllare l'arrivo di nuova posta. Qualsiasi richiesta inviata alla porta 1100 sul vostro sistema sarà indirizzata in modo sicuro al server mail.example.com.
Se sul server mail.domain.com non è in esecuzione un demone server SSH, ma potete collegarvi tramite SSH a un computer della stessa rete, potete ancora utilizzare SSH per rendere sicura quella parte della connessione. È tuttavia necessario un comando leggermente diverso:
ssh -L 1100:mail.example.com:110 other.example.com |
In questo esempio, inviate la vostra richiesta POP dalla porta 1100 sul vostro computer, tramite la connessione SSH sulla porta 22 a other.example.com. A questo punto, other.domain.com si connette alla porta 1100 su mail.example.com per permettervi di controllare l'arrivo di nuova posta. Con questa tecnica, solo la connessione tra il vostro sistema e other.example.com è sicura.
Il port forwarding può risultare particolarmente utile per ricevere informazioni in modo sicuro tramite i firewall di rete. Se il firewall è configurato per consentire il traffico SSH tramite la porta standard (22), ma blocca l'accesso alle altre porte, una connessione tra due host che usano porte bloccate è comunque possibile se si reindirizza la comunicazione tramite una connessione SSH.
![]() | Nota Bene |
|---|---|
L'utilizzo del port forwarding per inoltrare connessioni in questo modo consente a qualsiasi utente sul sistema client di connettersi al servizio a cui state inviando le connessioni. Se il sistema client viene compromesso, anche le persone non autorizzate potranno accedere ai servizi inoltrati. Gli amministratori di sistema che si occupano del port forwarding possono disabilitare questa funzione sul server specificando il parametro No per la riga AllowTcpForwarding nel file /etc/ssh/sshd_config e riavviando il servizio sshd. |