Configurazione di Fail2ban per proteggere Apache da un attacco DDOS

Configurarea Fail2ban pentru a proteja Apache de un atac DDOS
⏱️ 4 min read

Apache è uno dei server web più utilizzati e popolari al mondo, quindi è importante proteggere il tuo sito web e gli utenti dagli attacchi di forza bruta. Fail2ban è un software di prevenzione delle intrusioni open source scritto in Python. Fail2Ban analizza continuamente i file di registro di vari servizi (come Apache, ssh, postfix …) e, se rileva attacchi dannosi, crea regole sul firewall per bloccare gli indirizzi IP degli hacker per un determinato periodo di tempo. Fail2Ban informa anche un amministratore di sistema con un’email della sua attività.

In questo articolo spiegherò come installare fail2ban e configurarlo per monitorare i log di Apache per tentativi di errore di autenticazione dannosi.

Requisiti

  • Server Ubuntu 14.04 con Apache installato
  • Apache configurato con autenticazione tramite password

Installazione di Fail2Ban

Innanzitutto, assicurati che il server Apache sia in esecuzione e che l’autenticazione della password sia abilitata.

Successivamente, puoi installare Fail2ban eseguendo:

Configura fail2ban per Apache

Il fail2ban mantiene il suo file di configurazione “jail.conf” nella directory “/ etc / fail2ban /”. Contiene una serie di filtri predefiniti per vari servizi e si consiglia di non modificare questo file. È necessario abilitare le jail Apache predefinite creando un file “/etc/fail2ban/jail.local”:

Per creare un nuovo file “jail.local”, esegui:

Aggiungi il seguente contenuto:

Salva e chiudi il file, quindi riavvia fail2ban affinché le modifiche abbiano effetto.

Puoi verificare le regole che sono state aggiunte da Fail2Ban in iptables usando il seguente comando:

L’output sarà simile a questo:

Nota : Puoi trovare i dettagli di ogni jail descritti di seguito:

  • [apache] : questa jail viene utilizzata per bloccare i tentativi di accesso non riusciti.
  • [apache-noscript] : questa jail viene utilizzata per bloccare i client remoti che stanno cercando script da eseguire sul sito web.
  • [apache-overflows] : questa jail viene utilizzata per bloccare i client che stanno tentando di richiedere URL sospetti.
  • [apache-noscript] : questa jail viene utilizzata per bloccare i client remoti che stanno cercando script da eseguire sul sito web.
  • [apache-badbots] : questa jail viene utilizzata per bloccare le richieste di bot dannosi.

Nota : Puoi trovare i dettagli di ciascuna regola descritta di seguito.

  • enabled : questa opzione significa che la protezione Apache è attiva.
  • port : questa opzione specifica i servizi che fail2ban monitora.
  • filter : questa opzione fa riferimento al file di configurazione situato nel file /etc/fail2ban/filter.d/ directory.
  • logpath : questa opzione specifica la posizione del file di registro.
  • bantime : questa opzione specifica il numero di secondi durante i quali un host remoto verrà bloccato dal server.
  • maxretry : questa opzione specifica il numero di tentativi di accesso falliti prima che un host remoto venga bloccato per la durata del periodo di divieto.
  • ignoreip : questa opzione consente di autorizzare il blocco di determinati indirizzi IP.

Verifica lo stato di esclusione di Fail2ban

Una volta attivate le jail, puoi controllare fail2ban usando il fail2ban-client comando:

Puoi vedere un elenco di tutte le jail che hai abilitato.

apache_fail2ban_client_status

Per vedere lo stato di una particolare jail come apache, apache-badbots eseguendo i seguenti comandi:

L’output è simile a questo:

apache_fail2ban_client_status_apache

Puoi anche impostare manualmente il ban o il blan IP degli indirizzi IP.

Ad esempio, per escludere un indirizzo IP (192.168.1.20) con una jail Apache:

Per sbloccare un indirizzo IP (192.168.1.21) con una jail Apache:

Test di Fail2Ban

È importante testare il tuo fail2ban se funziona come previsto o meno. Ora su una macchina remota, apri il tuo browser web e digita l’URL del tuo dominio (o l’indirizzo IP del tuo server). Quando Apache richiede l’autenticazione, fornire ripetutamente un nome utente e una password errati. Dopo aver raggiunto il limite, dovresti essere bloccato e non essere in grado di accedere al sito.

apache_fail2ban_block_site

Controlla lo stato con il file fail2ban-client comando:

Vedrai il tuo indirizzo IP bloccato dal sito.

apache_fail2ban_client_ban_status

Conclusione

Ora, hai abbastanza conoscenze per configurare fail2ban. Usare fail2ban è un modo semplice e buono per fermare le inondazioni (attacchi di forza bruta). È anche un buon modo per limitare il numero di richieste errate che ricevi sul tuo server web Apache.

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Avatar di Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Potrebbero interessarti anche...

Subscribe
Notificami
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x