Guías
Collapse MFA para Linux

CentOS: cómo habilitar la autenticación de dos factores para mejorar la seguridad

Con la solución de autenticación multifactor (MFA) de Protectimus, puede configurar la autenticación de dos factores (2FA) en CentOS en unos pocos pasos.

1. Cómo funciona la autenticación de dos factores (2FA) en CentOS


Después de habilitar 2FA en CentOS, sus usuarios deberán utilizar dos contraseñas de autenticación para acceder a sus cuentas de CentOS:

  1. La primera es una contraseña estándar (algo que el usuario memoriza);
  2. La segunda es una contraseña de un solo uso válida únicamente durante 30 o 60 segundos (la contraseña de un solo uso se genera mediante un token OTP de hardware o una aplicación 2FA en el teléfono del usuario, es decir, algo que posee y debe llevar consigo).

De este modo, la cuenta de CentOS queda protegida mediante dos factores de autenticación diferentes. Aunque un atacante robe la contraseña del usuario mediante phishing, fuerza bruta, ingeniería social, suplantación de datos u otro ataque, no podrá acceder a la cuenta de CentOS sin la contraseña de un solo uso del token 2FA del usuario.

Esta guía explica cómo configurar la autenticación de dos factores (2FA) en CentOS mediante el componente RADIUS 2FA de Protectimus para la integración con el servicio 2FA en la nube de Protectimus o con la plataforma MFA local de Protectimus.


CentOS 2FA (two-factor authentication) setup scheme

2. Cómo habilitar la autenticación de dos factores (2FA) en CentOS

Puede configurar la autenticación de dos factores (2FA) en CentOS con Protectimus mediante el protocolo RADIUS:

  1. Regístrese en el servicio 2FA SaaS de Protectimus o en la plataforma 2FA local y configure los ajustes básicos.
  2. Instale el módulo PAM de Protectimus para 2FA en CentOS.
  3. Instale y configure el módulo Protectimus RADIUS Server.

2.1. Regístrese y configure los ajustes básicos de Protectimus


Elija su opción de implementación y complete la configuración básica:

Servicio en la nube de Protectimus

  1. Regístrese en el servicio en la nube de Protectimus y active la API.
  2. Añada un recurso.
  3. Añada usuarios.
  4. Añada tokens manualmente o active el Portal de autoservicio de usuarios.
  5. Asigne tokens a los usuarios.
  6. Asigne usuarios y tokens al recurso.

Plataforma Protectimus On-Premise

  1. Instale la plataforma Protectimus On-Premise. Si instala la plataforma Protectimus en Windows, seleccione la opción RADIUS durante la instalación.
  2. Añada un recurso.
  3. Añada usuarios.
  4. Añada tokens manualmente o active el Portal de autoservicio de usuarios.
  5. Asigne tokens a los usuarios.
  6. Asigne al recurso los tokens junto con los usuarios.

2.2. Instale el módulo PAM de Protectimus para 2FA en CentOS


yum -y install epel-release
yum -y install pam_radius

2.3. Instale y configure Protectimus RADIUS Server


  1. Instale protectimus-radius

git clone https://github.com/protectimus/platform-linux.git
cd platform-linux/radius
edit config/radius.yml
docker compose up -d
  1. Configure el archivo radius.yml.

    Configure Protectimus RADIUS Server en el archivo radius.yml. Este debe encontrarse en el mismo directorio que el ejecutable.

    Encontrará instrucciones detalladas sobre las propiedades disponibles que puede añadir al archivo radius.yml en nuestra Guía de configuración de Protectimus RADIUS Server.

    Ejemplo de configuración del archivo radius.yml:

radius:
  secret: secret
  auth-port: 1812

auth:
  #  Could be :
  #  - LDAP
  #  - PROTECTIMUS_PASSWORD
  #  - PROTECTIMUS_OTP
  #  - PROTECTIMUS_PUSH
  providers:
	- PROTECTIMUS_OTP

protectimus-api:
  login: login@domain.com
  api-key: aslkjdljsdlaskmWpXjT5K0xqLXkd3
  url: https://api.protectimus.com/
  resource-name: radius
  resource-id: 723
  1. Edite la configuración de pam_radius y configure el secreto en:

    /etc/pam_radius.conf

# server[:port] shared_secret  	timeout (s)
127.0.0.1   	secret         	1
  1. Configure SSH para utilizar challenge response:

    /etc/ssh/sshd_config

ChallengeResponseAuthentication yes
  1. Ejecute el comando systemctl restart sshd
  1. Configure PAM para que SSH utilice RADIUS:

    Añada auth required pam_radius_auth.so después de auth substack password-auth en /etc/pam.d/sshd

#%PAM-1.0
auth   	required 	pam_sepermit.so
# protectimus pam radius
auth   	substack 	password-auth
auth   	required 	pam_radius_auth.so
auth   	include  	postlogin
# Used with polkit to reauthorize users in remote sessions
-auth  	optional 	pam_reauthorize.so prepare
La configuración de la autenticación multifactor en CentOS ha finalizado. Si tiene alguna pregunta, póngase en contacto con nuestro servicio de atención al cliente.
    Tabla de contenidos