Introducción
Si ejecuta un sistema multiusuario, a menudo necesitará saber quién, cuándo y desde dónde se accedió a la máquina.
last
es una utilidad de línea de comandos que muestra información sobre las últimas sesiones de inicio de sesión de los usuarios del sistema. Es muy útil cuando necesita rastrear la actividad del usuario o investigar una posible violación de seguridad.
Este artículo explica cómo verificar quién está conectado al sistema usando el last
comando.
Cómo usar el último comando
La sintaxis del last
comando es la siguiente:
last [OPTIONS] [USER] [<TTY>...]
Cada vez que un usuario inicia sesión en el sistema, se escribe un registro para esa sesión en el /var/log/wtmp
. last
lee el wtmp
e imprime información sobre los inicios y cierres de sesión de los usuarios. Los registros se imprimen en orden inverso, comenzando por el más reciente.
Cuando last
sin opciones o argumentos, el resultado se ve así:
root pts/0 2.226.134.97 Tue Feb 25 20:12 still logged in
alice pts/0 2.226.134.97 Sat Feb 22 19:33 - 19:39 (00:06)
reboot system boot 4.19.0-6-amd64 Sat Feb 22 18:56 still running
wtmp begins Sun Jan 12 05:11:32 2020
Cada fila de salida contiene las siguientes columnas de izquierda a derecha:
- El nombre de usuario. Cuando el sistema se reinicia o se apaga, el
last
muestra los usuarios especiales dereboot
yshutdown
- El número en el que tuvo lugar la sesión.
:0
normalmente significa que el usuario estaba iniciando sesión en un entorno de escritorio. - La dirección IP o el nombre de host desde el que inició sesión el usuario.
- Las horas de inicio y finalización de la sesión.
- Duración de la sesión Si la sesión aún está activa o el usuario no se ha desconectado, el último mostrará información sobre ella en lugar de la duración.
Para limitar la salida a un usuario o tty específico, pase el nombre de usuario o tty como argumento al last
comando:
last alice
También puede especificar varios nombres de usuario y ttys como argumentos:
last alice root pts/0
Opciones del último comando
last
acepta varias opciones que le permiten limitar, formatear y filtrar la salida. En esta sección, cubriremos los más comunes.
Para especificar el número de líneas que desea imprimir en la línea de comando, pase el número precedido por un solo guión al last
comando. Por ejemplo, para imprimir solo las últimas diez sesiones de inicio de sesión, escriba:
last -10
Con la -p
( --present
), puede averiguar quién inició sesión en el sistema en una fecha específica.
last -p 2020-02-20
Utilice las --since
-s
(--since) y -t
( --until
) para indicar al last
que se muestren las líneas desde o hasta la hora especificada. Estas dos opciones se utilizan a menudo juntas para definir un intervalo de tiempo para el que desea recuperar información. Por ejemplo, para ver los registros de acceso del 15 de febrero al 22 de febrero, ejecute:
last -s 2020-02-15 -u 2020-02-22
El tiempo viene dado por las -t
-p
, -s
y -t y se puede especificar en los siguientes formatos:
YYYYMMDDhhmmss
YYYY-MM-DD hh:mm:ss
YYYY-MM-DD hh:mm (seconds will be set to 00)
YYYY-MM-DD (time will be set to 00:00:00)
hh:mm:ss (date will be set to today)
hh:mm (date will be set to today, seconds to 00)
now
yesterday (time is set to 00:00:00)
today (time is set to 00:00:00)
tomorrow (time is set to 00:00:00)
+5min
-5days
De forma predeterminada, last
no muestra los segundos y el año. Utilice la -F
, --fulltimes
para mostrar las horas y fechas completas de inicio y cierre de sesión:
last -F
La -i
( --ip
) last
a mostrar siempre la dirección IP y a -d
( --dns
) para mostrar los nombres de host:
last -i
Conclusión
El last
comando imprime información sobre las horas de inicio y cierre de sesión del usuario. Para obtener más información sobre el comando, escriba man last
:
man last