En la informática Linux, la seguridad del sistema es una prioridad máxima. Los usuarios estándar o los administradores del sistema siempre toman ciertas precauciones para garantizar la seguridad del sistema y sus usuarios.
Hemos cubierto muchos temas relacionados con la seguridad del sistema (obtenga los enlaces al final de este artículo). Sin embargo, hoy nos centraremos en asegurar las cuentas de los usuarios.
Tener una cuenta de usuario de Linux significa que debe asegurarse de que su cuenta no tenga una contraseña para que cualquiera pueda acceder fácilmente a ella.
No tienes que volver a ingresar tu contraseña, no te preocupes, puedes hacerlo colocando (.
) al principio de sus nombres.
Eso es lo que estás haciendo, ¿verdad? Incorrecto, si es un usuario normal o un administrador del sistema, ahora debe seguir esta guía para verificar todos los usuarios del sistema con contraseñas vacías.
Pero antes de saltar al tema de encontrar usuarios con contraseñas vacías, necesita saber /etc/shadow
Archivo donde se almacenan las contraseñas.
Tabla de Contenidos
¿Qué son los archivos shadow en Linux?
Los archivos shadow en Linux se utilizan para almacenar información de contraseñas de usuario en varios campos, cada uno separado por dos puntos. Este archivo es propiedad y está administrado por root o superusuario como se muestra a continuación.
[email protected]:~$ ls -l /etc/shadow
-rw-r----- 1 root root 1613 Sep 5 14:40 /etc/shadow
La línea a continuación representa la representación de la cuenta de un solo usuario en el archivo shadow.
trendoceans:$y$j9T$tHnf4rJC7ssYEcUF9SNkaY8yRwxh/:19162:0:99999:7:::
A continuación se muestran los detalles de cada campo.
- nombre de usuario: Una cuenta de usuario válida que existe en el sistema y se utiliza para iniciar sesión.
- clave: Contraseña cifrada del usuario en formato hash. Si al usuario no se le ha asignado ninguna contraseña, el valor de este campo queda en blanco. De lo contrario, si la cuenta de usuario está bloqueada, (
!
) será puesto. - último cambio de contraseña: Este campo muestra cuándo se cambió por última vez la contraseña del usuario, expresada en días desde el 1 de enero de 1970 (hora Unix).valor
Indica que el usuario debe cambiar la contraseña la próxima vez que inicie sesión y un campo vacío indica que la función de caducidad de la contraseña está deshabilitada.
- en el límite más bajo: este campo contiene el número de días que quedan antes de que el usuario pueda cambiar su contraseña. Si este campo está vacío, el usuario no tiene una edad mínima de contraseña.Sin embargo, puedes usar
chage
Ordenar. - máximo: Esto muestra el número máximo de días que una contraseña será válida después de que este usuario se vea obligado a cambiarla.Este
el valor representa una función deshabilitada.
- advertir: Indica el número de días que quedan para mostrar un mensaje de advertencia a los usuarios sobre el vencimiento de su contraseña. Por lo tanto, los usuarios pueden actualizar sus contraseñas antes de que caduquen para evitar el bloqueo de la cuenta.
- No activo: El número de días que el usuario puede iniciar sesión después de que caduque la contraseña.
- madurez: Muestra el número de días que ha caducado la cuenta de usuario en formato UNIX.
Para encontrar cuentas de usuario con contraseñas en blanco o bloqueadas, debe concentrarse en el segundo campo. Entonces, veamos cuáles son las diferentes formas de encontrar una contraseña vacía en Linux y resolverla.
Encuentra cuentas de usuario con contraseña vacía en Linux
Le mostraré tres formas de encontrar cuentas de usuario con contraseñas vacías en un sistema Linux:
Encuentra todas las cuentas de usuario con contraseñas vacías en Linux
Usando el programa awk de muestra, puede verificar si el segundo campo en el archivo shadow está vacío. Si la condición es verdadera, devolverá el mensaje especificado.
[email protected]:~$ sudo awk -F":" '($2 == "") {print $1 ": has no password."}' /etc/shadow
james: has no password.
david: has no password.
puedes usarlo getent
comando para hacer el mismo trabajo de encontrar cuentas de usuario con contraseñas vacías en Linux.
[email protected]:~$ sudo getent shadow | grep '^[^:]*::' | cut -d: -f1
james
david
El método anterior encontrará y enumerará todos los usuarios existentes en el sistema con contraseñas vacías.
Encuentra cuentas de usuario específicas con contraseñas vacías en Linux
puedes usarlo passwd
mando junto con -S
Bandera de la cuenta designada username
Como parámetro para comprobar si hay una contraseña vacía.
[email protected]:~$ sudo passwd -S james
james NP 09/05/2022 0 99999 7 -1
El comando anterior dará el estado de la cuenta en tres valores posibles:
- li jin: La cuenta de usuario está bloqueada.
- notario público: La cuenta de usuario no tiene contraseña.
- posdata: La cuenta de usuario tiene una contraseña válida.
Para Debian, en lugar de LP, notario públicoo PD, obtendrás el valor largo, nortey fósforo Formato.
Encuentra cuentas de usuario bloqueadas
Cada vez que crea una cuenta usando useradd
comando y no establezca una contraseña de cuenta, su cuenta será bloqueada.
Ejecute el siguiente comando para Encuentra todas las cuentas de usuario bloqueadas En Linux:
[email protected]:~$ sudo awk -F":" '($2 == "!") {print $1 ": is lock user account."}' /etc/shadow
sam: is lock user account.
Ejecute el siguiente comando para Encuentre una cuenta de usuario específica que esté bloqueada En Linux:
[email protected]:~$ sudo passwd -S sam
sam L 09/05/2022 0 99999 7 -1
Este largo o li jin Indica que la cuenta de usuario está bloqueada.
Configuración de contraseñas de usuario en Linux
A menos que comparta su sistema con otros, no tener una contraseña (o bloquear su cuenta) no es una amenaza grave para la informática personal. Sin embargo, se convierte en un objetivo para los atacantes o administradores de sistemas en la nube.
Para evitar este problema, puede establecer una contraseña segura para una contraseña vacía o usar sudo passwd username
comando, como se muestra a continuación.
[email protected]:~$ sudo passwd -S james # Checking the account state before updating password
james NP 09/05/2022 0 99999 7 -1
[email protected]:~$ sudo passwd jame # Updating james account password
New password:
Retype new password:
passwd: password updated successfully
[email protected]:~$ sudo passwd -S james # Status after updating password
james P 09/05/2022 0 99999 7 -1
Para cuentas con usuarios bloqueados, siga los mismos pasos anteriores para desbloquear la cuenta y protegerla con una contraseña segura.
Bloquear cuentas de usuario en Linux
Si desea dejar una cuenta bloqueada (lo que evitará que haga muchas cosas) y siga nuestra guía para desbloquearla accidentalmente.
entonces usa passwd
comando con -l
Bandera de la cuenta designada username
Como sigue.
[email protected]:~$ sudo passwd -S sam # Before locking the user account
sam P 09/05/2022 0 99999 7 -1
[email protected]:~$ sudo passwd -l sam # Locking the user account
passwd: password expiry information changed.
[email protected]:~$ sudo passwd -S sam # Checking the status after locking the user account
sam L 09/05/2022 0 99999 7 -1
Eso es todo hasta ahora. Como se prometió, aquí hay algunos enlaces para hacer que su sistema sea más seguro.
Marque nuestro sitio web y suscríbase a nuestro boletín para estar al tanto de las actualizaciones e información de seguridad de Linux.
Si tiene alguna pregunta o inquietud sobre este tema, no dude en hacérnosla saber en la sección de comentarios.
Mente técnica innovadora con 12 años de experiencia trabajando como programador informático, desarrollador web e investigador de seguridad. Capacidad para utilizar diversas tecnologías y soluciones de software, así como gestionar bases de datos.