Configurazione sicura di server Linux VPS e cloud: riduzione della superficie d'attacco, firewall, autenticazione rinforzata, aggiornamenti automatici e audit periodico. Un server sicuro non è un optional — è la base di tutto il resto.
La configurazione di default di un server Linux è progettata per la compatibilità massima, non per la sicurezza. L'hardening rimuove ciò che non serve, rafforza ciò che resta e aggiunge layer di protezione attiva.
Autenticazione solo con chiave (password SSH disabilitata), cambio porta default, AllowUsers configurato, MaxAuthTries ridotto. L'SSH è il vettore di attacco più comune su server esposti.
UFW / iptables configurato con policy deny-all: aperte solo le porte necessarie (22/SSH, 80/443/HTTP-S, porte applicative specifiche). Tutto il resto bloccato per default.
Fail2ban configurato per SSH, Nginx/Apache, applicativi custom. Rate limiting sulle porte esposte. Ban automatico IP dopo N tentativi falliti con periodo configurabile.
Unattended-upgrades configurato per le patch di sicurezza automatiche. Riavvii programmati in finestre di manutenzione. Nessun kernel con CVE noto in attesa di update manuale.
Auditd per il tracciamento degli accessi privilegiati, log centralizzati con rotazione configurata, alert su comandi sudo e accessi SSH. Chi ha fatto cosa e quando.
Configurazione sicura di Nginx/Apache (headers, TLS 1.2+, cipher suite), PHP-FPM (open_basedir, disable_functions), MySQL/PostgreSQL (utenti con privilegi minimi, bind locale).
Il processo parte da un audit dello stato attuale: cosa è esposto, cosa non dovrebbe esserlo, cosa manca. Il risultato è un piano di intervento prioritizzato per rischio, non una checklist standard applicata ciecamente.