Cuando necesite aplicar cambios de contraseña para los usuarios en máquinas Linux, la herramienta chage de línea de comandos es imprescindible.

    Como administrador de Linux, probablemente esté acostumbrado a passwd, chown, chmod y chgrp….todos los comandos para administrar varios elementos de cuentas de usuario, archivos y carpetas. Hay otro comando que todos los administradores de Linux deben saber: chage (piense en cambiar la edad.

    Con el comando chage puede cambiar el número de días entre cambios de contraseña, establecer una fecha de expiración manual, listar la información de antigüedad de la cuenta y mucho más. Es una herramienta muy útil para cualquier administrador que quiera asegurarse de que sus usuarios estén al tanto de cambiar sus contraseñas regularmente.

    ¿Quieres un buen trabajo técnico? El informe dice que las habilidades en código abierto están más de moda que nunca (ZDNet)

    Instalación de chage

    Más información sobre ciberseguridad

    No es necesaria la instalación de esta herramienta, ya que se encuentra en su distribución de forma predeterminada. Como probablemente esperará, chage es una herramienta de línea de comandos, por lo que se le pedirá que trabaje dentro de una ventana de terminal.

    Usando chage

    La estructura básica para el comando chage es la siguiente:

    chage[opciones] NOMBRE DE USUARIO

    Puede elegir entre una gran cantidad de opciones, las más útiles de las cuales son las siguientes

    • -E Establezca la fecha de caducidad de una contraseña de usuario. La fecha se expresa en el formato AAAA-MM-DD.
    • -Establezca el número de días inactivos permitidos, después de que una contraseña expire, antes de que la cuenta se bloquee.
    • -Liste la información sobre la antigüedad de la cuenta.
    • -m Establezca el número mínimo de días permitidos entre cambios de contraseña. Configurar esta opción a 0 permite al usuario cambiar su contraseña en cualquier momento.
    • -M Establece el número máximo de días en los que una contraseña es válida.
    • -W Establezca el número de días de aviso antes de que un usuario deba cambiar su contraseña.

    Ejemplos de chage en acción

    Gestionaremos la contraseña del usuario Bethany. Primero, vamos a enumerar la información sobre la antigüedad de la cuenta de Bethany. Para ello, emitimos el comando:

    sudo chage -l bethany

    Este comando debería producir algo similar a la .

    Ahora vamos a establecer la contraseña de Bethany para que expire el 10 de julio de 2019. El comando sería:

    sudo chage -E 2019-07-10 betania

    Cuando ejecutamos chage -l bethany, vemos la fecha de expiración listada .

    Una mejor manera de establecer una fecha de expiración es establecer el número de días desde el último cambio de contraseña; esto permanecerá en efecto hasta que el administrador elimine o cambie esa opción. Supongamos que desea que se cambien las contraseñas cada 30 días: usted emitirá el comando:

    sudo chage -E 30 bethany

    La próxima vez que el usuario cambie su contraseña, los días intermedios se restablecerán, y tendrán un nuevo 30 días antes de que su contraseña expire.

    Si ha añadido una fecha de caducidad explícita, puede eliminarla con el comando:

    sudo chage -E -1 bethany

    Nuestro siguiente paso será avisar al usuario de que su contraseña caducará. De forma predeterminada, la advertencia se emitirá con siete días de antelación (esto sólo se establece una vez que se ha creado una fecha de caducidad para la contraseña o el número de días entre cambios de contraseña. Cambiemos esa advertencia a un día antes (porque ¿quién necesita más que eso?. Para definirlo, ejecute el comando:

    sudo chage -W 1 bethany

    Debería ver el cambio en los días de advertencia reflejado en la nueva salida .

    ¿Qué sucede cuando Bethany intenta iniciar sesión en una máquina una vez que su contraseña ha caducado? Si proviene de otra máquina, recibirá una advertencia clara .

    Bethany recibirá la misma advertencia en caso de que intente iniciar sesión en su escritorio también. Para rectificar eso, su contraseña debe ser cambiada.

    Puede establecer el número de días después de que una contraseña haya caducado antes de que se bloquee una cuenta. Una vez que una cuenta está bloqueada, sólo puede ser desbloqueada por un administrador. Para configurar esta opción, el comando tendría el siguiente aspecto:

    sudo chage -I 10 bethany

    Una vez que se haya emitido ese comando, la cuenta de Bethany se bloqueará 10 días después de que su contraseña haya expirado. Esta opción en particular no se muestra en el comando chage -l, por lo que el usuario no sabrá cuántos días tiene, después de que su contraseña haya expirado, antes de que la cuenta esté bloqueada.

    Hacer uso de chage

    Recomiendo encarecidamente a todos los administradores de Linux que se encarguen de la expiración de las contraseñas de los usuarios con el comando chage. La seguridad es una necesidad, y si los usuarios no cambian sus contraseñas regularmente, sus datos podrían estar en peligro. El comando chage ciertamente puede ayudarle a asegurar que esas contraseñas sean cambiadas.

    Véase también