Questo sito è tradotto automaticamente in più lingue con un software sviluppato da Kohei Koyanagi. Per maggiore accuratezza, fai riferimento alla versione originale in inglese .

Perché Splync Usa SSH — La Chiave Invisibile Dietro Server Sicuri

Cosa Fa Davvero SSH

Splync utilizza HTTPS per proteggere la connessione tra il tuo smartphone e il nostro server, ma dobbiamo anche proteggere il server stesso per garantire la sicurezza dei dati degli utenti. Gli sviluppatori di app e gli amministratori di sistema hanno bisogno di un modo sicuro per accedere a quel server e mantenere e distribuire aggiornamenti. È qui che entra in gioco SSH (Secure Shell). È un protocollo che consente agli utenti autorizzati di accedere in modo sicuro ai computer remoti, anche su reti non affidabili. SSH sostituisce metodi più vecchi e non sicuri come Telnet, che inviava nomi utente e password in chiaro.

L'Idea Dietro le "Chiavi"

SSH non si basa su una password tradizionale. Utilizza invece chiavi crittografiche: un paio di chiavi, una pubblica e una privata, che si abbinano. Pensale come un lucchetto e una chiave che si adattano solo tra loro. La chiave pubblica risiede sul server, mentre quella privata rimane con l'utente. Quando ti connetti, il server ti sfida a dimostrare di possedere la chiave privata, senza mai rivelarla. Questo rende quasi impossibile per chiunque stia ascoltando impersonarti. Mentre le password convenzionali possono essere indovinate, divulgate o riutilizzate, le chiavi SSH sono lunghe stringhe crittografiche casuali, praticamente impossibili da indovinare. Anche se qualcuno riesce a intercettare la connessione, tutto ciò che vedrà è rumore crittografato. E poiché le chiavi SSH non vengono mai inviate sulla rete, non c'è nulla da rubare durante il transito.

Come Appare Realmente una Chiave SSH

Se non hai mai visto una chiave SSH, potrebbe sembrare astratta, ma è davvero solo un lungo blocco di testo codificato. Una chiave pubblica è tipicamente lunga alcune centinaia di caratteri, mentre una chiave privata può superare abbondantemente il migliaio. Entrambe sono memorizzate come file di testo, ma il loro contenuto appare come rumore casuale, un mix di lettere, numeri e simboli. La chiave pubblica è sicura da condividere; è come mettere il tuo lucchetto sul server. La chiave privata, invece, è la tua identità digitale unica e non deve mai essere condivisa. È memorizzata localmente sul tuo computer e viene utilizzata solo per provare chi dichiari di essere, senza mai rivelare la chiave stessa.

Chiave Pubblica e Chiave Privata

Una chiave pubblica è come un lucchetto che attacchi alla tua casa. Chiunque può vederlo dalla strada, proprio come il lucchetto sulla tua porta di casa. Ma guardarlo non dice a nessuno come aprirlo. In altre parole, chiunque può vederlo, ma solo la chiave giusta può sbloccarlo. D'altro canto, la chiave privata è la chiave che apre il lucchetto, e rimane al sicuro con te. Se qualcun altro prende la tua chiave privata, può entrare nella tua casa come se fosse te. Ecco perché deve essere sempre tenuta segreta.

Meccanismo SSH

Ogni chiave pubblica e privata forma una coppia unica uno a uno. Sono generate insieme attraverso un processo matematico, in modo che solo quella specifica chiave privata possa abbinarsi alla chiave pubblica corrispondente. Puoi pensarle come un lucchetto e una chiave fatti su misura, forgiati insieme, e nessun'altra chiave al mondo si adatta a quel lucchetto. Anche se generi un'altra coppia usando lo stesso algoritmo (come RSA o Ed25519), i numeri interni saranno completamente diversi. La matematica che collega le due è unidirezionale: puoi facilmente derivare la chiave pubblica da quella privata, ma è praticamente impossibile invertire il processo e trovare la chiave privata partendo dalla pubblica. Ecco perché ogni coppia di chiavi SSH è unica e sicura.

Come SSH Dimostra Chi Sei

Quando accedi a un server con SSH, la tua chiave privata non lascia mai il tuo computer. Invece, il server invia una sfida casuale, come un puzzle una tantum, che solo la tua chiave privata può risolvere. Il tuo computer firma quella sfida matematicamente, producendo una breve risposta che il server può verificare usando la tua chiave pubblica. Se la risposta è corretta, il server sa che possiedi la chiave privata corretta, senza mai vederla. Questa è la magia della crittografia moderna: puoi provare la tua identità senza rivelare il tuo segreto. L'autenticazione SSH funziona perché la tua chiave privata contiene tutte le informazioni per derivare la chiave pubblica, ma il contrario è praticamente impossibile.

Come Gli Sviluppatori Usano SSH in Pratica

Ogni volta che gli sviluppatori distribuiscono codice, aggiornano un database o riavviano un servizio, spesso si connettono ai loro server remoti tramite SSH. Dopo l'autenticazione, ottengono una connessione sicura alla riga di comando del server. Da lì, possono gestire file, riavviare servizi o ispezionare i log, tutto crittografato end-to-end. Nel caso di Splync, SSH è il modo in cui gestiamo in modo sicuro il nostro server cloud. Ogni azione amministrativa, dall'implementazione degli aggiornamenti alla verifica dei log e al backup dei dati, viene eseguita tramite connessioni SSH protette da chiavi crittografiche. Nessuno può accedere al server senza la chiave privata corretta. Anche se qualcuno conoscesse il nostro indirizzo IP, senza quella chiave, la porta non si aprirebbe.

Prossimamente: Crittografia All'interno del Server

SSH protegge l'accesso al server e HTTPS protegge i dati in transito. Ma una volta che i dati entrano nel database, come li proteggiamo? È qui che entrano in gioco hash e crittografia: l'ultimo strato di difesa.