🔒 Как установить Fail2Ban для защиты SSH на CentOS / RHEL 8 — Information Security Squad

🔒 Как установить Fail2Ban для защиты SSH на CentOS / RHEL 8

Fail2ban — это бесплатный, широко используемый и широко используемый инструмент для предотвращения вторжений, который сканирует файлы журналов на наличие IP-адресов, которые показывают вредоносные признаки, такие как слишком много сбоев паролей и многое другое, и запрещает их (обновляет правила брандмауэра для отклонения IP-адресов) , по умолчанию он поставляется с фильтрами для различных сервисов, включая sshd.
В этой статье мы расскажем, как установить и настроить fail2ban для защиты SSH и повышения безопасности SSH-сервера от атак методом перебора паролей на CentOS / RHEL 8.

Установка Fail2ban на CentOS / RHEL 8

Пакет fail2ban отсутствует в официальных репозиториях, но доступен в репозитории EPEL.

После входа в систему перейдите к интерфейсу командной строки, а затем включите репозиторий EPEL в своей системе, как показано на рисунке.

# dnf install epel-release
или
# dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
После этого установите пакет Fail2ban, выполнив следующую команду.
# dnf install fail2ban

Настройка Fail2ban для защиты SSH

Файлы конфигурации fail2ban находятся в каталоге /etc/fail2ban/, а фильтры хранятся в каталоге /etc/fail2ban/filter.d/ (файл фильтра для sshd — /etc/fail2ban/filter.d/sshd.conf) ,

Глобальным файлом конфигурации для сервера fail2ban является /etc/fail2ban/jail.conf, однако не рекомендуется изменять этот файл напрямую, так как он, вероятно, будет перезаписан или улучшен в случае обновления пакета в будущем.

В качестве альтернативы рекомендуется создавать и добавлять свои конфигурации в файл jail.local или отдельные файлы .conf в каталоге /etc/fail2ban/jail.d/.

Обратите внимание, что параметры конфигурации, установленные в jail.local, будут переопределять все, что определено в jail.conf.

Для этой статьи мы создадим отдельный файл с именем jail.local в каталоге /etc/fail2ban/ как показано далее.

# vi /etc/fail2ban/jail.local
Когда файл открыт, скопируйте и вставьте в него следующую конфигурацию. [[DEFAULT] раздел содержит глобальные параметры, а [sshd] содержит параметры для jail sshd.
[DEFAULT] 
ignoreip = 192.168.56.2/24
bantime  = 21600
findtime  = 300
maxretry = 3
banaction = iptables-multiport
backend = systemd

[sshd] 
enabled = true
Давайте кратко объясним параметры в приведенной выше конфигурации:
  • ignoreip: указывает список IP-адресов или имен хостов, которые нельзя забанить.
  • bantime: указывает количество секунд, на которое хост будет забанен (т.е. эффективная длительность бана).
  • maxretry: указывает количество сбоев до того, как хост будет забанен.
  • findtime: fail2ban заблокирует хост, если он генерировал «maxretry» в течение последних секунд «findtime».
  • Banaction: запрет действия.
  • backend: указывает бэкэнд, используемый для получения модификации файла журнала.
Таким образом, приведенная выше конфигурация означает, что если у любого IP произошел сбой 3 раза за последние 5 минут, будет команда заблокировать его на 6 часов и проигнорировать IP-адрес 192.168.56.2.
Затем запустите и активируйте сервис fail2ban и проверьте, работает ли он, используя следующую команду systemctl.
# systemctl start fail2ban
# systemctl enable fail2ban
# systemctl status fail2ban

Мониторинг заблокированных IP-адресов и сбоев с помощью fail2ban-client

После настройки fail2ban для защиты sshd вы можете отслеживать сбойные и заблокированные IP-адреса с помощью fail2ban-client.

Чтобы просмотреть текущее состояние сервера fail2ban, выполните следующую команду.

# fail2ban-client status

Чтобы контролировать sshd jail, запустите.

# fail2ban-client status sshd
Чтобы разблокировать IP-адрес в fail2ban (во всех jail и базе данных), выполните следующую команду.
# fail2ban-client unban 192.168.56.1
Для получения дополнительной информации о fail2ban прочитайте следующие справочные страницы.
# man jail.conf
# man fail2ban-client
См. также:

cryptoparty

Cryptography is typically bypassed, not penetrated.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

5e7fa976b0640d40