VPS: Autenticazione SSH a due fattori
Questa guida è stata creata con i seguenti prodotti:
(I dettagli possono variare con prodotti di fornitori diversi ma i concetti principali rimangono gli stessi)
Introduzione
Il servizio di autenticazione SSH a due fattori (2FA) di Google, chiamato Google Authenticator SSH, migliora la sicurezza dell’accesso SSH (Secure Shell) aggiungendo un secondo livello di autenticazione. Anche se SSH fornisce già un metodo sicuro per stabilire una connessione criptata a un server remoto, l’integrazione della 2FA aumenta il livello di sicurezza richiedendo agli utenti di inserire non solo la password, ma anche un codice di verifica monouso generato da Google Authenticator. In questa guida vedremo come installare e configurare il servizio Google Authenticator SSH su un server Linux.
Installazione
Per prima cosa devi installare Google Authenticator sul tuo VPS Linux. Esegui questo comando:
sudo apt install libpam-google-authenticator
Ti verrà chiesto di digitare "Y" per installare il pacchetto, digita questo, premi Invio e Google Authenticator verrà installato!
Avvia Google Authenticator digitando 'google-authenticator'. Assicurati che la finestra sia abbastanza grande per visualizzare il QR Code, altrimenti premi "CTRL+C" e rilancialo.
Ti verrà chiesto di confermare l’esecuzione, digita "Y" per accettare. Ora vedrai un QR Code. Apri l’app Authenticator sul tuo smartphone e scansiona il QR Code. Per questo esempio usiamo Google Authenticator:
Assicurati di copiare i codici di backup, ognuno può essere usato una volta nel caso perdessi l’autenticatore.
L’app ti mostrerà già i codici necessari per il login. In questo caso appare così:
Ora ti verranno poste queste domande:
- Vuoi salvare la configurazione di Google Authenticator?
- Vuoi permettere un solo login ogni 30 secondi?
- Vuoi aumentare il tempo in cui un codice è valido?
- Vuoi limitare a tre login ogni 30 secondi? (Protezione contro Brute Force)
Per motivi di sicurezza consigliamo di rispondere Yes a tutte.
Configurazione
Ora dobbiamo configurare Google Authenticator per farlo funzionare. Servono due modifiche.
/etc/ssh/sshd_config
Attiva i moduli necessari nel file /etc/ssh/sshd_config. Apri il file con:
sudo nano /etc/ssh/sshd_config
Sei ora in un editor di testo. Puoi muoverti con le frecce, cancellare testo liberamente e modificare. Per salvare premi 'CTRL + X', poi 'Y' e infine 'Invio'.
Assicurati che le due righe 'UsePAM' e 'ChallengeResponseAuthentication' siano impostate su 'yes', così:
Salva il file con 'CTRL + X', poi 'Y' e infine 'Invio'. Riavvia SSH con:
sudo systemctl restart ssh
/etc/pam.d/sshd
Ora aggiungiamo Google Authenticator al login modificando /etc/pam.d/sshd. Apri il file con:
sudo nano /etc/pam.d/sshd
Scorri fino in fondo e aggiungi questa riga:
auth required pam_google_authenticator.so
Salva con 'CTRL + X', poi 'Y' e infine 'Invio'.
Test accesso
È il momento di fare il primo login con 2FA. Dopo aver seguito i passaggi sopra, ti basta riavviare la connessione SSH.
Inserisci la tua password come al solito. Ti verrà chiesto un codice, inserisci semplicemente il codice 2FA attuale.
Ora sei dentro!
Conclusione
Congratulazioni, hai attivato e configurato con successo la 2FA per SSH! Se hai altre domande o problemi, contatta il nostro supporto, sempre pronto ad aiutarti ogni giorno!