Cómo comprobar si un método de autenticación está habilitado en Linux

LinuxLinuxBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderá cómo verificar qué métodos de autenticación están habilitados en un sistema Linux. Exploraremos los archivos de configuración clave que rigen cómo se autentican y autorizan a los usuarios.

Comenzará examinando los archivos de configuración de PAM (Pluggable Authentication Modules, Módulos de Autenticación Intercambiables) ubicados en /etc/pam.d/ para entender el marco básico de autenticación. A continuación, inspeccionará el archivo de configuración de SSSD (System Security Services Daemon, Demonio de Servicios de Seguridad del Sistema) en /etc/sssd/sssd.conf para ver si está configurado para fuentes de identidad remotas. Finalmente, verificará la configuración de NSS (Name Service Switch, Interruptor de Servicios de Nombres) en /etc/nsswitch.conf para determinar el orden en el que el sistema busca información de usuarios y grupos. Al final de este laboratorio, tendrá una comprensión básica de dónde buscar para identificar los métodos de autenticación activos en un sistema Linux.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") subgraph Lab Skills linux/ls -.-> lab-558781{{"Cómo comprobar si un método de autenticación está habilitado en Linux"}} linux/cat -.-> lab-558781{{"Cómo comprobar si un método de autenticación está habilitado en Linux"}} end

Verificar la configuración de PAM con ls /etc/pam.d

En este paso, comenzaremos a explorar cómo Linux gestiona la autenticación y autorización de usuarios. Un componente clave es PAM, que significa Pluggable Authentication Modules (Módulos de Autenticación Intercambiables). PAM proporciona una forma flexible de administrar cómo los usuarios inician sesión, cambian contraseñas y acceden a los recursos del sistema.

Piense en PAM como un conjunto de reglas que las aplicaciones (como la pantalla de inicio de sesión o sudo) consultan antes de permitir que un usuario realice una acción. Estas reglas se definen en archivos de configuración, ubicados principalmente en el directorio /etc/pam.d/.

Echemos un vistazo a los archivos de configuración de PAM en este sistema. Usaremos el comando ls, que lista el contenido de un directorio.

Abra su terminal si no está abierta. Recuerde que puede encontrar el icono de Xfce Terminal en el lado izquierdo de su escritorio.

Escriba el siguiente comando y presione Enter:

ls /etc/pam.d/

Verá una lista de archivos. Cada archivo generalmente corresponde a un servicio o aplicación que utiliza PAM para la autenticación. Por ejemplo, es posible que vea archivos como common-auth, login, sudo, sshd, etc.

atd
chfn
chsh
common-account
common-auth
common-password
common-session
common-session-noninteractive
cron
... (la salida puede variar)

Estos archivos contienen las reglas específicas de PAM para cada servicio. No profundizaremos en los detalles del contenido de los archivos por ahora, pero es importante saber dónde se encuentran estas configuraciones.

Comprender PAM es crucial para administrar el acceso de usuarios y la seguridad en Linux. Al listar el contenido de /etc/pam.d/, ha dado el primer paso para ver cómo está configurada la autenticación en este sistema.

Haga clic en Continuar para pasar al siguiente paso.

Verificar la configuración de SSSD con cat /etc/sssd/sssd.conf

En este paso, analizaremos otro componente importante relacionado con la gestión y autenticación de usuarios: SSSD. SSSD significa System Security Services Daemon (Demonio de Servicios de Seguridad del Sistema). Es un servicio que proporciona acceso a fuentes de autenticación e identidad remotas como LDAP, Active Directory o FreeIPA.

SSSD puede almacenar en caché credenciales e información, lo que mejora el rendimiento y permite a los usuarios autenticarse incluso si la conexión de red a la fuente remota está temporalmente inactiva.

El archivo de configuración principal de SSSD generalmente se encuentra en /etc/sssd/sssd.conf. Usaremos el comando cat para mostrar el contenido de este archivo. El comando cat es una utilidad simple que se utiliza para mostrar el contenido de archivos.

Escriba el siguiente comando en su terminal y presione Enter:

cat /etc/sssd/sssd.conf

Verá los detalles de configuración de SSSD. El contenido de este archivo dependerá de si SSSD está configurado para conectarse a alguna fuente de identidad externa. En un sistema básico, el archivo puede ser mínimo o contener configuraciones predeterminadas.

[sssd]
domains =
config_file_version = 2
services = nss, pam

[nss]
filter_groups = root
filter_users = root
reconnection_retries = 3

[pam]
reconnection_retries = 3

Esta salida muestra la estructura básica del archivo sssd.conf. La sección [sssd] contiene configuraciones globales, y la línea services indica que SSSD está proporcionando servicios para nss (Name Service Switch, Interruptor de Servicios de Nombres) y pam. Las secciones [nss] y [pam] contienen configuraciones específicas para esos servicios.

Incluso si SSSD no está completamente configurado para una fuente remota, su presencia y configuración básica en sssd.conf indican que el sistema está configurado para utilizarlo potencialmente para la autenticación y la búsqueda de identidades.

Examinar este archivo le ayuda a entender si su sistema está configurado para utilizar SSSD y con qué servicios está integrado.

Haga clic en Continuar para pasar al siguiente paso.

Inspeccionar la configuración de NSS con cat /etc/nsswitch.conf

En este último paso de este laboratorio introductorio, examinaremos la configuración del Name Service Switch (NSS, Interruptor de Servicios de Nombres). NSS es una parte crucial de cómo los sistemas Linux determinan dónde buscar información sobre usuarios, grupos, nombres de host y otros datos relacionados con la red.

Cuando un programa necesita buscar la información de un usuario (como su ID de usuario o directorio personal), consulta la configuración de NSS para saber qué fuentes debe comprobar y en qué orden. Estas fuentes pueden incluir archivos locales (como /etc/passwd y /etc/group), DNS, LDAP o servicios como SSSD (que acabamos de analizar).

El archivo de configuración de NSS es /etc/nsswitch.conf. Volveremos a utilizar el comando cat para ver su contenido.

Escriba el siguiente comando en su terminal y presione Enter:

cat /etc/nsswitch.conf

Verá líneas que especifican qué fuentes utilizar para diferentes tipos de información. Cada línea comienza con el tipo de información (por ejemplo, passwd, group, hosts), seguido de dos puntos y una lista de fuentes a comprobar.

## /etc/nsswitch.conf
#
## Example configuration of GNU Name Service Switch functionality.
## If you have the `glibc-doc-reference' and `info' packages installed, try:
## `info libc "Name Service Switch"' for information.

passwd:         compat systemd
group:          compat systemd
shadow:         compat

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

En esta salida de ejemplo:

  • passwd: compat systemd significa que cuando se busque información de usuario, el sistema debe comprobar primero las fuentes configuradas por compat (a menudo se refiere a archivos tradicionales como /etc/passwd) y luego systemd.
  • hosts: files dns significa que cuando se resuelvan nombres de host, el sistema debe comprobar primero el archivo local /etc/hosts (files) y luego utilizar DNS.

El orden de las fuentes en cada línea es importante, ya que el sistema las comprueba secuencialmente hasta encontrar la información solicitada.

Comprender nsswitch.conf le ayuda a solucionar problemas relacionados con el inicio de sesión de usuarios, la resolución de nombres de host y otros problemas relacionados con la identidad, ya que le muestra el orden en el que su sistema busca esta información.

Ahora ha tenido una breve visión de tres áreas clave relacionadas con la gestión y autenticación de usuarios en Linux: PAM, SSSD y NSS. Este es un paso fundamental para entender cómo su sistema gestiona las identidades y el acceso.

Haga clic en Continuar para completar este laboratorio.

Resumen

En este laboratorio, comenzamos a explorar cómo Linux gestiona la autenticación de usuarios examinando archivos de configuración clave. Primero usamos ls /etc/pam.d/ para listar los archivos de configuración de los Módulos de Autenticación Intercambiables (Pluggable Authentication Modules, PAM), que definen las reglas de autenticación para diversos servicios y aplicaciones. Esto nos mostró dónde se almacenan las políticas de autenticación principales en el sistema.

A continuación, comenzamos a investigar el Demonio de Servicios de Seguridad del Sistema (System Security Services Daemon, SSSD) intentando ver su archivo de configuración en /etc/sssd/sssd.conf utilizando el comando cat. SSSD es un servicio crucial para integrarse con fuentes de identidad y autenticación remotas, y examinar su configuración ayuda a determinar si el sistema está configurado para autenticarse contra directorios externos y cómo se realiza dicha configuración.