Восстановление Fail2Ban на VestaCP CentOS 7

После установки Vesta CP на свежеустановленную CentOS обратил внимание, что в панели управления в разделе «Сервер» сервис fail2ban отображается серым цветом, т.е. не запущен. Попытки перезапустить его через панель управления не приводят к видимому результату.

В то же время при проверке, жив ли сервис fail2ban, в консоли, он, судя по выдаче, вполне себе рабочий:

[root@vesta yum.repos.d]# rm yandex.repo
rm: удалить обычный файл «yandex.repo»? y
[root@vesta yum.repos.d]# systemctl status fail2ban
● fail2ban.service — Fail2Ban Service
Loaded: loaded (/usr/lib/systemd/system/fail2ban.service; enabled; vendor preset: disabled)
Active: active (running) since Вт 2020-07-07 16:45:02 MSK; 1 day 19h ago
Docs: man:fail2ban(1)
Process: 1145 ExecStartPre=/bin/mkdir -p /run/fail2ban (code=exited, status=0/SUCCESS)
Process: 1107 ExecStartPre=/bin/mkdir -p /var/run/fail2ban (code=exited, status=0/SUCCESS)
Main PID: 1149 (f2b/server)
CGroup: /system.slice/fail2ban.service
└─1149 /usr/bin/python -s /usr/bin/fail2ban-server -xf start

июл 07 16:45:02 vesta.*** systemd[1]: Starting Fail2Ban Service…
июл 07 16:45:02 vesta.*** systemd[1]: Started Fail2Ban Service.
июл 07 16:45:04 vesta.*** fail2ban-server[1149]: Server ready

А при просмотре статусов сервисов VestaCP он как-будто и не запущен:

[root@vesta /]# /usr/local/vesta/bin/v-list-sys-services
NAME STATE CPU MEM UPTIME
—- —— — — ——
httpd running 0 165 513
nginx running 0 11 513
exim running 0 1 2622
mariadb running 0 1089 2622
vsftpd running 0 0 2622
crond running 0 1 2622
iptables running 0 0 0
fail2ban stopped 0 0 0

Разрыв шаблона возникает, вроде сервис жив, но VestaCP говорит, что для нее fail2ban не жив 😉

Нагуглил на geek-speak.ru следующее объяснение (и решение) данной ситуации:

Дело в том, что в новых версиях у fail2ban поменялось имя, через которое панель управления VestaCP оперирует с параметрами fail2ban. Его нужно изменить в конфиге сервиса
/usr/local/vesta/bin/v-list-sys-services
Для этого редактируем указанный файл
#mcedit /usr/local/vesta/bin/v-list-sys-services
и ближе к концу файла в секции
#Checking FIREWALL Fail2ban extention
исправляем строку

get_srv_state $FIREWALL_EXTENSION fail2ban-server script

на

get_srv_state $FIREWALL_EXTENSION f2b/server script

Восстановление Fail2Ban на VestaCP CentOS 7

После внесения правок сохраняем файл и перезапускаем fail2ban:
#service fail2ban restart
Проверяем в консоли:

[root@vesta ~]# /usr/local/vesta/bin/v-list-sys-services
NAME STATE CPU MEM UPTIME
—- —— — — ——
httpd running 0 163 536
nginx running 0 11 536
exim running 0 1 2645
mariadb running 0 1089 2645
vsftpd running 0 0 2645
crond running 0 1 2645
iptables running 0 0 0
fail2ban running 0.1 4958 2645

И видим понятное состояние сервиса в панели управления Vesta:

Отображение Fail2Ban в панели VestaCP

Оставьте ответ

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