Команда 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
В результате будет выведена информация за неделю. Также утилита выводит информацию о дате начала ведения журнала.