He estado trabajando en algunos procedimientos de refuerzo de seguridad para un cuadro de RedHat, y quería saber si sería posible evitar que un usuario cambie su contraseña, una vez que haya caducado.
Para uno de nuestros clientes, el requisito es que solo deben tener acceso al servidor a través de cuentas temporales, lo que significa que una vez que se crean las credenciales de usuario, la contraseña debe caducar en 4 horas, y una vez que la contraseña caduca, solo la raíz debe poder cambiarla. .
Para el primer requisito (las contraseñas expiran después de 4 horas), supongo que podría lograrse configurando passwordMaxAge = 144000 . Pero todavía no pude encontrar una manera de evitar que los usuarios cambien las contraseñas caducadas, sin desactivar la caducidad de la contraseña.
¿Alguien puede ayudar?
Respuestas:
En general, la caducidad de la contraseña se utiliza para obligar a los usuarios a cambiar sus contraseñas. Lo que parece que quieres hacer es bloquear la cuenta, lo que impide todo el inicio de sesión.
Lo que sugeriría que haga en su lugar es que, cuando cree la cuenta, también configure un trabajo que bloqueará la cuenta después de cuatro horas.
Por ejemplo:
(
chage -E
espera que las fechas de vencimiento se den en días, por lo que trabajamos alrededor de esto con un trabajo).fuente
at
teduserdel
, que tendría la ventaja de ordenar todas estas cuentas temporales para que no se queden para siempre.passwd -l temp813
que logrará lo mismo quechage -E 0 temp8143
.passwd -l
no evitará los inicios de sesión de clave ssh o los inicios de sesión de huellas digitales, por ejemplo, mientras que lochage -E 0
hará.Si elimina el bit setuid del comando passwd, solo root podrá usarlo. Esto también impedirá que los usuarios cambien la contraseña antes de que caduque, lo que de otro modo podría ser una forma de que los usuarios extiendan la cuenta por otras cuatro horas.
Root todavía puede cambiar cualquier contraseña:
fuente
passwd
alguna vez el sistema lo actualiza.