Kako konfigurirate Fail2ban za WordPress (WP-Login, XMLRPC)

Ukratko, u ovom ćete vodiču pronaći naredbene retke kroz koje možete instalirati i konfigurirati Fail2ban za WordPress. Sigurna provjera autentičnosti WordPress -a i XMLRPC.PHP bruto dupe.

Blogovi i web stranice razvijeni na WordPress platformi često su ciljevi cyber napada. Većina napada je grube sile i cilja na sesiju provjere autentičnosti ili iskorištavanje XML-RPC (poziv na daljinsko postupak pomoću XML). Srećom, Fail2ban je vrlo korisno sigurnosno rješenje za ove situacije. Ako želite osigurati WordPress web mjesto s Fail2Ban -om, slijedite korake konfiguracije u ovom vodiču.

Prije svega, provjerite imate li pristup web poslužitelju SSH Connection i da li je instalirana aplikacija Fail2Ban.

Fail2Ban konfiguracija za WordPress na Debianu

1. Prije svega morate biti sigurni da je instalirana aplikacija Fail2Ban i da se pokreće na poslužitelju. Izvršite naredbeni redak u nastavku:

systemctl status fail2ban

U izlazu biste trebali vidjeti nešto od oblika:

● 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

Ako Fail2ban nije instaliran na poslužitelju, morat ćete ga instalirati. Izvršite liniju narudžbe za instalaciju Fail2ban na Debian / Ubuntu:

sudo apt install fail2ban

2. Sljedeći je korak stvaranje filtra Fail2Ban za WordPress. Izvršite na terminalu naredbeni redak za stvaranje i uređivanje filtra wordpress.conf.

sudo nano /etc/fail2ban/filter.d/wordpress.conf

U datoteci wordpress.conf Postavlja filtre za provjeru autentičnosti WordPress -a i provjeru autentičnosti datoteka xmlrpc.php, kako slijedi:

[Definition]
failregex = ^<HOST> -.*"(GET|POST).*(/wp-login.php|/xmlrpc.php).*" 200
ignoreregex =

To znači da bilo kojom metodom, GET ili POST, pristupilo bi mu se datoteke wp-login.php ili xmlrpc.php, može se stvoriti pravilo za fail2ban. Uvjet je da ove datoteke postoje i mogu im pristupiti napadač. To jest vratiti kod 200 (u redu) za pristup.

Sprema datoteku /etc/fail2ban/filter.d/wordpress.conf.

3. Sljedeći je korak konfiguriranje “zatvor” Za WordPress. U ovom koraku većina korisnika je zbunjena, jer se pravila moraju utvrditi različito, ovisno o sustavu upravljanja hostingom (ako postoji) ili konfiguraciji web poslužitelja.

Ako koristite Hestiacp, Vestacp ili Myvesta, stvorite i uredite datoteku /etc/fail2ban/jail.local.

nano /etc/fail2ban/jail.local

U ovu datoteku dodajte retke ispod:

[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.

Prilagodite gornje parametre prema vašim potrebama. U konfiguraciji koju sam dao, ako u roku od 1800 minuta postoji 5 ponovljenih pokušaja istog IP -a, ona će biti blokirana 3600 minuta uz pomoć Web Hestiacp -a. (hestia[name=WEB]). Ovdje ćete morati pomoći prema sustavu koji imate na poslužitelju.

Također je vrlo važno i “logpath“. Iz ovih se zapisa izvlače podaci na temelju kojih će se izvršiti radnja. Provjerite je li lokacija točna.

Ako nemate instalirani sustav upravljanja, trebat će vam radnja blokiranja IPS -a s Fail2ban da WordPress bude izravno iptables. Linija za radnju bit će sljedeća:

action   = iptables-multiport[name=wordpress, port="80,443", protocol=tcp]

Kao nosač, umjesto /etc/fail2ban/jail.local Također možete koristiti zasebnu konfiguracijsku datoteku, kao što je: /etc/fail2ban/jail.d/wordpress.conf.

Nakon što izvršite prilagodbe, primijenite promjene.

sudo systemctl restart fail2ban

4. Nakon ponovnog pokretanja provjerite da li je neuspjeh2ban za WordPress Works:

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:

Nakon što je na ovom popisu blokirao IPS, provjerite jesu li blokirani i u iptables. Upoznao sam situaciju da je zbog pogrešne konfiguracije, u Fail2Ban -u da vidim da je to blokiran IP, ali u stvarnosti to još uvijek može pristupiti wp-login.php ili xmlrpc.php.

Da biste provjerili funkcionira li sve ispravno, odaberite IP blokiran s popisa Fail2Ban i potražite ga u iptables.

Izvršite naredbeni redak:

iptables -L -v -n --line-numbers

Ako se na ovom popisu nalazi IP koji se pojavljuje blokiran od strane Fail2Ban -a, to znači da ste konfigurirali ispravni Fail2ban za WordPress.

Povezano: Kako resetirati korisničku lozinku administratora u WordPressu. Bez pristupa e -pošti.

Istodobno, vrlo je preporučljivo provjeriti zapisnik s Action Fail2Ban:

sudo tail -f /var/log/fail2ban.log

Rečeno je, ako imate bilo kakvih nedoumica ili vam je potrebna pomoć, oni vam mogu pomoći u komentarima.

Strastveni u vezi s tehnologijom, pišem sa zadovoljstvom na Stealthsetts.com počevši od 2006. godine. Imam bogato iskustvo u operativnim sustavima: macOS, Windows i Linux, ali i na programskim jezicima i platformama za bloganje (WordPress) i za internetske trgovine (WooCommerce, Magento, Presashop).

Dom Vaš izvor IT vodiča, korisni savjeti i vijesti. Kako konfigurirate Fail2ban za WordPress (WP-Login, XMLRPC)
Ostavite komentar