Google Authenticator : Haz más seguro el acceso a SSH verificando con un código desde tu Movil/PC

Sección Unicamente para Tutoriales y Guías
Responder
Avatar de Usuario
Kike
Administrador
Administrador
Mensajes: 2311
Registrado: 13 May 2016, 18:53
Ubicación: Islas Baleares - Menorca
Agradecido: 47 veces
Agradecimiento recibido: 175 veces
Contactar:

Imagen
Hola a todos! Hoy os voy a enseñar como darle un extra de seguridad a nuestra Raspberry Pi ( no solo para ella , existe para prácticamente todos los sistemas :) ) con esta fantástica herramienta diseñada por el gran Google .

¿Como funciona exactamente?

Cuando intentemos alguien o nosotros mismos conectarnos a través de terminal SSH , te pedirá un código de confirmación que solo tendremos disponible a través de nuestro Smartphone o PC que a la vez el código se renueva cada minuto.
Sin introducir previamente ese código , será imposible que nos permita acceder mejorando así la seguridad .



Instalación:

Primero de todo accedemos a través de SSH y actualizaremos repositorios con el comando:

Código: Seleccionar todo

sudo apt-get update
Imagen

Seguidamente pondremos el comando para instalar Google Authenticator

Código: Seleccionar todo

sudo apt-get install libpam-google-authenticator
Imagen

Configuración:

Editaremos algunos archivos de OpenSSH para ser compatibles con Google Authenticator , para ello editaremos el siguiente archivo:

Código: Seleccionar todo

sudo nano /etc/pam.d/sshd
Y añadimos lo siguiente:
auth required pam_google_authenticator.so
Guardamos los cambios pulsando Control + X , luego Y seguido de ENTER.

Editamos el último parámetro:

Código: Seleccionar todo

sudo nano /etc/ssh/sshd_config
Buscamos:
ChallengeResponseAuthentication no
Y lo modificamos por:
ChallengeResponseAuthentication yes
Guardamos los cambios pulsando Control + X , luego Y seguido de ENTER.

Lo siguiente será configurar Google Authenticator , para ello introducimos este comando para empezar a configurar:

Código: Seleccionar todo

google-authenticator


Primeramente nos preguntará si queremos configurar los códigos por tiempo, recomiendo poner Y



Nos dirá que si queremos modificar el archivo ( opciones avanzadas ) pulsaremos N

Ahora nos saldrán los datos realmente importantes que necesitaremos para sincronizar con nuestra aplicación, apuntamos la SECRET KEY marcada en la imagen anterior o también podemos escanear el código QR con nuestro Smarphone una vez descargada la aplicación:

Descargar para PC [Extensión] ( necesario Google Chrome )
https://chrome.google.com/webstore/deta ... addinpkbai

Descargar para Android ( Smartphone )
https://play.google.com/store/apps/deta ... tor2&hl=es

Descargar para IOS:
https://itunes.apple.com/es/app/google- ... 97605?mt=8

Una vez instalada en la plataforma que a nosotros nos vaya mejor, introduciremos la clave proporcionada.
En mi caso se mostrará en la extensión de Chrome ( Windows )
Marcamos Time Based si hemos elegido la actualización por tiempo .



Una vez introducida, nos dará una clave diferente cada minuto que es la que tendremos que utilizar para acceder por SSH.



Ejemplo al acceder por SSH:


Espero que os haya sido útil, si tenéis alguna duda o veis algún fallo me gustaría que me informarais.
Un abrazo! ;)
Si lo puedes soñar, lo puedes hacer
Avatar de Usuario
xxmonti
Pi Master
Pi Master
Mensajes: 257
Registrado: 19 May 2016, 10:05
Agradecido: 0
Agradecimiento recibido: 0

Genial crack ;) Gracias por el aporte :victoria
Imagen
Avatar de Usuario
Gubenote
Pi Omega
Pi Omega
Mensajes: 58
Registrado: 21 Oct 2016, 09:50
Agradecido: 0
Agradecimiento recibido: 0

Como era de esperar en mi, lo he instalado y luego no me va.
En cuanto intento entrar me dice permiso denegado :triste
Cuando se instala el google authenticator ¿es para todos los usuarios?
Lo he instalado con el usuario pi, pero tengo en la pi dos usuarios "pi" y "homeassistant" para ambos me pide la autenticación de google, pero no me va en ninguno... ni en putty ni en winscp
ni reiniciando ni nada...
Estoy restaurando un backup por que me es imposible acceder ahora a la pi. :? :? :?
Responder