Sicurezza del Webserver
Le politiche di sicurezza del webserver in ambiente open source sono davvero varie. Di sicuro esporre un sito web senza alcuna forma di protezione rappresenta un grosso rischio.
E’ prassi proteggere un qualsiasi sistema server con un Firewall a monte oppure installato direttamente sul server. Strumenti irrinunciabili sono
- firewall (iptables, shorewall, ufw, firewall-cmd)
- Antivirus clamav (free) e Antimalware maldet (free)
- Apache mod_security2 e mod_dosevasive (modulo di analisi degli accessi alle pagine servite dal webserver)
- fail2ban (sistema di blocco dinamico dei tentativi di accesso non autorizzato al sistema)
Approfondiamo le ultime due voci e vediamo come installare, attivare ed integrare mod security con fail2ban. Questo tipo di integrazione consente al sistema di bloccare dinamicamente gli indirizzi IP che tentano di fare azione i malevoli sul nostro web server e che comunque vengono intercettati dalle regole di Mod Security.
Installiamo mod_security2
Configurazione e attivazione di mod_security
# cp modsecurity.conf-recommended modsecurity.conf
# — Rule engine initialization ———————————————-
# Enable ModSecurity, attaching it to every transaction. Use detection
# only to start with, because that minimises the chances of post-installation
# disruption.
SecRuleEngine On
# — Request body handling —————————————————
# Allow ModSecurity to access request bodies. If you don’t, ModSecurity
# won’t be able to see any POST parameters, which opens a large security
# hole for attackers to exploit.
SecRequestBodyAccess On
# a2enmod security2
Considering dependency unique_id for security2:
Enabling module security2.
To activate the new configuration, you need to run:
systemctl restart apache2
# systemctl restart apache2
Installiamo fail2ban
# systemctl restart fail2ban
L’argomento è molto vasto e non abbiamo la pretesa di esaurirlo con questo breve articolo, ricordiamo che si tratta di servizi molto diffusi e documentati per cui rimandiamo alla lettura dell’abbondante documentazione ufficiale e non.