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

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

Я использую CentOS 7 на хосте. Ранее при входе в систему через SSH отображался отчет о количестве неудачных попыток входа. Полный баннер выглядел примерно так:

Последний неудачный вход: Пт Май 24 03:58:45 EDT 2019 с x.x.x.x по ssh:notty
С момента последнего успешного входа было 121 неудачных попыток входа.
Последний вход: Чт Май 23 15:52:24 2019 с x.x.x.x

Затем я установил fail2ban, чтобы предотвратить эти попытки, и после этого строка, сообщающая о количестве неудачных входов, исчезла. Сначала я подумал, что, может быть, эти боты решили больше не пытаться входить в мою машину, поэтому сообщения больше нет. Но затем я осознал, что lastb показывает много недавних попыток. Я попытался посмотреть на /var/log/secure, но этого файла больше нет.

Насколько я понимаю, /etc/pam.d/postlogin отвечает за отображение этого сообщения при входе. Вот содержание этого файла:

#%PAM-1.0
# Этот файл сгенерирован автоматически.
# Изменения пользователя будут уничтожены при следующем запуске authconfig.

session     [success=1 default=ignore] pam_succeed_if.so service !~ gdm* service !~ su* quiet
session     [default=1]   pam_lastlog.so nowtmp showfailed
session     optional      pam_lastlog.so silent noupdate showfailed

Как мне узнать, что вызвало это изменение? И как мне вернуть это сообщение?

Моя Fedora имеет страницу справки для pam_tally2, которая говорит, что она считает попытки доступа. Наряду с модулем, существует команда с тем же названием для просмотра текущих значений в /var/log/tallylog, но я не вижу там никаких записей. Однако вы можете попробовать

sudo pam_tally2 -u myusername

Неудачные попытки входа можно найти в /var/log/secure

Ниже приведен пример

 host-1-193 sshd[1644]: pam_succeed_if(sshd:auth): требование "uid >= 1000" не выполнено для пользователя "root"
Май 24 18:23:46 host-1-193 sshd[1644]: Неудачный пароль для root с 10.200.0.1 порт 29021 ssh2
Май 24 18:23:49 host-1-193 sshd[1644]: Принят пароль для root с 10.200.0.1 порт 29021 ssh2
Май 24 18:23:49 host-1-193 sshd[1644]: pa

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

Чтобы восстановить отображение информации о количестве неудачных попыток входа при успешном SSH-входе на CentOS 7, сначала необходимо убедиться, что у вас установлены все необходимые пакеты и модули в PAM (Pluggable Authentication Modules).

  1. Проверка конфигурации PAM: Откройте файл /etc/pam.d/postlogin и убедитесь, что строки, отвечающие за отображение информации о неудачных попытках входа, прописаны правильно. Ваш файл уже выглядит корректно:

    #%PAM-1.0
    session     [success=1 default=ignore] pam_succeed_if.so service !~ gdm* service !~ su* quiet
    session     [default=1]   pam_lastlog.so nowtmp showfailed
    session     optional      pam_lastlog.so silent noupdate showfailed

    Обратите внимание, что showfailed в строках pam_lastlog.so отвечает за вывод информации о неудачных попытках.

  2. Проверка наличия модуля PAM для подсчета неудачных попыток: Убедитесь, что установлен модуль pam_faildelay и он правильно настроен, если вы хотите дополнительно контролировать успешные и неуспешные входы.

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

    Для проверки статуса rsyslog выполните:

    systemctl status rsyslog

    Если оно не запущено, выполните следующую команду:

    sudo systemctl start rsyslog
  4. Подсчет неудачных попыток: Чтобы получить текущее количество неудачных попыток входа с использованием pam_tally2, вы можете выполнить следующую команду:

    sudo pam_tally2 -u ваш_пользователь

    Заметьте, что если вы не видите записи в /var/log/tallylog, вам нужно будет проверить конфигурацию PAM, чтобы убедиться в наличии модуля для учета неудачных попыток, обычно указанного как pam_tally2.so.

  5. Проверка конфигурации fail2ban: Убедитесь, что ваш fail2ban правильно настроен и не блокирует законные попытки входа. Вы можете временно отключить fail2ban, чтобы проверить, не он ли причина отсутствия информации о неудачных попытках.

    Чтобы остановить fail2ban, выполните:

    sudo systemctl stop fail2ban
  6. Перезагрузка системы: После всех изменений перезагрузите систему или службу SSH, чтобы убедиться, что новые настройки применены.

Используя эти шаги, вы сможете восстановить вывод информации о количестве неудачных попыток входа при успешном SSH-входе на CentOS 7.

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

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