Requisits previs
Pas 1: instal·lar la biblioteca de Google Authenticator
Pas 2: configureu Google Authenticator per a cada usuari
Pas 3: configureu SSH per utilitzar Google Authenticator
Nota
Conclusió
Hi ha diverses maneres d'iniciar sessió en un servidor mitjançant SSH. Els mètodes inclouen l'inici de sessió amb contrasenya, l'inici de sessió basat en claus i l'autenticació de dos factors.
L'autenticació de dos factors és un tipus de protecció molt millor. En cas que el vostre ordinador es vegi compromès, l'atacant encara necessitaria un codi d'accés per iniciar sessió.
En aquest tutorial, aprendràs a configurar l'autenticació de dos factors a Debian 9 mitjançant Google Authenticator i SSH.
Requisits previs
- Un servidor Debian 9 (o més recent).
- Un usuari no root amb accés sudo.
- Un telèfon intel·ligent (Android o iOS) amb l'aplicació Google Authenticator instal·lada. També podeu utilitzar Authy o qualsevol altra aplicació que admeti els inicis de sessió amb contrasenya única (TOTP) basats en el temps.
Pas 1: instal·lar la biblioteca de Google Authenticator
Hem d'instal·lar el mòdul Google Authenticator Library disponible per a Debian, que permetrà al servidor llegir i validar codis.
sudo apt update
sudo apt install libpam-google-authenticator -y
Configura el mòdul.
google-authenticator
Un cop executeu l'ordre, se us faran certes preguntes. La primera pregunta seràDo you want authentication tokens to be time-based (y/n)
Premeu Yi obtindreu un codi QR, clau secreta, codi de verificació i codis de seguretat d'emergència.
Traieu el telèfon i obriu l'aplicació Google Authenticator. Podeu escanejar el codi QR o afegir la clau secreta per afegir una nova entrada. Un cop ho hàgiu fet, tingueu en compte els codis de seguretat i mantingueu-los segurs en algun lloc. En cas que el vostre telèfon es perdi o es faci malbé, podeu utilitzar aquests codis per iniciar sessió.
Per a la resta de preguntes, premeu Yquan se us demani per actualitzar el .google_authenticatorfitxer, Yper no permetre els usos múltiples del mateix testimoni, Nper augmentar la finestra de temps i Yper habilitar la limitació de velocitat.
Haureu de repetir aquest pas per a tots els usuaris de la vostra màquina, en cas contrari, no podran iniciar sessió un cop hàgiu acabat amb aquest tutorial.
Ara que tots els usuaris de la vostra màquina han configurat la seva aplicació d'autenticació de Google, és hora de configurar l'SSH per utilitzar aquest mètode d'autenticació sobre l'actual.
Introduïu l'ordre següent per editar el sshdfitxer.
sudo nano /etc/pam.d/sshd
Busca la línia @include common-authi comenta-la, com el que es mostra a continuació.
# Standard Un*x authentication.
#@include common-auth
Afegiu la línia següent al final d'aquest fitxer.
auth required pam_google_authenticator.so
Premeu CTRL+ Xper desar i sortir.
A continuació, introduïu l'ordre següent per editar el sshd_configfitxer.
sudo nano /etc/ssh/sshd_config
Trobeu el terme ChallengeResponseAuthenticationi establiu-ne el valor a yes. Trobeu també el terme PasswordAuthentication, descomenteu-lo i canvieu-ne el valor a no.
# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no
El següent pas és afegir la línia següent a la part inferior del fitxer.
AuthenticationMethods publickey,keyboard-interactive
Deseu i tanqueu el fitxer prement CTRL+ X. Ara que hem configurat el servidor SSH per utilitzar Google Authenticator, és hora de reiniciar-lo.
sudo service ssh restart
Proveu de tornar a iniciar sessió al servidor. Aquesta vegada se us demanarà el vostre codi Authenticator.
ssh user@serverip
Authenticated with partial success.
Verification code:
Introduïu el codi que genera la vostra aplicació i iniciareu sessió correctament.
Nota
En cas de perdre el telèfon, utilitzeu els codis de seguretat del pas 2. Si heu perdut els codis de seguretat, sempre els podreu trobar al .google_authenticatorfitxer del directori d'inici de l'usuari després d'iniciar sessió a través de la consola Vultr.
Conclusió
Tenir una autenticació de dos factors millora molt la seguretat del vostre servidor i us permet ajudar a frustrar els atacs comuns de força bruta.