Guida al comando ssh

SSH

In questo post introdurremo il protocollo ssh, andremo a vedere come utilizzarlo con il programma “openssh”, nella nostra distribuzione di Linux.

COS'É SSH?
Ssh, Secure SHell, è un protocollo di rete che usa connessioni criptate per la comunicazione

tra due dispositivi, di solito un client e un server, e tutto quanto avviene tramite la nostra amata riga di comando, semplicemente ci connetteremo ad un altro computer utilizzando il nostro.
Non andremo nel dettaglio della sua implementazione, ma mostreremo come utilizzare questo potentissimo strumento.

INSTALLIAMO SSH
Nei sistemi operativi Linux abbiamo già preinstallato il comando ssh, ma nel caso che non ci sia ancora, installeremo la versione open source, sia per il lato client che per il lato server lanciando il seguente comando:

sudo apt-get install openssh-client openssh-server

CONFIGURAZIONE SSH
Prima di utilizzarlo, se vogliamo, possiamo modificare il file di configurazione, quindi ora vi mostreremo alcune sue righe.
Per modificarlo dobbiamo avere i permessi di root, quindi apriamolo lanciando il seguente comando:

sudo gedit /etc/ssh/sshd_config

Di seguito osserviamo alcune righe del file:

Port 22: vuol dire che la connessione con il protocollo ssh avviene sulla porta 22 (questo numero è di default).

PermitRootLogin no: qui impostiamo il valore su no, così per sicurezza non permettiamo di accedere con l'account root.

PermitEmptyPasswords no: imponiamo che l'accesso non può essere effettuato se non si inseriscono sia nome utente che password.

Protocol 2: assicuriamoci che questa riga contenga il valore 2 che è più sicuro del valore 1.

AllowUsers user1 user2: indichiamo che l'accesso al server, tramite ssh, può essere effettuato solo tramite gli utenti da noi indicati.

AllowGroups group1 group2: questa e simile alla riga descritta precedentemente, con l'unica differenza che vengono specificati i gruppi e non gli utenti.

Nel caso in cui abbiamo modificato il file di configurazione, per mantenere le nuove opzioni, digitiamo il seguente comando:

sudo service ssh restart

PROVIAMO SSH
Se noi digitiamo ssh, sul nostro terminale verrà visualizzato il seguente output:


Schermata da 2014-10-14 22_04_02


Supponiamo di avere il computer A ( utilizzato da noi come client per connetterci al server), il computer B (che sarà appunto il nostro server) ed infine supponiamo che le due macchine siano collegate alla stessa rete.

Come prima cosa andiamo a prendere dal computer B il suo indirizzo ip, ad esempio supponiamo sia 192.168.1.50, e prendiamo il nome dell'account che vogliamo utilizzare sul pc, ad esempio “pippo” (che ovviamente nel file di configurazione dovrà essere abilitato alla riga AllowUsers, oppure tale riga dovrà essere commentata con '#'), allora digitiamo dal computer A il seguente comando:

ssh pippo@192.168.1.50

ci verrà chiesta la password dell'account pippo, e una volta immessa saremo dentro il computer B!
Fantastico non trovate?

Ma poniamoci questa domanda: è possibile connettersi anche se la macchina che funziona da server non si trova nella nostra rete?? Certo che è possibile!! Il procedimento è lo stesso ma con due cose differenti: la prima è che bisogna prendere l'indirizzo pubblico della macchina e la seconda è che bisogna aprire la porta del modem, che utilizza ssh, per l'accesso esterno alla macchina.

Come fare questi due passaggi? Beh, per il primo basta andare su internet e si trovano moltissimi servizi che mostrano l'indirizzo ip pubblico di un computer, (da notare però che se l'indirizzo ip non è statico, potrebbe cambiare e quindi non riusciremo a connetterci con ssh), mentre per il secondo passaggio bisogna entrare nel pannello di configurazione del proprio modem e abilitare la porta 22, o la porta scelta per ssh, all'accesso esterno.

CONCLUSIONI
Se volete utilizzare ssh anche dall'esterno è saggio utilizzare una password molto efficace per evitare che qualche vecchia volpe entri nel vostro server, per il resto penso sia uno strumento tanto potente quanto utile! Beh ora non vi resta che testare questo comando e divertirvi!!

 

Fonti:
- Debian configurazione openssh;
- Configurare ssh;
- Secure shell wikipedia;
- Immagini dell'autore e da google immagini

 

Dottore in Informatica. Da sempre appassionato di Linux, reti informatiche, sicurezza e, in modo amatoriale, all'elettronica. Il mio intento è quello di trasmettere le mie conoscenze ad altri appassionati.

Lascia un commento