Gestión de contraseñas y políticas: chage, /etc/login.defs

...

Introducción

Linux permite definir políticas de contraseñas para los usuarios: caducidad, tiempo mínimo entre cambios, avisos de expiración, etc. Esto se gestiona con el comando chage y el archivo /etc/login.defs.

chage

Gestiona la información de caducidad de contraseña de un usuario.

Sintaxis:


# chage [opciones] usuario
      

Ejemplo — ver información de caducidad:


# chage -l juan
      

Muestra la fecha del último cambio de contraseña, fecha de expiración, días de aviso, etc.

Ejemplo — forzar cambio en el próximo login:


# chage -d 0 juan
      

El usuario deberá cambiar su contraseña la próxima vez que inicie sesión.

Ejemplo — establecer caducidad de 90 días:


# chage -M 90 juan
      

Opciones comunes:

  • -l → lista la información de caducidad del usuario
  • -d → establece la fecha del último cambio de contraseña (0 = fuerza cambio)
  • -M → días máximos de validez de la contraseña
  • -m → días mínimos entre cambios de contraseña
  • -W → días de aviso antes de que expire
  • -E → fecha de expiración de la cuenta (YYYY-MM-DD)

/etc/login.defs

Archivo de configuración que define las políticas por defecto para nuevos usuarios: longitud mínima de contraseña, caducidad, rangos de UID/GID, etc.

Parámetros relevantes:


PASS_MAX_DAYS   90
PASS_MIN_DAYS   7
PASS_WARN_AGE   14
PASS_MIN_LEN    8
UID_MIN         1000
UID_MAX         60000
      
  • PASS_MAX_DAYS → días máximos de validez de la contraseña
  • PASS_MIN_DAYS → días mínimos entre cambios
  • PASS_WARN_AGE → días de aviso antes de que expire
  • PASS_MIN_LEN → longitud mínima de la contraseña
  • UID_MIN / UID_MAX → rango de UIDs para usuarios normales

Estos valores solo afectan a usuarios creados a partir de ese momento, no a los ya existentes. Para cambiar políticas de usuarios ya creados hay que usar chage.

Gestión de políticas de contraseñas y caducidad de cuentas.

Variables de entorno y archivos de login (.bashrc, .profile).

Índice de la sección

Índice del curso