Come proteggere WordPress con Fail2Ban
English version: How to protect WordPress with Fail2Ban
Utilizzando WP Cerber Security e Fail2Ban insieme puoi rafforzare la protezione al livello più efficace. Ciò ti consente di proteggere un WordPress da attacchi brute-force e DoS a livello di sistema operativo con iptables .
Per saperne di più sugli attacchi: attacchi brute-force, DoS e DDoS: qual è la differenza?
Nota: per configurare Fail2Ban è necessario disporre dell'accesso root al server Linux.
Con WP Cerber Security hai tre opzioni per utilizzare Fail2Ban
- Utilizzo delle intestazioni di risposta HTTP 403 se si desidera monitorare il registro di accesso di Apache
- Utilizzo dei file syslog per monitorare i tentativi di accesso non riusciti
- Utilizzo di un file di registro personalizzato per monitorare i tentativi di accesso non riusciti
Monitorare il registro di accesso di Apache per le risposte HTTP 403
Quando un tentativo di accesso fallisce, WP Cerber restituisce una risposta 403 nell'intestazione HTTP. Tale risposta verrà scritta nel registro di accesso di Apache e tali record potrebbero essere monitorati da Fail2Ban. Tale comportamento di WP Cerber è abilitato di default. Lo svantaggio di questo approccio è che Fail2Ban deve analizzare l'intero access.log per trovare tali tentativi.
Utilizzo di syslog per monitorare i tentativi di accesso non riusciti
Di default, WP Cerber usa la funzione LOG_AUTH quando registra i tentativi falliti nel file syslog. Tuttavia, puoi specificare una funzione con un tuo valore. Per impostare un nuovo valore devi definire la costante CERBER_LOG_FACILITY con un valore intero. Nota: per abilitare la scrittura nel syslog o in un file personalizzato (vedi sotto) devi abilitare Write failed login attempt to the file nella sezione Activity delle impostazioni del plugin.
define('CERBER_LOG_FACILITY', LOG_AUTHPRIV);
Utilizzo di un file personalizzato per monitorare i tentativi di accesso non riusciti
Se vuoi scrivere tutti i tentativi falliti in un file di registro personalizzato, devi specificare un nome file con un percorso assoluto usando la costante CERBER_FAIL_LOG . Non dimenticare di impostare l'autorizzazione di scrittura per il processo Apache sulla cartella o sul file di registro e abilitare Write failed login attempt to the file . Se il file non esiste, il plugin tenta di crearlo. Se CERBER_FAIL_LOG è definito, il plugin non scrive messaggi nel syslog predefinito.
define('CERBER_FAIL_LOG','/var/log/fail2ban.log');
Assicurarsi che il processo del server web (Apache) abbia l'autorizzazione a scrivere su un file specificato.
Informazioni aggiuntive: