Extra Systems Ban Software (ESBANS)

Модуль es-nginx-errors

Модуль es-nginx-errors был разработан компанией Extra Systems для защиты web-сервера nginx от хакерской активности в рамках системы fail2ban. Суть его деятельности заключается в выявлении подозрительной активности в файле /var/log/nginx/error.log.

Подключение es-nginx-errors к fail2ban производится таким способом:

[es-nginx-errors]
enabled  = true
filter   = es-nginx-errors
logpath  = /var/log/nginx/error.log
action   = iptables-allports[name=es-nginx-errors, blocktype=DROP, protocol=all]

Обратите внимание на тот факт, что данный фильтр блокирует для изобличенного хакера все протоколы на всех портах, причем делает это по методу DROP - что превращает после этого ваш хост в абсолютно "черную дыру" для данного конкретного злоумышленника. Ни на один свой последующий IP-пакет он не получит вообще никакого ответа. Таким образом нами обеспечивается значительная экономия ресурсов вашего сервера.

Код нашего фильтра es-nginx-errors имеет такой вид:

[Definition]
failregex = ^.* open\(\) ".*\/wp-includes\/wlwmanifest\.xml" failed \(2: No such file or directory\), client: <HOST>
            ^.* directory index of ".*" is forbidden, client: <HOST>
            ^.* ".*\/index\.(php|htm).*" is not found \(2: No such file or directory\), client: <HOST>
            ^.* open\(\) ".*(\.env|\.git|\.auto\.tfvars).*" failed \(2: No such file or directory\), client: <HOST>
            ^.* open\(\) ".*\.php" failed \(2: No such file or directory\), client: <HOST>
            ^.*\[crit\] \d+#\d+: \*\d+ SSL_do_handshake\(\) failed \(SSL: error:0A00006C:SSL routines::bad key share\) while SSL handshaking, client: <HOST>
ignorepregex =

В условиях практической эксплуатации на наших Linux-серверах данный фильтр показал очень высокую эффективность в деле подавления хакерской активности в рамках web-сервера nginx.


© Extra Systems, 2026 Extra Web Top