Laptop Linux que muestra un indicador de bash

Cómo usar el último comando en Linux

Fatmawati Achmad Zaenuri / Shutterstock.com

¿Quién, cuándo y de dónde? Las buenas prácticas de seguridad establecen que debe saber quién ha accedido a su computadora Linux. Te mostramos cómo.

El archivo wtmp

Linux y otros sistemas operativos similares a Unix, como MacOS, son muy buenos para iniciar sesión. En algún lugar de las entrañas del sistema hay un diario para casi cualquier cosa que se te ocurra. El archivo de registro que nos interesa se llama wtmp. La «w» podría significar «cuándo» o «quién»; nadie parece estar de acuerdo. La parte «tmp» probablemente significa «temporal», pero también puede significar «marca de tiempo».

Lo que si sabemos es que wtmp es un registro que captura y registra todos los eventos de inicio y cierre de sesión. Examinando los datos en el wtmp log es un paso básico para adoptar un enfoque centrado en la seguridad para las tareas de administración de su sistema. Para una computadora doméstica típica, esto puede no ser tan crítico desde el punto de vista de la seguridad, pero es bueno poder ver el uso combinado de su computadora.

A diferencia de muchos archivos de registro basados ​​en texto en Linux, wtmp es un archivo binario. Para acceder a los datos que contiene, necesitamos utilizar una herramienta diseñada para esta tarea.

Esta herramienta es la last pedido.

El ultimo pedido

los last el comando lee datos de wtmp log y lo muestra en una ventana de terminal.

Si escribe last y presione enter, esto mostrar todos los registros del archivo de registro.

last

Cada grabación de wtmp aparece en la ventana de la terminal.

De izquierda a derecha, cada línea contiene:

  • El nombre de usuario de la persona que inició sesión.
  • La terminal a la que estaban conectados. Una entrada de terminal de :0 significa que iniciaron sesión en la propia computadora Linux.
  • La dirección IP de la máquina a la que estaban conectados.
  • La hora y la fecha de la conexión.
  • La duración de la sesión.

La última línea nos dice la fecha y hora de la primera sesión registrada en el registro.

Cada vez que se inicia la computadora, se ingresa una entrada de inicio de sesión para el usuario ficticio «reiniciar» en el registro. El campo terminal se reemplaza por la versión del kernel. La duración de la sesión de inicio de sesión para estas entradas representa el tiempo de actividad de la computadora.

Visualización de un número específico de filas

Utilizando el last El comando por sí solo produce un volcado de todo el registro, la mayor parte pasando frente a la ventana de la terminal. La parte que permanece visible son los datos más antiguos del registro. Probablemente esto no sea lo que querías ver.

Puedes decir last para darle un número específico de líneas de salida. Para hacer esto, especifique el número de líneas que desea en la línea de comando. Tenga en cuenta el guión. Para ver cinco líneas, debe escribir -5 y no 5:

last -5

Esto da las primeras cinco líneas del registro, que son los datos más recientes.

Visualización de nombres de red para usuarios remotos

los -d (Sistema de nombres de dominio) indica last para intentar resolver las direcciones IP de los usuarios remotos en una máquina o en un nombre de red.

last -d

No siempre es posible last para convertir la dirección IP en un nombre de red, pero el comando lo hará cuando sea posible.

Ocultar direcciones IP y nombres de red

Si no está interesado en la dirección IP o el nombre de la red, utilice el -R (sin nombre de host) para eliminar este campo.

Debido a que esto proporciona una salida más nítida sin envolturas feas, esta opción se usó en todos los siguientes ejemplos. Si usaste last para intentar identificar una actividad inusual o sospechosa, no elimine este campo.

Seleccionar grabaciones por fecha

Puedes usar el -s (desde) para restringir la salida y mostrar solo los eventos de inicio de sesión que han ocurrido desde una fecha específica.

Si solo desea ver los eventos de inicio de sesión que ocurrieron a partir del 26 de mayo de 2019, usaría el siguiente comando:

last -R -s 2019-05-26

La salida muestra registros con eventos de conexión que ocurrieron desde las 12:00 a.m. del día especificado, hasta los registros más recientes en el archivo de registro.

Buscar hasta una fecha de finalización

Puedes usar el -t (hasta) para especificar una fecha de finalización. Esto le permite seleccionar un conjunto de registros de conexión que ocurrieron entre dos fechas de interés.

Este comando pregunta last para recuperar y mostrar registros de inicio de sesión desde las 00:00 (amanecer) del día 26 hasta las 00:00 (amanecer) del día 27. Esto reduce la lista a las sesiones de inicio de sesión que ocurrieron solo el día 26.

Formatos de fecha y hora

Puede utilizar tanto las horas como las fechas con el -s y -t opción.

Los diferentes formatos de hora que se pueden utilizar con el last Las opciones que usan fechas y horas son (supuestamente):

  • AAAAMMDDhhmmss
  • AAAA-MM-DD hh: mm: ss
  • AAAA-MM-DD hh: mm – los segundos se establecen en 00
  • AAAA-MM-DD: la hora se establece en 00:00:00
  • hh: mm: ss – la fecha se establece en hoy
  • hh: mm: la fecha se establecerá en hoy, los segundos en 00
  • Ahora
  • ayer – la hora está configurada en 00:00:00
  • hoy: la hora está configurada en 00:00:00
  • mañana: la hora se establece en 00:00:00
  • + 5min
  • -5 dias

¿Por qué «supuestamente»?

El segundo y tercer formato de la lista no funcionaron mientras buscaba este artículo. Estos comandos se han probado en distribuciones de Ubuntu, Fedora y Manjaro. Estos son derivados de las distribuciones Debian, RedHat y Arch, respectivamente. Esto cubre todas las principales familias de distribución de Linux.

last -R -s 2019-05-26 11:00 -t 2019-05-27 13:00

Como puede ver, el comando no devolvió ningún registro.

El uso del primer formato de fecha y hora de la lista con la misma fecha y hora que el comando anterior devuelve los registros:

last -R -s 20190526110000 -t 20190527130000

Búsqueda por unidades relativas

También especifica períodos de tiempo medidos en minutos o días, en relación con la fecha y hora actuales. Aquí estamos solicitando registros desde hace dos días hasta hace un día.

last -R -s -2days -t -1days

Ayer, hoy y ahora

Puedes usar yesterday y tomorrow como un atajo para la fecha de ayer y la fecha de hoy.

last -R -s yesterday -t today

No es que no incluya grabaciones por hoy. Este es el comportamiento esperado. El comando solicita registros desde la fecha de inicio hasta la fecha de finalización. No incluye registros de la fecha de finalización.

los now La opción es una abreviatura de «hoy en el momento presente». Para ver los eventos de conexión que han ocurrido desde las 00:00 (amanecer) hasta el momento en que emite el comando, use este comando:

last -R -s today -t now

Esto mostrará todos los eventos de conexión en el momento actual, incluidos los que todavía están conectados.

lanzamiento de los últimos -R -s today -t now

La opción actual

los -p La opción (presente) le permite saber quién inició sesión en un momento dado.

No importa cuándo iniciaron sesión o cuándo salieron, pero si iniciaron sesión en la computadora a la hora que especifique, se incluirán en la lista.

Si especifica una hora sin fecha last supongo que te refieres a «hoy».

last -R -p 09:30

Las personas que todavía están conectadas (obviamente) no tienen un retraso de desconexión; se describen como still logged in . Si la computadora no se ha reiniciado desde la hora especificada, aparecerá como still running.

Salida del último -R -p 09:30

Si está utilizando el now taquigrafía con el -p (presente) puede saber quién está conectado cuando emite el comando.

last -R -p now

Este es un camino un poco largo para darse cuenta de lo que se puede lograr usando el who pedido.

El comando lastb

los lastb Vale la pena mencionar el orden. Lee datos de un registro llamado btmp. Hay un poco más de consenso sobre el nombre de este periódico. La «b» significa malo, pero la parte «tmp» todavía está en debate.

lastb enumera los intentos de conexión erróneos (fallidos). Acepta las mismas opciones que last. Dado que se trata de intentos de inicio de sesión fallidos, todas sus entradas tendrán una duración de 00:00.

Tienes que usar sudo con lastb.

sudo lastb -R

La última palabra al respecto

Saber quién inició sesión en su computadora Linux, y cuándo y dónde es información útil. Al combinar esto con los detalles de los intentos fallidos de inicio de sesión, tiene los primeros pasos para investigar el comportamiento sospechoso.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Experto Geek - Tu Guía en Tendencias Tecnológicas