Укратко, у овом водичу ћете пронаћи командне линије преко којих можете да инсталирате и конфигуришете Фаил2Бан за WordПритисните. Осигурава аутентификацију WordPress и бруте форце упити за кмлрпц.пхп.
Блогови и веб странице развијени на платформи WordPress често су мете сајбер напада. Већина напада је груба сила и циљају на сесију аутентикације или експлоатишу КСМЛ-РПЦ (позив удаљене процедуре користећи КСМЛ). На срећу, фаил2бан је веома корисно безбедносно решење за ове ситуације. Ако желите да обезбедите веб локацију WordPress са фаил2бан, пратите кораке конфигурације у овом водичу.
Пре свега, проверите да ли имате приступ веб серверу преко ССХ везе и да ли је апликација фаил2бан инсталирана.
Фаил2Бан конфигурација за WordPress на Дебиан-у
1. Пре свега, морате се уверити да је фаил2бан апликација инсталирана и да ради на серверу. Покрените командну линију испод:
systemctl status fail2ban
У излазу би требало да видите нешто овако:
● fail2ban.service - Fail2Ban Service
Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; preset: enabled)
Active: active (running) since Tue 2025-03-11 00:39:32 EET; 6 days ago
Docs: man:fail2ban(1)
Main PID: 917 (fail2ban-server)
Tasks: 17 (limit: 76843)
Memory: 33.2M
CPU: 17min 1.752s
CGroup: /system.slice/fail2ban.service
└─917 /usr/bin/python3 /usr/bin/fail2ban-server -xf start
Ако фаил2бан није инсталиран на вашем серверу, мораћете да га инсталирате. Покрените командну линију да бисте инсталирали фаил2бан на Дебиан/Убунту:
sudo apt install fail2ban
2. Следећи корак је креирање филтера фаил2бан за WordПритисните. Покрените командну линију у терминалу да бисте креирали и уредили филтер wordpress.conf
.
sudo nano /etc/fail2ban/filter.d/wordpress.conf
У фајлу wordpress.conf
поставља филтере за аутентификацију WordPress и за фајл xmlrpc.php
, као што следи:
[Definition]
failregex = ^<HOST> -.*"(GET|POST).*(/wp-login.php|/xmlrpc.php).*" 200
ignoreregex =
То значи да било којим методом, GET
или POST
, ако се приступи датотекама вп-логин.пхп или кмлрпц.пхп, може се креирати правило за фаил2бан. Услов је да ове датотеке постоје и да им нападач може приступити. То јест, требало би да врати код 200 (ок) када се приступи.
Сачувајте датотеку /etc/fail2ban/filter.d/wordpress.conf
.
3. Следећи корак је конфигурисање „затвора“ за WordПритисните. Ту се већина корисника збуни, јер правила морају бити различита у зависности од система управљања хостингом (ако постоји) или конфигурације веб сервера.
Ако користите ХестиаЦП, VestaCP или МиВеста, креирајте и уредите датотеку /etc/fail2ban/jail.local
.
nano /etc/fail2ban/jail.local
Додајте редове испод у ову датотеку:
[wordpress]
enabled = true
port = http,https
filter = wordpress
logpath = /var/log/nginx/domains/*.log #or apache2.
maxretry = 5
findtime = 1800
bantime = 3600
action = hestia[name=WEB] #hestacp action.
Подесите горе наведене параметре према вашим потребама. У конфигурацији коју сам дао, ако у интервалу од 1800 минута постоји 5 поновљених покушаја са исте ИП адресе, биће блокиран на 3600 минута коришћењем акције ХестиаЦП за веб. (hestia[name=WEB]
). Овде ће вам требати помоћ у зависности од система који имате на серверу.
Такође је веома важно да "logpath
". Из ових дневника се издвајају подаци на основу којих ће се акција извршити. Проверите да ли је локација тачна.
Ако немате инсталиран систем управљања, мораћете да блокирате ИП адресе са фаил2бан за WordPress да се уради директно кроз iptables
. Линија за акцију ће бити следећа:
action = iptables-multiport[name=wordpress, port="80,443", protocol=tcp]
Као заграда, уместо /etc/fail2ban/jail.local
такође можете користити засебну датотеку за конфигурацију, као што је: /etc/fail2ban/jail.d/wordpress.conf
.
Након што извршите подешавања, примените промене.
sudo systemctl restart fail2ban
4. Након поновног покретања, проверите да ли фаил2бан фор WordPress ради:
fail2ban-client status wordpress
Status for the jail: wordpress
|- Filter
| |- Currently failed: 355
| |- Total failed: 33873
| `- File list: (log files per domain)
- Actions
|- Currently banned: 127
|- Total banned: 680
`- Banned IP list:
Када пронађете блокиране ИП адресе на овој листи, уверите се да су и оне блокиране iptables
. Наишао сам на ситуацију да сам због погрешне конфигурације, у фаил2бан-у видео да је ИП блокиран, али у стварности и даље може да приступи wp-login.php
или xmlrpc.php
.
Да бисте проверили да ли све ради како треба, изаберите блокирану ИП адресу са листе фаил2бан и потражите је у иптаблес.
Покрените командну линију:
iptables -L -v -n --line-numbers
Ако се ИП адреса која изгледа блокирана од стране фаил2бан такође налази на овој листи, то значи да сте исправно конфигурисали фаил2бан за њу. WordПритисните.
Релатед: Како ресетовати лозинку администратора WordПритисните. Нема приступа е-пошти.
У исто време, топло се препоручује да проверите дневник са фаил2бан акцијама:
sudo tail -f /var/log/fail2ban.log
Уз то, ако имате било каквих питања или вам је потребна помоћ, могу вам помоћи у коментарима.