SSH come dice il nome è una shell sicura. Infatti se per collegarsi a un computer remoto si utilizza una normale shell i dati fra il computer e la macchina a distanza, i dati viaggiano in chiaro perciò chiunque durante la tratta potrebbe intercettarli e magari carpire username e password.
Invece con SSH i dati passano cifrati. La codifica dei dati diminuisce il carico utile di ogni pacchetto per cui ci sarà uno spreco di banda, ma quando la sicurezza è importante è opportuno affidarsi alla shell sicura.
SSH è inserito in molti sistemi operativi: GNU/Linux, Mac OS X, Solaris, OpenBSB, FreeBSD.
Per sistemi Windows è necessario ricorrere a un programma di terze parti (PuTTy).
SSH è anche un protocollo che possiede le sue specifiche per avere una connessione sicura.
Ha 3 fasi: autenticazione, cifratura e controllo dell’integrità.
Come protocollo SSH fornisce ai suoi utilizzatori alcune caratteristiche: tutela la privacy (attraverso la cifratura), garantisce l’integrità, controlla l’autenticazione, concede autorizzazioni, gestisce il tunneling.
La riservatezza dei dati viene attuata usando un flusso cifrato di dati tra le macchine che colloquiano; il protocollo usa gli algoritmi di cifratura: AES, ARCFOUR, Blowfish, Twofish, IDEA, DES, e triple-DES (3DES). Adoperado i loro cifratori si possono scongiurare attacchi di sniffing o intercettazione dei dati da parte di qualcun’altro.
Il controllo sull’integrità si basa su algoritmi come MD5 e SHA1 per fare il controllo degli errori o riscontrare delle alterazione dei dati.
L’autenticazione avviene in due fasi: nel momento in cui il client si connette all’host e controlla che la chiave pubblica salvata sul computer locale sia quella del host remoto, mentre la seconda fase prevede che il computer lontano controlli se l’utente con il quale ci si vuole accreditare esiste e che la password immessa sia corretta.
L’autorizzazione concessa così come i privilegi sono esattamente quelli assegnati all’utente autenticato. Per esempio se ci si collega come utente “semplice” non si portanno modificare i file dell’utente root.
Si possono usare ben tre tecniche di tunneling: TCP port forwarding, X forwarding, Agent forwarding.
Collegarsi a un host remoto
Con il comando:
$ ssh -l marie host.example.com
oppure
$ ssh marie@host.example.com
si può stabilire una connessione al computer remoto richiedendo l’account marie.
Se è la prima volta che ci si connette al server verrà inviata la chiave pubblica del server, la quale sarà memorizzata tra i file di configurazione usati da ssh.
The authenticity of host ‘host.example.com (192.168.1.3)’ can’t be established.
RSA key fingerprint is 78:12:b8:b1:2b:ec:40:2e:71:1f:94:b9:8c:e4:ca:3f.
Are you sure you want to continue connecting (yes/no)?
Rispondendo yes, si memorizzerà la chiave e verrà mostrato un messaggio:
Warning: Permanently added ‘host.example.com (192.168.1.3)’ (RSA) to the list of known hosts.
Apparirà poi la richesta della password associata a marie.
marie’s password: ******
Last login: Ven Nov 16 11:12:47 2007 from host.locale.org
You have new mail.
host.example.com>
Spostare file in modo sicuro
Per trasferire dei file in modo sicuro dal computer locale a quello remoto si può adoperare il comando:
$ scp nomefile marie@host.example.com:
Il file nomefile verrà spedito al computer remoto host.example.com usando l’account marie.
Port Forwarding o tunneling
La tecnica dell’inoltro della porta o tunneling consente di forzare una connessione TCP/IP a passare attraverso SSH in modo cifrato.
Per esempio, se si ha bisogno di collegarsi a una porta chiusa presso il computer remoto, il quale però accetta connessioni SSH, si può creare un tunnel da una porta locale alla porta remota desiderata.
$ ssh -L 3332:localhost:110 host.example.com
La porta locale è 3332 mentre la porta remota che si vorrebbe contattare e host.example.com è il computer remoto. Per poter collegarsi al server pop (porta 110) è necessario configurare il client di posta elettronica affinche scarichi i messaggi usando la porta 3332 e collegandosi a localhost (non all’host remoto).
Lascia un commento