Cómo listar usuarios en Linux

Cómo listar usuarios en Linux

El sistema operativo Linux ofrece comandos para crear y eliminar usuarios y verificar cuáles están conectados. Sin embargo, no hay ningún comando para listar usuarios, conectados o no, en el sistema.

Aún así, hay un par de maneras de lograr esto. Si desea aprender cómo listar usuarios en Linux, siga nuestros pasos a continuación.

Por qué debería revisar su lista de usuarios de Linux

Hay varias razones por las que es posible que desee enumerar usuarios en Linux. Es una buena práctica en términos de encontrar y eliminar cuentas no utilizadas, por ejemplo. Desde el punto de vista de la seguridad, también es una buena manera de asegurarse de que no haya intrusos creando cuentas de usuario.

Esta es una tarea administrativa que probablemente deberías hacer al menos una vez al mes. Si está ejecutando un servidor Linux corporativo, es posible que desee hacerlo con más frecuencia.

Usuarios listados en /etc/passwd

Todas las cuentas de usuario de su servidor Linux tienen entradas en el archivo /etc/passwd . Cada línea representa un usuario y tiene siete campos separados por dos puntos. Los campos proporcionan información sobre el usuario.

  • Nombre de usuario.
  • Contraseña cifrada ( x indica que la contraseña está realmente en /etc/shadow )
  • Número de identificación de usuario (UID).
  • Número de ID de grupo del usuario (GID).
  • Nombre completo del usuario, si aparece.
  • Directorio de inicio del usuario.
  • shell de inicio de sesión

Entonces, eso nos lleva a una forma de enumerar todos los usuarios en Linux. Puede usar el comando less para ver el archivo completo, una pantalla a la vez.

less /etc/passwd

Cómo listar usuarios en Linux

Si desea verificar si un usuario en particular existe en el sistema Linux, ese es un buen uso para el comando grep :

less passwd | grep jeff

Cómo listar usuarios en Linux

Si no obtiene ningún resultado, ese usuario no existe en el servidor Linux.

Aún así, eso es mucha información. Puede recortarlo solo al nombre de usuario, por ejemplo, usando los comandos awk o cut :

awk -F: '{print $1}' /etc/passwd cut -d: -f1 /etc/passwd

Cómo listar usuarios en Linux

Eso tiende a ser mucho más fácil de entender, pero aún lo deja viendo todas las cuentas de usuario basadas en el sistema mezcladas con sus usuarios humanos.

Cómo usar getent para listar usuarios

Otro comando, getent , es mucho más útil. Muestra entradas de cualquier base de datos configurada en el archivo /etc/nsswitch.conf de su servidor . Uno de ellos es la base de datos passwd . Para usar getent para mostrar una lista de todos los usuarios de Linux, funciona así:

getent passwd

El resultado se ve exactamente igual que cuando se usa el comando less , pero enumera los usuarios de LDAP en el sistema Linux. Una vez más, nuestros comandos awk y cut pueden ayudar a ver solo el primer campo, los nombres de usuario.

Si desea verificar si un usuario en particular existe en el sistema Linux, getent lo hace fácil:

getent passwd jeff

Nuevamente, ninguna salida de este comando le dice que el usuario no existe.

Otro excelente uso de getent es averiguar cuántas cuentas de usuario existen en el servidor. Esto se hace canalizando la salida de getent a través del comando wc , así:

getent passwd | wc -l

Cómo listar usuarios en Linux

Como puede ver, mi sistema Linux tiene un total de 48 cuentas. Bastante interesante, ya que soy el único que lo usa, pero eso solo muestra cuántas cuentas del sistema se crean en Linux.

Eliminar usuarios del sistema de usuarios normales

A los ojos de Linux, no hay diferencia entre un usuario del sistema y uno humano. Cada vez que instala el sistema operativo, crea una cantidad de usuarios del sistema. Se crean otros usuarios del sistema para varios paquetes, como software de servicio web o de correo.

Entonces, ¿cómo puede enumerar solo a los usuarios humanos regulares en el sistema Linux? La clave aquí es comprender que cuando crea un usuario regular, su UID se asigna dentro de un cierto rango de números. Al verificar el archivo /etc/login.defs , podemos determinar el rango de valores de UID disponibles para cuentas de usuarios regulares.

grep -E '^UID_MIN|^UID_MAX' /etc/login.defs

Cómo listar usuarios en Linux

Según el resultado, sé que los usuarios normales deben tener un UID entre 1000 y 60000. A partir de esto, puedo construir una consulta getent que solo mostrará a los usuarios normales.

getent passwd {1000..60000}

Cómo listar usuarios en Linux

Tenga en cuenta que getent parecerá bloquearse incluso después de mostrar su salida. Puede presionar Ctrl-C para finalizar el proceso o esperar hasta que finalice. Por lo general, lleva menos de 15 segundos completar la búsqueda en la base de datos de contraseñas .

Una versión más genérica de este comando tiene en cuenta diferentes valores de UID_MIN y UID_MAX que podrían usar varios servidores.

eval getent passwd {$(awk '/^UID_MIN/ {print $2}' /etc/login.defs)..$(awk '/^UID_MAX/ {print $2}' /etc/login.defs)}

En ese comando, estamos aprovechando la capacidad de Linux para hacer varias cosas a la vez. Los comandos awk obtienen los valores UID_MIN y UID_MAX , luego los usan dentro del comando getent .

Ahora, digamos que todo lo que queremos son los nombres de usuario. Una vez más, canalizamos nuestra salida a través del comando de corte , así:

eval getent passwd {$(awk '/^UID_MIN/ {print $2}' /etc/login.defs)..$(awk '/^UID_MAX/ {print $2}' /etc/login.defs)} | cut -d: -f1

Cómo listar usuarios en Linux

Este comando puede tardar de 10 a 15 segundos en completarse, así que tenga paciencia.

Gestión eficaz de sus usuarios de Linux

Es importante realizar un seguimiento de las cuentas de usuario que existen en su sistema Linux. Cuando sepa que un empleado se ha ido, sea rápido para eliminar su cuenta de usuario. Enumerar periódicamente a sus usuarios de Linux le ayudará a asegurarse de detectar cualquier cuenta que pueda haberse quedado.

Al mismo tiempo, asegúrese de estar al tanto de las políticas de seguridad de contraseñas y anime a sus usuarios a cambiar sus contraseñas regularmente.

Tags: #HOW-TO

Jengibre 2.7.53.0

Jengibre 2.7.53.0

Ginger es un corrector ortográfico y gramatical gratuito.

Bloques

Bloques

Blocks es un juego intelectual para que los alumnos de 3º de primaria practiquen sus habilidades de detección y visión y está incluido por los profesores en el programa de apoyo a la enseñanza de TI.

Prezi 6.26

Prezi 6.26

Prezi es una aplicación gratuita que te permite crear presentaciones digitales, tanto online como offline.

Matemáticas

Matemáticas

Mathway es una aplicación muy útil que puede ayudarte a resolver todos aquellos problemas matemáticos que requieren una herramienta más compleja que la calculadora integrada en tu dispositivo.

Presentador de Adobe

Presentador de Adobe

Adobe Presenter es un software de aprendizaje electrónico lanzado por Adobe Systems y disponible en la plataforma Microsoft Windows como un complemento de Microsoft PowerPoint.

Tucán 2.3.0

Tucán 2.3.0

Toucan es una plataforma tecnológica educativa. Le permite aprender un nuevo idioma mientras navega por sitios web comunes y cotidianos.

ESetViet 24.2

ESetViet 24.2

eNetViet es una aplicación que ayuda a conectar a los padres con la escuela donde estudian sus hijos para que puedan comprender claramente la situación de aprendizaje actual de sus hijos.

Duolingo

Duolingo

Duolingo - Aprende Idiomas Gratis, o simplemente Duolingo, es un programa educativo que te permite aprender y practicar muchos idiomas diferentes.

Escritura rápida

Escritura rápida

RapidTyping es una herramienta de entrenamiento de teclado conveniente y fácil de usar que lo ayudará a mejorar su velocidad de escritura y reducir los errores ortográficos. Con lecciones organizadas para muchos niveles diferentes, RapidTyping le enseñará cómo escribir o mejorar sus habilidades existentes.

Matemáticas 7.4.10.53

Matemáticas 7.4.10.53

MathType es un software de ecuaciones interactivas del desarrollador Design Science (Dessci), que le permite crear y anotar notaciones matemáticas para procesamiento de textos, presentaciones, aprendizaje electrónico, etc. Este editor también se utiliza para crear documentos TeX, LaTeX y MathML.