L'accesso con chiave SSH è molto più sicuro di una password e protegge il Suo VPS dagli attacchi a forza bruta.
1. Creare una coppia di chiavi (sul Suo computer)
- Apra un terminale o PowerShell e digiti
ssh-keygen -t ed25519. - Confermi il percorso e imposti eventualmente una passphrase.
Vengono create una chiave privata (id_ed25519, da non condividere mai) e una chiave pubblica (id_ed25519.pub).
2. Copiare la chiave pubblica sul VPS
- macOS/Linux:
ssh-copy-id root@SUO-IP - Windows PowerShell:
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh root@SUO-IP "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
Verifichi poi in una nuova finestra che ssh root@SUO-IP funzioni senza richiesta di password.
3. Disattivare l'accesso con password
- Apra
/etc/ssh/sshd_config(ad es. connano). - Imposti
PasswordAuthentication noePermitRootLogin prohibit-password. - Verifichi che nessun file in
/etc/ssh/sshd_config.d/sovrascriva questi valori. - Controlli la configurazione con
sshd -te riavvii il servizio:systemctl restart ssh(Debian/Ubuntu) oppuresystemctl restart sshd(AlmaLinux/Rocky).
Importante: chiuda la sessione attuale solo quando l'accesso con chiave funziona in una seconda finestra. Conservi una copia di backup della chiave privata.