Este documento describe cómo configurar la autenticación de dos factores para el servicio SSH en CentOS utilizando Google Authenticator. Explica que la autenticación depende de uno o más factores como algo que el usuario sabe, es o tiene. Luego proporciona instrucciones detalladas para instalar el código fuente de Google Authenticator, vincular una cuenta de usuario, configurar la aplicación móvil y probar la autenticación de dos factores al iniciar sesión SSH.
Actividad No. 1.15 Autenticación de dos factores con Google Authenticator en CentOS
1. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
1
Actividad
No.
1.15:
Autenticación
de
dos
factores
con
Google
Authenticator
en
CentOS
Antecedentes
Autenticación
es
el
acto
de
establecimiento
o
confirmación
de
algo
(o
alguien)
como
auténtico.
La
autenticación
de
un
objeto
puede
significar
(pensar)
la
confirmación
de
su
procedencia,
mientras
que
la
autenticación
de
una
persona
a
menudo
consiste
en
verificar
su
identidad.
La
autenticación
depende
de
uno
o
varios
factores.
Los
factores
de
autenticación
se
clasifican
en
los
siguientes
tipos:
• Algo
que
el
usuario
sabe
(Como
una
contraseña).
• Algo
que
el
usuario
es
(Como
un
biométrico)
• Algo
que
el
usuario
tiene
(Token)
Objetivo
Configurar
la
autenticación
de
dos
factores
para
el
servicio
ssh
en
CentOS.
2. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
2
Requerimientos
Para
la
ejecución
de
esta
actividad,
serán
necesarios
dos
equipos
de
cómputo
con
los
siguientes
roles:
• Equipo
No.
1:
Servidor
de
base
de
datos
(CentOS).
Configurar
este
equipo
de
acuerdo
a
la
Actividad
No.
1.4-‐
Instalación
y
Configuración
de
MySQL
en
CentOS
6
y
crear
una
la
base
de
datos
world
como
lo
indica
la
Actividad
No.
1.6-‐
Creación
de
bases
de
datos
en
MySQL.
• Equipo
No.
2:
Computadora
cliente
que
tiene
privilegios
de
conexión
al
servidor
de
base
de
datos.
(CentOS).
• Teléfono
inteligente
(Smartphone):
Con
la
aplicación
Google
Authenticator
instalada.
3. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
3
Instrucciones
En
el
equipo
No.1
servidor
de
base
de
datos
ejecuta
los
siguientes
comados:
1. Inicia
una
sesión
como
root.
2. Instala
los
siguientes
paquetes
make pam-devel con
el
comando:
yum install make pam-devel -y
3. Descarga
el
archivo
libpam-‐google-‐authenticator-‐1.0-‐source.tar.bz2
wget -c "https://google-
authenticator.googlecode.com/files/libpam-google-
authenticator-1.0-source.tar.bz2"
4. Descomprime
el
archivo
descargado
con
el
siguiente
comando:
tar jxvf libpam-google-authenticator-1.0-source.tar.bz2
&& cd libpam-google-*
5. Compila
e
instala
el
código
fuente
de
google-‐authenticator:
make install
6. Respalda
y
edita
el
archivo
/etc/pam.d/sshd
cp -var /etc/pam.d/sshd{,.bck}
vi /etc/pam.d/sshd
Agregar
la
línea:
auth required pam_google_authenticator.so
7. Respalda
y
edita
el
archivo:
/etc/ssh/sshd_config{,.bck}
cp -var /etc/ssh/sshd_config{,.bck}
vi /etc/ssh/sshd_config
Realiza
las
siguientes
modificaciones:
PermitRootLogin no
ChallengeResponseAuthentication yes
8. Reinicia
el
servcio
de
ssh
con
el
comando:
4. Universidad
Nacional
Autónoma
de
México
Facultad
de
Contaduría
y
Administración
Diplomado
Diseño
y
Administración
de
Base
de
Datos
Módulo
6.
Seguridad
de
Bases
de
Datos
Elaboró:
Francisco
Medina
López
4
service sshd restart
9. Crea
una
nueva
cuenta
o
utiliza
una
ya
existente
para
vincular
dicha
cuenta
con
google-‐authenticator.
su - paco
google-authenticator
10. Configura
el
cliente
de
google-‐authenticator
en
tu
teléfono
inteligente.
11. Inicia
una
sesión
de
ssh
desde
el
equipo
No
2.
Cliente,
con
el
comando:
ssh
–l
root
192.168.1.x