who: La herramienta esencial para conocer usuarios conectados en Linux

En el vasto mundo de Linux, contamos con una multitud de comandos que nos permiten interactuar y obtener información del sistema de formas muy específicas. Uno de estos comandos, que resulta esencial para administradores y entusiastas, es who. Esta simple pero potente herramienta nos informa sobre quién está conectado a nuestro sistema en tiempo real. Si bien puede parecer básico, su utilidad es innegable, especialmente en entornos donde es crucial saber quién tiene acceso. En este artículo, exploraremos el comando who en detalle, su utilidad y cómo sacarle el máximo provecho en sistemas Ubuntu y Debian.

Desglosando el comando who

El comando who nos brinda una vista instantánea de los usuarios conectados, mostrando detalles relevantes de sus sesiones. Pero, ¿qué tipo de información proporciona exactamente y cómo podemos interpretarla?

Ejecución básica y salida estándar

Al ejecutar simplemente who en la terminal, nos enfrentamos a una salida que lista los usuarios conectados:

$ who
juan     tty1         2023-04-05 10:05 (:0)
marta    pts/0        2023-04-05 10:20 (192.168.1.10)

Aquí, cada línea representa una sesión y muestra:

  • Nombre del usuario: En este caso, «juan» y «marta».
  • Tipo de terminal: tty1 y pts/0. tty hace referencia a las consolas físicas, mientras que pts son terminales virtuales.
  • Fecha y hora de conexión: Indica cuándo se inició la sesión.
  • Origen de la conexión: Muestra desde dónde se conectó el usuario, ya sea una dirección IP o un descriptor como :0, que indica la primera sesión gráfica.

Opciones útiles

El comando who cuenta con algunas opciones que pueden enriquecer la información mostrada:

  • who -a: Muestra toda la información en un formato más detallado.
  • who -u: Incluye el tiempo de inactividad del usuario.
  • who -q: Solo muestra la lista de nombres de usuarios y el número total de usuarios conectados.

Diferenciando who de otros comandos relacionados

Linux ofrece otros comandos que también proporcionan información sobre los usuarios. Es fundamental entender las diferencias para elegir la herramienta adecuada según nuestras necesidades.

who vs w

Si bien ambos comandos muestran usuarios conectados, w proporciona detalles más extensos sobre lo que cada usuario está haciendo, mientras que who se centra en mostrar solo las sesiones.

who vs last

El comando last no muestra usuarios conectados en tiempo real. En su lugar, muestra un historial de las últimas conexiones y desconexiones al sistema.

who vs users

El comando users simplemente lista los nombres de los usuarios conectados sin detalles adicionales.

Aplicaciones prácticas y consideraciones de seguridad

Conocer quién está conectado es más que una simple curiosidad; puede tener importantes implicaciones de seguridad.

Monitoreo de accesos inusuales

Al revisar regularmente los usuarios conectados, podemos detectar accesos no autorizados o inusuales, lo que puede ser una señal de alerta sobre la seguridad del sistema.

Auditorías y registros

Para entornos empresariales o donde la seguridad es crítica, el comando who puede ser parte de rutinas de auditoría para llevar un registro de las conexiones.

Restricciones y permisos

Es posible limitar el acceso al comando who para garantizar que solo usuarios autorizados puedan ver quién está conectado. Las configuraciones de permisos adecuadas son cruciales en este aspecto.