Conocer los usuarios que tienen acceso a un sistema Linux es fundamental para mantener la seguridad y la organización, algo esencial que todo administrador de sistemas debería conocer. Poder listar estos usuarios se puede realizar mediante diferentes comandos o maneras, y aquí te mostraremos los pasos para usar cada una.
Índice de contenidos
Consideraciones previas
En los sistemas operativos basados en Linux, existen diferentes tipos de usuarios con diversos roles y privilegios de acceso. Esto ocurre en otros sistemas operativos, como Microsoft Windows, con el Administrador y los usuarios normales; en otros Unix con root, toor, en algún BSD; o el Single-User y demás usuarios en macOS, etc. Si nos centramos en Linux, tenemos:
Usuario root
El usuario root es el superusuario del sistema, con acceso y control total sobre todos los aspectos del sistema operativo, y el que puede acceder al directorio raíz o /. Posee privilegios ilimitados para crear, modificar, eliminar archivos y directorios, configurar el sistema, instalar software y administrar usuarios. Por otro lado, su directorio personal es /root.
Como se suele decir, «un gran poder conlleva una gran responsabilidad», y debido a su poder elevado, el uso inadecuado del usuario root puede comprometer la seguridad y estabilidad del sistema. Se recomienda utilizar el usuario root solo para tareas administrativas específicas y evitar su uso diario para actividades comunes. Es más, lo ideal es desactivar root y simplemente usar sudo para estas operaciones.
Usuarios estándar o locales:
Los usuarios estándar son cuentas individuales creadas para usuarios específicos del sistema. Estos usuarios tienen acceso limitado a sus propios archivos y directorios, y generalmente no pueden realizar acciones que afecten a todo el sistema o a otros usuarios. En este caso, el directorio personal es /home/usuario. Se utilizan para el uso diario del sistema…
Usuarios virtuales o del sistema
No son usuarios humanos como los anteriores, sino que son cuentas creadas automáticamente por el sistema para ejecutar servicios específicos o paquetes de software. Estos usuarios no tienen acceso interactivo al sistema y solo se utilizan para la ejecución de tareas automatizadas o procesos en segundo plano. Deben estar ahí para que funcionen algunos paquetes o funciones. Algunos ejemplos son sshd para el servicio SSH, apache para el servidor web Apache, mysql para MySQL, etc.
Generalmente, un usuario normal tiene un UID mayor o igual a 1000. Los usuarios del sistema suelen usar un identificador de usuario igual o inferior a 1000.
Si te preocupan los temas de seguridad, también deberías leer nuestra guía sobre VPNs
Cómo ver la lista de usuarios en Linux
Para finalizar, si quieres ver la lista de usuarios en un sistema Linux, se puede hacer de varias formas, tú puedes elegir las que prefieras:
Usando el concatenador
Si quieres usar el concatenador, es decir, el comando cat, puedes listar los usuarios desde el terminal de esta forma:
cat /etc/passwd
De esta forma se consigue un listado rápido y sencillo, pero no filtra por usuarios o grupos, simplemente muestra en la salida el contenido de este archivo donde se almacenan estos usuarios.
También te recomiendo ver más sobre las mejores distros Linux para seguridad y privacidad
Con AWK
Otra alternativa que tienes para listar los usuarios Linux sin distracciones, como el resto de columnas del archivo passwd, para que solo aparezcan los usuarios, es:
awk -F':' '{print $1}' /etc/passwd
Con less o more
Si quieres hacerlo más interactivo en su salida, puedes usar estos comandos:
less /etc/passwd more /etc/passwd
Comando compgen
Otra alternativa es usar el comando compgen, que muestra también la lista de usuarios sin ningún tipo de información adicional:
compgen -u
No olvides comentar con dudas o sugerencias…