Buscar

Linux: Caducidad contraseña

En sistemas Linux, también existe la caducidad de la contraseña.

Es una buena idea tener controladas aquellas cuentas de usuario que se les puede caducar la contraseña.

Dependiendo de la distribución de Linux empleada, la caducidad de contraseña estará o no activada por defecto.

Los valores de caducidad de contraseña se guardan el el fichero shadow del sistema, ubicado en el directorio /etc.

El fichero shadow contiene las contraseñas cifradas de las cuentas así como las propiedades de cada cuenta.

Para ver o cambiar los valores de caducidad de la contraseña, podemos utilizar el comando chage. (Change age).

Ejemplo: Creación de un usuario (sysadmit), asignación de password y verificación de la caducidad:

[root@LINUX1 ~]# useradd sysadmit

[root@LINUX1 ~]# passwd sysadmit
Changing password for user sysadmit.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

[root@LINUX1 ~]# chage --list sysadmit
Last password change                                    : Jul 15, 2017
Password expires                                        : never
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 0
Maximum number of days between password change          : 99999
Number of days of warning before password expires       : 7


Veamos ahora cómo cambiar la el valor de caducidad de contraseña:

En el siguiente ejemplo, estableceremos la caducidad de la contraseña a 15 días a partir de la fecha actual:


[root@LINUX1 ~]# date
Sat Jul 15 12:37:27 CEST 2017

[root@LINUX1 ~]# chage -M 15 sysadmit

[root@LINUX1 ~]# chage --list sysadmit
Last password change                                    : Jul 15, 2017
Password expires                                        : Jul 30, 2017
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 0
Maximum number of days between password change          : 15
Number of days of warning before password expires       : 7


Veamos otros ejemplos de uso del comando chage:

1) Linux: Caducidad contraseña: Establecer una fecha concreta de expiración de una cuenta (Account expires):

[root@LINUX1 ~]# chage -E "2018-07-30" sysadmit

[root@LINUX1 ~]# chage --list sysadmit
Last password change                                    : Jul 15, 2017
Password expires                                        : Jul 30, 2017
Password inactive                                       : never
Account expires                                         : Jul 30, 2018
Minimum number of days between password change          : 0
Maximum number of days between password change          : 15
Number of days of warning before password expires       : 7

2)
Linux: Caducidad contraseña: Forzar que una cuenta de bloquee al cabo de X días de de inactividad. 

Por ejemplo, bloqueo de cuenta al cabo de 15 días (Password inactive):

[root@LINUX1 ~]# chage -I 15 sysadmit

[root@LINUX1 ~]# chage --list sysadmit
Last password change                                    : Jul 15, 2017
Password expires                                        : Jul 30, 2017
Password inactive                                       : Aug 14, 2017
Account expires                                         : Jul 30, 2018
Minimum number of days between password change          : 0
Maximum number of days between password change          : 15
Number of days of warning before password expires       : 7

3)
Linux: Caducidad contraseña: Deshabilitar por completo la caducidad de contraseña y de cuenta:

Parámetros del comando chage:

-m 0: Número mínimo de dias para el cambio de contraseña.

-M 99999: Número máximo de dias para un cambio de contraseña.

-I -1: Establecemos: "Password inactive" a nunca.

-E -1: Establecemos: "Account expires" a nunca.

[root@LINUX1 ~]# chage -m 0 -M 99999 -I -1 -E -1 sysadmit

[root@LINUX1 ~]# chage --list sysadmit
Last password change                                    : Jul 15, 2017
Password expires                                        : never
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 0
Maximum number of days between password change          : 99999

Number of days of warning before password expires       : 7


4)
Linux: Caducidad contraseña: Ver caducidad de contraseña con el fichero /etc/shadow:

[root@LINUX1 ~]# chage -I 16 sysadmit

[root@LINUX1 ~]# cat /etc/shadow|grep sysadmitsysadmit:$6$pzFhj/Rn$E5xJTRJFsBRlH6LXD5bvTZst/s65PuiBH1UifxHf/16QFcL4kTTFT4q9xjUgNv.YKq8hH.J0EVHSiIeL3SU9b1:17362:0:99999:7:16::


Con el comando: chage, configuramos el bloqueo de cuenta al cabo de 16 días (Password inactive).

Si repasamos el contenido del fichero /etc/shadow, buscando la cadena del nombre del usuario, veremos como aparece un campo a: 16

Linux: Caducidad contraseña: Consideraciones adicionales

1) Si queremos impedir el acceso a un usuario, una posibilidad es hacer que la contraseña caduque y otra es deshabilitar el usuario:

Linux: Deshabilitar usuario (SYSADMIT.com) 

2) Con los comandos passwd y usermod, también podemos establecer la configuración de caducidad de contraseña.

4 comentarios: