Как получить количество “неудачных попыток входа с момента последнего успешного входа” в виде переменной?

Вопрос или проблема

Когда я вхожу на сервер, я вижу:

Последний неудачный вход: Пт 17 Июл 12:47:01 CEST 2020 с 111.222.333.444 по ssh:notty
С момента последнего успешного входа было 2713 неудачных попыток входа.
Последний вход: Пт 17 Июл 01:12:57 2020 с ec2-111-222-333-444.eu-central-1.compute.amazonaws.com

Как мне получить число 2713 после входа с помощью какой-либо команды, не разбирая журналы аутентификации вручную?

ОС – CentOS 7, если это важно.

Вы можете использовать это:

var=`cat file | grep "С момента" | cut -d' ' -f3`

Другой способ сделать это:

var=`cat /var/log/secure | grep "Неудачный пароль" | wc -l`

Ответ или решение

Чтобы получить количество "неудачных попыток входа с момента последнего успешного входа" в CentOS 7 без ручного анализа логов аутентификации, есть несколько методов, которые можно использовать. В этой статье я подробно опишу, как правильно выполнить эту задачу с помощью командной строки.

Способы получения информации о неудачных входах

1. Чтение системного лога через lastb

Одним из самых простых и эффективных способов является использование команды lastb, которая читает данные из файла /var/log/btmp, где хранятся записи о неудачных попытках входа в систему.

lastb | wc -l

Эта команда подсчитывает количество записей о неудачных входах. Предположим, что вы хотите сохранить это значение в переменную:

failed_attempts=$(lastb | wc -l)

2. Использование grep и wc

Если вам нужно получить это число, исходя из более детальной информации в /var/log/secure, можно извлечь количество неудачных попыток с помощью комбинации grep и wc. Например:

failed_attempts=$(grep "Failed password" /var/log/secure | wc -l)

Эта команда считает количество строк, содержащих "Failed password", в логе аутентификации.

Примечания

  1. Права доступа: Убедитесь, что у вас есть необходимые права доступа для чтения этих логов. Обычно это требует прав суперпользователя (root).

  2. Системные инструменты: В CentOS 7 можно использовать утилиты для управления учётными записями пользователей (auditd, faillog и др.), однако описанные выше методы являются более удобными в большинстве случаев.

  3. Анализ последствий: Полученные данные можно использовать для оценки безопасности вашего сервера, например, чтобы понять, есть ли подозрительная активность со стороны злоумышленников.

Заключение

Теперь у вас есть несколько способов получить количество неудачных попыток входа с момента последнего успешного входа. Вы можете использовать команду lastb для быстрого подсчета или проанализировать логи /var/log/secure для более детальной информации. Выбирайте тот метод, который лучше всего подходит для ваших нужд, и оперативно реагируйте на возможные угрозы безопасности.

Оцените материал
Добавить комментарий

Капча загружается...