Команда lastb

Команда lastb представлена символьной ссылкой на утилиту last и позволяет задействовать данную утилиту для получения информации о неудачных попытках входа в систему. Утилита читает файл журнала /var/log/btmp и выводит информацию об именах пытавшихся войти в систему пользователей, использованных файлах терминалов, а также времени осуществления попыток входа.

Несмотря на всю очевидную полезность данной утилиты, она практически не используется обычными пользователями — современные окружения рабочих столов не записывают данные о неудачных попытках входа в систему в читаемый данной утилитой файл, а отправляют соотвествующую информацию напрямую в подсистему аудита безопасности (посредством Netlink-сокета), где она успешно теряется, так как для ее обработки должны использоваться системы обнаружения вторжений, которые устанавливаются обычными пользователями.

Базовый синтаксис команды выглядит следующим образом:

# lastb [параметры] [имя-пользователя] [имя-терминала]

Утилита поддерживает те же параметры, что и утилита last, причем многие из этих параметров предназначены для форматирования вывода. Наиболее важными параметрами являются произвольный числовой параметр, устанавливающий количество строк для вывода, а также параметры -s и -t, позволяющие выводить информацию о неудачных попытках входа в систему за заданный интервал времени.

Примеры использования

Создание файла журнала

Если файла журнала с указанным выше именем не существует, то журналирование неудачных попыток входа в систему попросту не осуществляется. Убедиться в отсутствии файла достаточно просто — нужно использовать команду без каких-либо параметров:

$ sudo lastb
lastb: невозможно открыть /var/log/btmp: Нет такого файла или каталога

В случае вывода аналогичного сообщения об ошибке пользователь может создать данный файл самостоятельно, просто использовав следующие команды:

$ sudo touch /var/log/btmp
$ sudo chown root:utmp /var/log/btmp
$ sudo chown 660 /var/log/btmp

Для проверки корректности создания файла достаточно снива использовать команду без каких-либо параметров:

$ sudo lastb

btmp begins Sat May 9 18:11:12 2020

Очевидно, что файл журнала был успешно создан и читается утилитой. Данный файл может читаться лишь суперпользователем, поэтому команда lastb и вызывается с привилегиями данного пользователя.

Вывод информации о неудачных попытках входа в систему

Для вывода информации о неудачных попытках входа в систему достаточно использовать команду без каких-либо дополнительных параметров за исключением параметра для ограничения количества выводимых строк:

$ sudo lastb -10

btmp begins Sat May 9 18:11:12 2020

Журнал пуст. Попробуем сгенерировать запись:

$ sudo login alex
Пароль: <неверный пароль>

Неверное имя пользователя
layla имя пользователя: ^C

Теперь снова проверим содержимое файла журнала:

$ sudo lastb
alex pts/0 Sat May 9 18:11 - 18:11 (00:00)

btmp begins Sat May 9 18:11:34 2020

Очевидно, что информация о неудачной попытке входа в систему успешно сохранена в файле.

Вывод информации о неудачных попытках входа в систему за выбранное время

Для указания интервала времени, в рамках которого были осуществлены интересующие вас неудачные попытки входа в систему, следует использовать параметры -s и -t. Например, посмотрим информацию о событиях за неделю (от 7 дней назад до текущего момента):

$ sudo lastb -s-7days -tnow
alex pts/0 Sat May 9 18:11 - 18:11 (00:00)

btmp begins Sat May 9 18:11:34 2020

В результате будет выведена информация за неделю. Также утилита выводит информацию о дате начала ведения журнала.