Cos’è il protocollo SSH?
I vantaggi del Secure Shell e il suo valore spiegati semplicemente.
SSH sta per Secure Shell ed è un modo sicuro per trasferire file dal tuo computer a un server.
Facciamo un passo indietro e ripercorriamo la storia di SSH. Prima di SSH, non esisteva un modo sicuro per connettersi a computer remoti. Il solo riuscire a connettere due computer distanti tra loro fu una gran bella invenzione. L’unico problema era la mancanza di sicurezza tra i due computer.
Vedila in questo modo: hai un documento importante che desideri condividere con un tuo collega. Mentre condividi il tuo documento con lui, chiunque può accedere al documento e leggerlo. Riportando questo esempio all’era di internet, chiunque si trovi online può leggere e intercettare i dati che stai inviando al tuo collega.
Telnet – il predecessore di SSH
Telnet è un insieme di protocolli e regole che si applicano quando, da remoto, si accede a un altro computer, assumendone il controllo e potendo apportare modifiche senza trovarsi nelle sue vicinanze. Il problema con Telnet sono le minacce legate alla sicurezza. Nel 1995, il fondatore di SSH decise di migliorare il software di Telnet e di sostituirlo con un modo molto più sicuro per accedere ai computer da remoto, assicurandosi che le influenze esterne non potessero intercettare i dati. Questo nuovo software fu stato chiamato SSH. Il protocollo SSH consente agli utenti di assumere il controllo dei propri server remoti senza rischi per la sicurezza.
La sicurezza del protocollo SSH
Torniamo alla nostra metafora per spiegare il funzionamento di SSH.
Quando volevi inviare un documento a un tuo collega, mettevi il documento in una scatola e la chiudevi a chiave. Dopo aver consegnato la scatola al tuo collega, per esempio tramite il servizio postale, il tuo collega avrebbe messo il proprio lucchetto alla scatola e te l’avrebbe rispedita.
Dopo aver ricevuto nuovamente la scatola, avresti dovuto rimuovere il tuo lucchetto, rispedendola al tuo collega con solamente il suo lucchetto ancora intatto.
In questo modo, avrebbe usato la chiave in suo possesso, aperto la scatola e letto il contenuto del documento senza che nessuno lo potesse intercettare.
Questo processo sembrerebbe piuttosto scomodo, tuttavia fortunatamente, il procedimento tecnico vero e proprio è semplicissimo. Tecnicamente, tutto ciò che devi fare è autenticare l’utente remoto, operazione che richiede meno di un secondo.
Cosa fa SSH: come funziona il protocollo SSH?
SSH utilizza connessioni diverse, come la connessione TCP (Transmission Control Protocol), quando si connette a un server (o un computer). Una connessione TCP viene utilizzata da SSH come protocollo di trasporto di rete affidabile. Una volta stabilita la connessione, SSH invia i dati sotto forma di pacchetti, caricati con le suddette informazioni di dati. A parte la lunghezza del pacchetto – perché abbiamo bisogno di sapere quanti dati stiamo per ricevere – tutte le informazioni in esso contenute sono crittografate. Il codice di autenticazione del messaggio all’interno del pacchetto è un codice deciso dal server e dal client.
Alla ricezione, il pacchetto viene decrittografato dal server.
In questo modo, puoi accedere a un computer tramite una rete non protetta come Internet, perché l’SSH funziona crittografando i tuoi pacchetti di dati e non la connessione tra i due computer.
La connessione Secure Shell
La connessione SSH viene avviata dal client che si connette al server SSH. Una volta avviata e connesso il computer al server, si aprirà un canale. Attraverso il canale puoi comunicare e controllare i dati. In qualità di client, è possibile aprire diversi canali o connessioni e quindi abilitare più connessioni multiplex.
Multiplexing di connessioni/canali SSH
Vuoi lavorare con più connessioni shell sicure su una connessione TCP? Il multiplexing delle connessioni SSH consente questa opzione che può, se usata correttamente, velocizzare le operazioni di SSH. Inoltre, può migliorare altri aspetti di SSH, come l’esecuzione più veloce dei comandi.
Vediamo ora una guida dettagliata del processo di creazione di una connessione o di un canale con SSH.
- Dopo esserti connesso al server, il server ti restituirà un messaggio simile a “Supporto questa versione di SSH”, riferendosi al tuo computer e all’utilizzo di SSH.
- Scambierai informazioni con il server in merito alla tua compatibilità e alla compatibilità del server.
- Condividerai le informazioni relative al metodo che entrambi utilizzerete per inviarvi dati e messaggi crittografati. In sostanza, negozierai i parametri con il server e, una volta stabiliti, eseguirai l’autenticazione.
- Digiterai la tua password e il server ti riconoscerà. Una volta completata l’autenticazione, il server creerà un canale e avrai una connessione Secure Shell.
Chiave SSH
SSH utilizza tre tecniche. A seguire troverai una breve spiegazione per comprendere al meglio il funzionamento di SSH.
Crittografia simmetrica
La crittografia simmetrica utilizza una chiave sia per la crittografia che per la decrittografia. Inoltre, chiunque abbia accesso alla chiave, ha accesso anche al messaggio che viene trasferito.
Un algoritmo per lo scambio delle chiavi esegue il processo di crittografia simmetrica. Se un’altra macchina ottiene l’accesso alla chiave, non sarà comunque in grado di decrittografare il messaggio poiché non è a conoscenza dell’algoritmo di scambio della chiave. Questo perché i due computer (host e client) modificano i dati condivisi e calcolano la chiave segreta.
Crittografia asimmetrica
La crittografia asimmetrica utilizza due chiavi SSH. Chiave privata e pubblica. La forza della chiave privata risiede nella privacy della chiave e nel fatto che non deve mai essere rivelata. Questo perché solo la chiave privata può decrittografare i messaggi crittografati utilizzando la chiave pubblica. Queste due chiavi funzionano insieme. Una volta stabilita la connessione, il server utilizzerà la chiave pubblica per confermare l’autenticazione. Se il client può decrittografare il messaggio, significa che detiene la chiave privata. Purtroppo, la sessione SSH può iniziare.
Funzione hash
Puoi pensare all’algoritmo di hash come a un codice a barre. Gli ultimi numeri su un codice a barre sono determinati da tutti gli altri numeri del codice a barre, la stessa logica si applica alla funzione hash. Ciò significa che se si modifica uno dei numeri del codice a barre, cambieranno anche gli ultimi numeri.La funzione hash si comporta in questo modo per l’intero file che desideri trasferire. L’algoritmo di hash ti fornirà un lungo numero (esadecimale) che è conforme a tutto ciò che è sul file. È un modo per verificare che il file sia intatto e includa tutto ciò che dice di fare.
La differenza tra la funzione hash e le altre due alternative di crittografia è che non è possibile invertire la funzione hash; non è pensata per essere decrittografata.
SSH utilizza la funzione hash per verificare l’autenticità dei messaggi, assicurando che i messaggi non possano essere intercettati e manomessi.
Se hai un documento che desideri inviare e su cui c’è scritto il tuo nome, la funzione hash passerà attraverso il canale insieme al file per verificare che sia effettivamente il documento reale.
SSH su one.com
SSH implementa un potente algoritmo di crittografia per garantire la sicurezza della comunicazione tra le parti.
Se hai un pacchetto Professional (o superiore) con noi, puoi abilitare facilmente SSH dal tuo pannello di controllo di One.com. A differenza degli utenti Mac e Linux a cui basta semplicemente utilizzare i propri terminali, gli utenti Windows devono installare un client SSH dedicato. Il freeware PuTTY è generalmente considerato la scelta migliore.
Costruisci il tuo sito web con un web hosting ultra veloce
Trasforma il tuo sogno in un successo. Ospita il tuo sito su server veloci, sicuri e affidabili.
Inizia ora- Server SSD ad alte prestazioni
- Pannello di controllo facile da usare
- Website Builder gratuito
- Certificato SSL gratuito
- Backup giornaliero
- Assistenza 24 ore su 24, 7 giorni su 7