Tutti gli articoli

ssh

Chiavi SSH su un VPS: un modo più sicuro delle password per accedere

L’accesso con chiave SSH sostituisce le password del server facili da indovinare con un sistema a serratura e chiave abbinate: più sicuro e, una volta capito, anche più semplice da gestire.

  • ssh
  • sicurezza
  • login
Una chiave SSH privata invia una freccia verde a un server VPS con lucchetto, mentre una pillola password è barrata.

Vuoi accedere al tuo server senza lasciare la porta d’ingresso protetta da una password che i bot possono provare a indovinare tutto il giorno.

È questo il problema di base che le chiavi SSH risolvono. Fanno sembrare l’accesso al server meno simile all’inserimento di un segreto condiviso su un tastierino, e più simile all’uso di una chiave fisica che esiste solo sul tuo computer.

Perché l’accesso con password è la porta d’ingresso debole

SSH significa Secure Shell. È il modo più comune per aprire una sessione privata da riga di comando sul tuo server dal tuo portatile.

Quando SSH accetta le password, chiunque su internet può provare ad accedere. Non deve conoscerti. Non deve visitare il tuo sito. Può semplicemente bussare alla porta SSH e provare nomi utente e password comuni, ancora e ancora.

La maggior parte di questi tentativi è automatizzata. Immagina uno sconosciuto che cammina per strada provando la maniglia di ogni portone. Ora immagina un robot che lo fa migliaia di volte all’ora, su migliaia di indirizzi.

Una password robusta aiuta. Anche un firewall aiuta, e vale la pena capire le basi in come configurare un firewall sul tuo server. Ma l’accesso con password ti lascia comunque con un segreto che può essere indovinato, riutilizzato, trapelato, copiato o digitato nel posto sbagliato.

Le chiavi SSH cambiano la forma del rischio.

Che cos’è davvero una chiave SSH

Una chiave SSH è composta da una coppia.

Una parte è pubblica. Puoi metterla sul server. È come una serratura che sei felice di installare su una porta.

L’altra parte è privata. La tieni sul tuo computer. È come l’unica chiave che apre quella serratura.

La parte pubblica non può essere usata per ricostruire la parte privata. Questo è il punto importante. Se qualcuno vede la chiave pubblica, non può comunque accedere al posto tuo. Il server può usarla per verificare se la tua chiave privata corrisponde, senza che la chiave privata venga mai inviata su internet.

È diverso da una password. Con una password, ciò che digiti è ciò che dimostra chi sei. Se trapela, può essere riutilizzata. Con una chiave SSH, il tuo computer dimostra di avere la chiave privata, ma non consegna la chiave privata.

Molte persone proteggono anche la chiave privata con una passphrase. Questo significa che, se qualcuno ruba il file dal tuo portatile, ha comunque bisogno di un altro segreto prima di poterlo usare. Pensala come mettere la chiave di casa dentro una piccola cassaforte.

Cosa cambia quando configuri l’accesso con chiave SSH

Configurare l’accesso con chiave SSH di solito significa che succedono tre cose.

Prima, crei una coppia di chiavi sul tuo computer. La chiave privata resta lì. La chiave pubblica è la parte pensata per essere condivisa.

Seconda, la chiave pubblica viene aggiunta all’account utente corretto sul server. Da quel momento in poi, il server sa: “Se qualcuno può dimostrare di possedere la chiave privata corrispondente, fallo entrare come questo utente.”

Terza, dopo aver verificato che l’accesso con chiave funzioni, l’accesso con password può essere disattivato. Questa è la parte che elimina un’ampia categoria di attacchi. I bot possono continuare a indovinare password, ma la porta non accetta più le password come prova.

L’ordine è importante. Non rimuovere l’accesso con password prima di aver confermato che la tua chiave funziona in una nuova sessione di accesso. Altrimenti puoi restare chiuso fuori dal tuo server: l’equivalente, per un server, di chiudere la porta e renderti conto che la chiave è ancora sul tavolo della cucina.

Se sei ancora alla fase “cosa dovrei fare per prima cosa?”, la nostra guida ai primi passi per principianti su un nuovo server ti dà il contesto più ampio su accesso, aggiornamenti, domini e sicurezza di base.

Gli errori che fanno sembrare le chiavi spaventose

Le chiavi SSH sono più sicure delle password, ma non sono magiche. La maggior parte dei problemi nasce dal perdere traccia di quale chiave appartiene a cosa.

Potresti creare una chiave su un vecchio portatile, aggiungerla al server e poi sostituire il portatile sei mesi dopo. Se quella era la tua unica chiave funzionante e l’accesso con password è disattivato, hai un problema di recupero.

Potresti copiare per errore una chiave privata in un messaggio di chat, in una cartella condivisa o in un repository di progetto. Questo trasforma una chiave privata in una chiave non così privata. Le chiavi pubbliche si possono condividere. Le chiavi private no.

Potresti anche dare a ogni progetto e a ogni persona lo stesso accesso. All’inizio è comodo, ma più avanti diventa un pasticcio. Quando qualcuno se ne va, o quando un portatile viene perso, vuoi poter rimuovere una chiave senza chiederti da cos’altro dipenda.

Ecco perché la sicurezza del server non riguarda solo l’essere rigidi. Riguarda anche il restare organizzati. I backup contano per lo stesso motivo: il giorno in cui qualcosa va storto non è il giorno in cui vuoi scoprire cosa hai dimenticato di documentare. Se non l’hai già fatto, leggi come fare il backup del tuo server e ripristinarlo.

La scorciatoia

Server Manager aiuta mantenendo l’accesso comprensibile, invece di trasformarlo in una pila di modifiche da terminale ricordate a metà.

Il risultato è semplice: è meno probabile che tu lasci l’accesso con password aperto perché avevi paura di rompere l’accesso, è meno probabile che tu dimentichi quale chiave appartiene a quale persona o macchina, ed è meno probabile che tu perda il filo mesi dopo, quando devi cambiare qualcosa.

Il vero vantaggio non è che le chiavi SSH diventano intelligenti. È che la configurazione resta leggibile. Puoi vedere cosa esiste, capire perché esiste ed evitare i problemi più comuni: un server da cui resti chiuso fuori, un vecchio portatile ancora considerato affidabile o una chiave privata trattata come un file normale.

Il risultato: una porta d’accesso più tranquilla

Le chiavi SSH danno al tuo server una porta d’ingresso più tranquilla.

Invece di chiedere a tutto internet di indovinare la password giusta, il tuo server chiede una prova che solo la tua macchina dovrebbe essere in grado di fornire. Una volta disattivato l’accesso con password e tenute in ordine le chiavi, i tentativi casuali di indovinare diventano molto meno utili.

Serve comunque attenzione. Mantieni privata la tua chiave privata. Proteggila con una passphrase. Mantieni un percorso di recupero. Rimuovi le chiavi che non usi più.

Ma il vantaggio principale è chiaro: puoi accedere senza lasciare l’indovinare la password come l’attacco più facile da provare.