Ci sono diverse cose che puoi fare per proteggere e proteggere il tuo SSH. Uno di questi è utilizzare Google Authenticator e creare un'autenticazione a due fattori sul tuo CentOS VPS. Google Authenticator ti offre un ulteriore livello di sicurezza generando password monouso basate sul tempo (TOTP) sul tuo smartphone che devi inserire insieme al tuo nome utente e password per accedere al server tramite SSH.
Nell'articolo del blog di oggi spiegheremo come installare Google Authenticator dal sorgente e configurare SSH per l'autenticazione a due fattori.
Prima di tutto aggiorna il tuo server virtuale CentOS
yum -y update
Quindi, installa "pam-devel ' pacchetto che consente di impostare criteri di autenticazione senza dover ricompilare i programmi che gestiscono l'autenticazione.
yum -y install pam-devel
Assicurati che ntpd sia installato e in esecuzione perché i token di sicurezza TOTP sono sensibili al tempo
yum -y install ntp /etc/init.d/ntpd start chkconfig ntpd on
Scarica e decomprimi il pacchetto di autenticazione di Google
cd /opt/ wget https://google-authenticator.googlecode.com/files/libpam-google-authenticator-1.0-source.tar.bz2 tar -xvzf libpam-google-authenticator-1.0-source.tar.bz2 cd libpam-google-authenticator-1.0
Compila e installa il modulo di autenticazione di Google
make make install
Ora esegui l'autenticatore di Google sul tuo server e rispondi a ciascuna delle domande
google-authenticator Do you want authentication tokens to be time-based (y/n) y https://www.google.com/chart?chs=200x200&chld=M|0&cht=qr&chl=otpauth://totp/root@YOURHOSTNAME%3Fsecret%3DWYD4YCGEE5N4M3LA Your new secret key is: WYD4YCGEE5N4M3LA Your verification code is 188127 Your emergency scratch codes are: 60086389 28918071 88502143 60873576 90892542 Do you want me to update your "/root/.google_authenticator" file (y/n) y Do you want to disallow multiple uses of the same authentication token? This restricts you to one login about every 30s, but it increases your chances to notice or even prevent man-in-the-middle attacks (y/n) y By default, tokens are good for 30 seconds and in order to compensate for possible time-skew between the client and the server, we allow an extra token before and after the current time. If you experience problems with poor time synchronization, you can increase the window from its default size of 1:30min to about 4min. Do you want to do so (y/n) y If the computer that you are logging into isn't hardened against brute-force login attempts, you can enable rate-limiting for the authentication module. By default, this limits attackers to no more than 3 login attempts every 30s. Do you want to enable rate-limiting (y/n) y
Apri l'URL fornito dopo aver risposto alla prima domanda e scansiona il codice QR utilizzando l'applicazione Google Authenticator sul tuo smartphone. È tutto. Verrà generato un nuovo codice di verifica ogni 30 secondi.
Ora dovrai abilitare l'autenticatore di Google per gli accessi SSH. Apri il file di configurazione di PAM
vi /etc/pam.d/sshd
E aggiungi la seguente riga in alto
auth required pam_google_authenticator.so
Apri il file di configurazione SSH e assicurati che "ChallengeResponseAuthentication ' la linea è impostata su sì
ChallengeResponseAuthentication yes
Salva le modifiche e riavvia il servizio SSH:
service sshd restart
Ora, ogni volta che provi ad accedere a SSH nel tuo server ti verrà chiesto di inserire il codice di verifica visualizzato nella tua applicazione Google Authenticator.
login as: Verification code: Password:
Naturalmente, se sei uno dei nostri clienti di hosting VPS Linux, non devi fare nulla di tutto questo, chiedi semplicemente ai nostri amministratori, siediti e rilassati. I nostri amministratori lo configureranno immediatamente per te. Per gli aggiornamenti, puoi fare riferimento a Secure SSH utilizzando l'autenticazione a due fattori su Ubuntu 16.04.
PS. Se questo post ti è piaciuto condividilo con i tuoi amici sui social network utilizzando i pulsanti a sinistra o semplicemente lascia una risposta qui sotto. Grazie.