Fail2Ban nasıl yapılandırılır WordPress (wp-giriş, xmlrpc)

Kısacası, bu eğitimde Fail2Ban'ı yükleyip yapılandırabileceğiniz komut satırlarını bulacaksınız WordBasmak. Kimlik doğrulamayı güvence altına alır WordPress ve xmlrpc.php'nin kaba kuvvet sorguları.

Platformda geliştirilen bloglar ve web siteleri WordPress sıklıkla siber saldırıların hedefi oluyorlar. Saldırıların çoğu kaba kuvvet yöntemiyle yapılır ve kimlik doğrulama oturumunu hedef alır veya XML-RPC'yi (XML kullanan Uzaktan Yordam Çağrısı) kullanır. Neyse ki fail2ban bu durumlar için oldukça kullanışlı bir güvenlik çözümüdür. Bir web sitesini güvence altına almak istiyorsanız WordPress fail2ban ile bu eğitimdeki yapılandırma adımlarını takip edin.

Öncelikle web sunucusuna SSH bağlantısı ile erişiminiz olduğundan ve fail2ban uygulamasının yüklü olduğundan emin olun.

Fail2Ban yapılandırması WordPress Debian'da

1. Öncelikle fail2ban uygulamasının sunucuda kurulu ve çalışır durumda olduğundan emin olmanız gerekmektedir. Aşağıdaki komut satırını çalıştırın:

systemctl status fail2ban

Çıktıda buna benzer bir şey görmelisiniz:

● 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

Eğer fail2ban sunucunuzda yüklü değilse, onu yüklemeniz gerekecektir. Debian/Ubuntu'ya fail2ban'ı kurmak için komut satırını çalıştırın:

sudo apt install fail2ban

2. Bir sonraki adım, fail2ban filtresini oluşturmaktır. WordBasmak. Filtreyi oluşturmak ve düzenlemek için terminalde komut satırını çalıştırın wordpress.conf.

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

Dosyanın içinde wordpress.conf kimlik doğrulama için filtreleri ayarlar WordPress ve dosya için xmlrpc.phpaşağıdaki gibi:

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

Bu, herhangi bir yöntemle, GET veya POSTwp-login.php veya xmlrpc.php dosyalarına erişilirse fail2ban kuralı oluşturulabilir. Koşul, bu dosyaların var olması ve saldırgan tarafından erişilebilir olmasıdır. Yani erişildiğinde 200 (ok) kodunu döndürmesi gerekir.

Dosyayı kaydet /etc/fail2ban/filter.d/wordpress.conf.

3. Bir sonraki adım, "jail"i yapılandırmaktır WordBasmak. İşte çoğu kullanıcının kafasının karıştığı nokta burasıdır, çünkü kuralların, barındırma yönetim sistemine (eğer varsa) veya web sunucusu yapılandırmasına bağlı olarak farklı şekilde ayarlanması gerekir.

HestiaCP kullanıyorsanız, VestaCP veya MyVesta, dosyayı oluşturun ve düzenleyin /etc/fail2ban/jail.local.

nano /etc/fail2ban/jail.local

Aşağıdaki satırları bu dosyaya ekleyin:

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

Yukarıdaki parametreleri ihtiyaçlarınıza göre ayarlayın. Verdiğim konfigürasyonda, 1800 dakikalık bir süre içerisinde aynı IP'den 5 kez tekrarlanan girişim olursa, web için HestiaCP aksiyonu kullanılarak 3600 dakika boyunca engellenecektir. (hestia[name=WEB]). Burada sunucuda bulunan sisteme bağlı olarak yardıma ihtiyacınız olacaktır.

"Ayrıca" çok önemlidirlogpath". Bu kayıtlardan, üzerinde işlem yapılacak veriler çıkarılır. Konumun doğru olduğundan emin olun.

Eğer kurulu bir yönetim sisteminiz yoksa, fail2ban ile IP'leri engellemeniz gerekecektir. WordPress doğrudan yapılması gereken iptables. Eylem hattı şu şekilde olacak:

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

Bir parantez olarak, bunun yerine /etc/fail2ban/jail.local Yapılandırma için ayrı bir dosya da kullanabilirsiniz, örneğin: /etc/fail2ban/jail.d/wordpress.conf.

Ayarlamalarınızı yaptıktan sonra değişiklikleri uygulayın.

sudo systemctl restart fail2ban

4. Yeniden başlattıktan sonra, fail2ban'ın çalışıp çalışmadığını kontrol edin. WordPress çalışmalar:

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:

Bu listede engellenen IP'leri bulduğunuzda, bunların aynı zamanda engellendiğinden emin olun. iptables. Yanlış yapılandırma nedeniyle fail2ban'da bir IP'nin engellendiğini gördüm, ancak gerçekte hala erişebiliyordu. wp-login.php veya xmlrpc.php.

Her şeyin düzgün çalışıp çalışmadığını kontrol etmek için fail2ban listesinden engellenen bir IP seçin ve iptables'da arayın.

Komut satırını çalıştırın:

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

Eğer fail2ban tarafından engellenen IP de bu listede yer alıyorsa, fail2ban'ı bu IP için doğru şekilde yapılandırmışsınız demektir. WordBasın.

İlgili: Yönetici kullanıcı parolası nasıl sıfırlanır? WordBasmak. E-postaya erişim yok.

Aynı zamanda fail2ban eylemleriyle log'u kontrol etmeniz şiddetle tavsiye edilir:

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

Bununla birlikte, herhangi bir sorunuz veya yardıma ihtiyacınız olursa yorumlarda size yardımcı olabilirim.

Teknolojiye tutkulu, 2006 yılından beri StealthSettings.com'da yazıyorum. macOS, Windows ve Linux işletim sistemlerinde geniş deneyimim var, aynı zamanda programlama dilleri ve blog platformları (WordPress) ile online mağazalar için (WooCommerce, Magento, PrestaShop) bilgi sahibiyim.

Ana Sayfa » BT eğitimleri, yararlı ipuçları ve haberler için kaynağınız. » Fail2Ban nasıl yapılandırılır WordPress (wp-giriş, xmlrpc)
Leave a Comment