Oggi vedremo come mettere in sicurezza Apache2 su Ubuntu e Debian.
Questo tutorial e’ valido per:
- Apache 2.2.x e Apache 2.4.x
- Ubuntu 18.04 LTS (Bionic), Ubuntu 20.04 LTS (Focal), Ubuntu 20.10 (Groovy), Ubuntu 21.04 (hirsute), Ubuntu 21.10 (Impish)
- Debian 9 (Stretch), Debian 10 (Buster), Debian 11 (Bullseye), Debian 12 (Bookworm), Debian Unstable (Sid).
Per vedere la versione del sistema operativo del server in uso digitare:
lsb_release -a
Per vedere la versione di Apache2 in uso:
apache2 -v
Verifichiamo se il modulo di sicurezza e’ attivo:
sudo ls /etc/apache2/conf-enabled
In alcuni casi questo modulo e’ gia’ attivo di default, in questo caso passsare oltre.
Abilitare modulo di sicurezza Apache:
sudo a2enconf
systemctl reload apache2
sudo ls /etc/apache2/conf-enabled
Ora possiamo modificare il file di configurazione:
sudo nano /etc/apache2/conf-enabled/security.conf
Andiamo a ridurre il fingerprint settando il parametro:
ServerTokens Minimal
Riduciamo il fingerpirnt anche sulle pagine di errore con il parametro:
ServerSignature Off
TraceEnable e’ gia’ off per default.
Abilitiamo no sniff:
Header set X-Content-Type-Options: "nosniff"
Abilitaimo sameorigin su X-Frame-Options:
Header set X-Frame-Options: "sameorigin"
Fatto!
Ora verifichiamo com’erano prima gli header:
curl -I http://localhost
Riavviamo apache per applicare le modifiche:
sudo systemctl restart apache2
Ora eseguiamo i comandi per vedere i nuovi header securizzati:
curl -I http://localhost
NOTA BENE: Per attivare la sicurezza sugli heders, deve essere attivato il relativo modulo apache.
Per attivare/disattivare i moduli di Apache relativi alla sicurezza, leggi: sicurezza dei moduli Apache.
Documentazione:
- Secure HTTP Headers info, aggiornati costantemente:
https://cwiki.apache.org/confluence/display/OFBIZ/How+to+Secure+HTTP+Headers - Strumento Online per verificare la sicurezza degli HTTP Headers del vostro Apache Web Server:
https://securityheaders.com/