Tel: +39 051 9923640
Email: info@vps-green.com
Seguendo il percorso intrapreso con i precedenti articoli, sulla messa in sicurezza di un VPS con sistema operativo Linux (trovi i link alle guide in fondo a questa pagina), andremo ora a modificare il servizio SSH in modo da non accettare richieste di accesso con l’inserimento di password. In questo modo si potrà accedere esclusivamente con l’utilizzo di chiavi SSH, aumentando intrinsecamente il livello di sicurezza del VPS.
Prerequisiti
Modifica la configurazione del servizio SSH
Prima di iniziare con le modifiche, apri due sessioni SSH, in una eseguirai tutte le operazioni indicate, mentre l’altra sessione resterà aperta in caso d'emergenza (può essere utile per evitare di restare tagliati fuori se le modifiche fatte al file di configurazione risultino errate). Il file di configurazione del servizio ssh si trova in /etc/ssh/sshd_config, solo l’utente root può modificare questo file.
$ cd /etc/ssh
$ sudo cp sshd_config sshd_config.orig
sudo nano sshd_config
All'interno del files tutto ciò che inizia con # (cancelletto), rappresenta un commento e viene ignorato all’avvio del servizio, allo stesso tempo però ci indica quale è il valore di default per quella determinata opzione. Ad esempio:
#Port 22 <- questa è la porta di default del servizio, ignorata
Port 4422 <- questa è la nuova porta, scelta da noi, utilizzata
Per impedire l’accesso con la password, dobbiamo trovare l'opzione PasswordAuthentication, eliminare il simbolo # e modificare il suo valore di default a no, oppure, se si preferisce, scrivere una nuova riga conservando intatto il valore precedente. Usando l’editor nano, abbiamo a disposizione una comoda funzionalità di ricerca, basterà premere i tasti CTRL+W per attivare nella parte bassa della finestra un campo nel quale possiamo inserire del testo da cercare, premendo INVIO inizierà la ricerca sul file.
Trovato il parametro PasswordAuthentication, puoi modificarlo:
# PasswordAuthentication yes
PasswordAuthentication no
Salva le modifiche fatte premendo i tasti CTRL+X, poi Y ed infine INVIO per accettare il nome del file che ci viene proposto.
$ sudo systemctl restart sshd
$ sudo systemctl status sshd
Output:
Mai più password
Se la procedura è stata eseguita bene, potrai vedere alla voce "Active:" che il servizio è attivo e in esecuzione, con un rassicurante active (running). Ora puoi provare a connetterti, magari senza la chiave privata, in modo da sperimentre il fatto che il servizio SSH sul tuo VPS negherà fermamente l'accesso senza nemmeno chiedere nome utente o password.
utente_vps@ip_vps: Permission denied (publickey)