Che cos’è SSH e a cosa serve?
Secure Shell (SSH) è un protocollo di rete crittografico che consente la comunicazione sicura su una rete non sicura. Il protocollo è stato sviluppato per sostituire i vecchi protocolli non sicuri, aumentando la sicurezza e la privacy su tutti i sistemi operativi.
Allora, cos’è SSH?
Cos’è SSH?
SSH sta per Secure Shell ed è anche noto come Secure Socket Shell.
SSH è un protocollo di comunicazione di rete sicuro. Il protocollo viene utilizzato principalmente dagli amministratori di rete per connettersi a dispositivi remoti in modo sicuro, ma SSH ha tutta una serie di funzionalità comuni.
Prima dello sviluppo di SSH, utenti e amministratori utilizzavano protocolli di rete non sicuri, come Telnet, per comunicare con i dispositivi remoti. Questi protocolli ormai obsoleti inviano informazioni critiche come password e informazioni di accesso in testo non crittografato, rendendoli un facile bersaglio per un aggressore.
SSH normalmente comunica sulla porta 22.
SSH1 vs SSH2: qual è la differenza?
Esistono “due” versioni di SSH. Diciamo “due” perché tra queste due versioni c’erano molte implementazioni e aggiornamenti che portavano da SSH1 a SSH2.
Come ci si potrebbe aspettare, SSH2 è il protocollo più sicuro. Fornisce una migliore protezione contro aggressori e intercettatori, supporta algoritmi di crittografia più potenti e apporta un sacco di miglioramenti generali rispetto al protocollo SSH originale.
Cos’è OpenSSH?
OpenSSH è un’implementazione open source di SSH ampiamente utilizzata. La versione originale gratuita di SSH è stata sviluppata da Tatu Ylönen. Le versioni successive del lavoro di Ylönen erano proprietarie, il che significa che costavano denaro per la licenza e l’uso e non era possibile apportare modifiche non autorizzate al protocollo.
Pertanto, un team di sviluppatori ha biforcato la versione gratuita originale di SSH e l’ha chiamata OpenSSH, che ora è sviluppata come parte di OpenBSD (un sistema operativo open source). Tutti i principali sistemi operativi, come Windows, macOS e le numerose distribuzioni Linux, supportano OpenSSH.
Come funziona SSH?
Per capire come funziona SSH, devi capire due cose.
Innanzitutto, cos’è una shell? Secondo, come funziona la crittografia a chiave pubblica? Scopriamo cos’è in realtà una shell prima di considerare i dettagli di una connessione SSH.
Cos’è una Shell?
Una shell è un software che ti consente di comunicare con il sistema operativo su cui è ospitato. In genere, si utilizzano i comandi per interagire con la shell, sebbene esistano interfacce utente grafiche (GUI).
Una cosa importante da sapere è che non devi essere seduto al computer per usare una shell. È possibile utilizzare una shell in remoto tramite una connessione di rete utilizzando, come avete indovinato, SSH.
Che cos’è la crittografia a chiave pubblica?
Nell’elaborazione moderna, esistono due tipi di crittografia primari:
- Algoritmo simmetrico: utilizza la stessa chiave sia per la crittografia che per la decrittografia. Entrambe le parti devono concordare la chiave dell’algoritmo prima di iniziare la comunicazione.
- Algoritmo asimmetrico: utilizza due chiavi diverse: una chiave pubblica e una chiave privata. Ciò consente la crittografia sicura durante la comunicazione senza stabilire in precedenza un algoritmo reciproco.
SSH è un tipo di crittografia a chiave pubblica, che utilizza entrambi i tipi di crittografia sopra per creare una connessione sicura.
SSH utilizza entrambi i tipi di crittografia di cui sopra per creare una connessione sicura in un modello client-server. Quando il client tenta di creare una connessione con il server, ciascuna parte comunica i propri protocolli di crittografia.
Dopo aver stabilito un protocollo di crittografia corrispondente, il client e il server utilizzano l’algoritmo di scambio di chiavi Diffie-Hellman per arrivare a una chiave di crittografia condivisa come parte di un algoritmo simmetrico. Questa chiave di crittografia rimane segreta per l’intera connessione e viene utilizzata per crittografare tutte le comunicazioni tra le due parti.
Allora, da dove viene la funzione di crittografia asimmetrica?
Nella crittografia a chiave pubblica, hai due chiavi: una chiave pubblica e una chiave privata . Puoi inviare la chiave pubblica ad altre persone, mentre il proprietario conosce solo la chiave privata. Insieme formano una coppia.
Prima che avvenga lo scambio di chiavi simmetriche e si stabilisca il canale di comunicazione sicuro, SSH utilizza la crittografia asimmetrica per creare una coppia di chiavi temporanea. Il client e il server si scambiano le chiavi pubbliche, convalidandosi a vicenda prima che inizi il processo di creazione della chiave simmetrica.
Quale algoritmo di crittografia utilizza SSH?
Poiché SSH utilizza la crittografia simmetrica per proteggere la connessione, è possibile configurare SSH per utilizzare un’ampia gamma di algoritmi di crittografia simmetrica, inclusi AES, Blowfish, Twofish, Salsa20 / ChaCha20, 3DES, IDEA e altri.
Correlati: tipi di crittografia comuni e perché non dovresti crearne uno tuo
SSH è uguale a SSL / TLS?
Sebbene sia SSH che SSL / TLS forniscano protezione per un protocollo di rete precedentemente non sicuro, SSH e SSL / TLS non sono la stessa cosa.
Il Secure Sockets Layer (SSL) e il suo successore, Transport Layer Security (TLS), forniscono un tunnel di comunicazione crittografato. Usi TLS ogni giorno quando invii email o navighi sul web. SSL e TLS sono protocolli a livello di applicazione. Nelle reti di comunicazione Internet, il livello dell’applicazione standardizza le comunicazioni per i servizi per l’utente finale.
Sebbene sia SSL / TLS che SSH forniscano la crittografia, i protocolli di rete stessi sono progettati per cose diverse. SSL / TLS è progettato per proteggere la connessione dati, mentre SSH è progettato per consentire l’accesso remoto sicuro e l’esecuzione dei comandi.
Tuttavia, è possibile utilizzare SSH insieme a SSL per trasferire file, utilizzando SSH File Transfer Protocol (SFTP) o Secure Copy Protocol (SCP). Per inciso, l’uso di SCP è solo un modo per copiare i dati dal tuo PC a un Raspberry Pi .
SSH è uguale a una VPN?
Come la domanda precedente, anche una rete privata virtuale (VPN) fornisce un tunnel crittografato per la tua comunicazione. Ma dove SSH fornisce una connessione sicura in una configurazione client-server a un computer specifico, una VPN fornisce una connessione sicura tra il tuo computer e il server VPN.
Non stai eseguendo comandi remoti sul server VPN. Piuttosto, quando accendi la tua VPN, le trasmissioni di dati da e verso il tuo computer viaggiano attraverso il tunnel crittografato fino al server VPN prima di “ricongiungersi” a Internet.
Quindi, SSH consente una connessione sicura a un singolo computer per eseguire comandi remoti, mentre una VPN abilita un tunnel crittografato tra il tuo computer e il server VPN.
Questo processo può oscurare la posizione del computer e fornire una protezione aggiuntiva durante l’utilizzo di una connessione Internet. Voglio sapere di più? Ecco come una VPN può proteggere la tua privacy .
Su quali piattaforme è disponibile SSH?
Finché il sistema operativo scelto ha un client SSH o una funzionalità SSH integrata, il protocollo di rete sicuro è disponibile.
Ad esempio, puoi seguire la nostra guida per principianti a SSH su Linux o controllare quanto è facile usare SSH in Windows 10 .
SSH è qui per restare
Secure Shell non sta andando da nessuna parte. SSH fornisce un protocollo di rete sicuro e facile da usare che è liberamente disponibile per qualsiasi utente. Funziona su ogni piattaforma e si trova a livello globale. Ora che hai letto questa breve guida a SSH, sei molto più preparato a usarlo in futuro.