SSH es una de las formas mas “seguras” de conectarse remotamente a los servidores, pero aun y cuando apliquemos medidas de aseguramiento, no esta de mas una doble validacion.
La autentificación en la mayoría de los casos se basa en (Usuario + Contraseña) o uso de llaves, pero esta vez Google nos proporciona el software necesario para integrar el modulo de Google Authenticator y darle una capa adicional de seguridad al protocolo SSH.
¿Pero que es Google Authenticator?, es un software generador de códigos de un solo uso, para diferentes plataformas móviles, así como un módulo de autenticación conectable (PAM).
Instalación
Para el proceso de instalación de distribuciones basada en Debian (Ubuntu), podemos encontrar en sus repositorios el paquete libpam-google-authenticator
1
|
sudo apt-get install libpam-google-authenticator |
Una vez instalado el modulo PAM, es necesario generar la clave secreta que utilizaremos para configurar la apk en nuestro teléfono móvil, con solo ejecutar el comando google-authenticator.
1
|
google-authenticator |
Las siguientes son opciones que nos presenta el complemento de seguridad que ofrece el módulo. A las cuales por recomendación debemos responder con (Y)
- ¿Deshabilitar múltiples usos del mismo token de autenticación? (Y)
- Por defecto, los tokens duran 30 segundos con el fin de compensar el tiempo posible entre el cliente y el servidor, si experimenta problemas con la sincronización del tiempo , puede aumentar su valor predeterminado de 1:30 minutos a aproximadamente 4 minutos . ¿Quieres hacerlo (Y)
- Minimizar los intentos de fuerza bruta , de forma predeterminada se limita a un máximo de 3 intentos cada 30 segundos. ¿ Deseas limitar la actividad ? (Y)
Hay dos opciones posibles, escaneamos el código QR con la aplicación (apk) o configuramos manualmente el código (clave blindada).
Ahora queda realizar un cambio manual,, en dos archivos para poder hacer uso del módulo. Debemos modificar el archivo /etc/pam.d/sshd y agregar la siguiente linea al final.
1
|
vim /etc/pam .d /sshd |
auth required pam_google_authenticator.so
Al archivo /etc/ssh/sshd_config le modificamos la variable ChallengeResponseAuthentication
ChallengeResponseAuthentication yes
Reiniciamos el servicio SSH
1
|
sudo service ssh restart |
Y ahora, a probar el funcionamiento del mismo.
1
|
ssh user@servidor |
Fuente: lamiradadelreplicante