Una guida essenziale per grandi e piccini su Ubuntu.
Dall’aggiornamento del sistema alla configurazione del firewall, protezione SSH, crittografia dei dati e strumenti avanzati come AppArmor e Fail2Ban.
1. Aggiornamenti
Importanza: Gli aggiornamenti software sono fondamentali per correggere vulnerabilità di sicurezza che possono essere sfruttate dagli attaccanti. Queste vulnerabilità possono esporre il tuo sistema a malware, accessi non autorizzati e altre minacce.
Come procedere:
- Aggiornamenti via terminale:
- Aggiorna l’indice dei pacchetti:
sudo apt update
- Aggiorna i pacchetti installati:
sudo apt upgrade
- Aggiorna la distribuzione (quando necessario):
sudo apt dist-upgrade
- Aggiorna l’indice dei pacchetti:
- Aggiornamenti automatici:
- Installa il pacchetto
unattended-upgrades
per automatizzare gli aggiornamenti di sicurezza critici. - Configura il file
/etc/apt/apt.conf.d/50unattended-upgrades
per personalizzare le impostazioni.
- Installa il pacchetto
Consiglio: Verifica regolarmente la disponibilità di aggiornamenti anche per i software non inclusi nei repository ufficiali.
2. Firewall (UFW)
Cos’è un firewall: Un firewall controlla il traffico di rete in entrata e in uscita, permettendo o bloccando il traffico in base a regole di sicurezza predefinite.
Utilizzo di UFW (Uncomplicated Firewall):
- Abilita UFW:
sudo ufw enable
- Consenti servizi specifici:
- SSH:
sudo ufw allow ssh
osudo ufw allow 22
- HTTP:
sudo ufw allow http
osudo ufw allow 80
- HTTPS:
sudo ufw allow https
osudo ufw allow 443
- SSH:
- Blocco di porte o servizi: Usa
sudo ufw deny [porta/servizio]
per bloccare specifici ingressi. - Verifica lo stato del firewall:
sudo ufw status verbose
Consiglio: Configura il firewall in base alle necessità del tuo sistema, permettendo solo il traffico essenziale.
3. Software affidabile
Perché è importante: L’installazione di software da fonti non verificate può introdurre malware o software malevolo nel tuo sistema.
Pratiche consigliate:
- Repository ufficiali: Installa software principalmente dai repository ufficiali di Ubuntu, garantendo così l’affidabilità e la sicurezza dei pacchetti.
- PPA (Personal Package Archives):
- Se necessario, aggiungi PPA solo da sviluppatori o organizzazioni di fiducia.
- Rimuovi PPA non utilizzati o non affidabili con
sudo add-apt-repository --remove ppa:nome/ppa
.
- Verifica delle firme: Quando scarichi software esterno, verifica le firme digitali o gli hash per assicurarti dell’integrità dei file.
4. Password robuste
Caratteristiche di una password sicura:
- Lunghezza: Almeno 12 caratteri.
- Complessità : Uso di lettere maiuscole e minuscole, numeri e simboli.
- Unicità : Non riutilizzare la stessa password per account diversi.
Strumenti utili:
- Gestori di password:
- KeePassXC: Un gestore di password open-source che memorizza le password in un database crittografato localmente.
- Bitwarden: Una soluzione cloud con opzioni per l’auto-hosting.
- Generazione di password:
- Usa
openssl rand -base64 14
per generare una password casuale nel terminale.
- Usa
Consiglio: Evita parole comuni o informazioni personali nelle password.
5. Autenticazione a due fattori (2FA)
Vantaggi: L’uso del 2FA aggiunge un ulteriore livello di sicurezza, richiedendo un secondo fattore (come un codice temporaneo) oltre alla password.
Implementazione su Ubuntu:
- SSH con 2FA:
- Installa Google Authenticator:
sudo apt install libpam-google-authenticator
- Configura l’utente: esegui
google-authenticator
e segui le istruzioni. - Modifica PAM: aggiungi
auth required pam_google_authenticator.so
in/etc/pam.d/sshd
. - Riavvia il servizio SSH:
sudo systemctl restart sshd
- Installa Google Authenticator:
- Servizi online:
- Abilita il 2FA su account come email, cloud storage e piattaforme di sviluppo.
6. Limita utilizzo root
Perché limitare l’accesso root: L’uso estensivo dei privilegi di root può aumentare il rischio di eseguire accidentalmente comandi dannosi o permettere a malware di avere pieno accesso al sistema.
Buone pratiche:
- Usa
sudo
con parsimonia: Esegui comandi consudo
solo quando necessario. - Sessioni root limitate: Evita di accedere come root o di usare
sudo su
per lunghe sessioni. - Gestione degli utenti:
- Crea utenti con privilegi adeguati.
- Usa gruppi per gestire i permessi.
- Log delle attività : Monitora l’uso di
sudo
controllando i log in/var/log/auth.log
.
7. Crittografia
Crittografia del disco intero:
- Durante l’installazione: Seleziona l’opzione per crittografare il disco con LUKS.
- Vantaggi: Protegge tutti i dati in caso di furto o smarrimento del dispositivo.
Crittografia delle directory:
- eCryptfs:
- Puoi crittografare la tua home directory o altre cartelle specifiche.
- Installa con
sudo apt install ecryptfs-utils
.
- VeraCrypt:
- Per creare volumi crittografati.
- Scarica dal sito ufficiale e segui le istruzioni di installazione.
Consiglio: Ricorda di fare backup delle chiavi di crittografia in un luogo sicuro.
8. Servizi non necessari
Perché disabilitare servizi: Ogni servizio in esecuzione può rappresentare un potenziale punto di ingresso per attacchi.
Come identificare e gestire i servizi:
- Elenca i servizi attivi:
sudo systemctl list-units --type=service
- Disabilita un servizio all’avvio:
sudo systemctl disable nome_servizio
- Arresta un servizio in esecuzione:
sudo systemctl stop nome_servizio
- Rimuovi pacchetti inutili:
- Usa
sudo apt remove nome_pacchetto
per rimuovere software non necessario.
- Usa
Consiglio: Mantieni il sistema pulito e con solo i servizi essenziali attivi.
9. Backup regolari
Importanza dei backup: I backup proteggono i tuoi dati da perdite dovute a errori hardware, attacchi informatici o errori umani.
Strategie di backup:
- Regola 3-2-1:
- 3 copie dei dati.
- 2 su diversi tipi di supporti (ad esempio, disco locale e cloud).
- 1 copia off-site (ad esempio, cloud o in un luogo fisico diverso).
- Strumenti di backup:
- Déjà Dup: Un’interfaccia grafica semplice per backup e ripristino.
- rsync: Strumento da linea di comando potente per sincronizzare file.
- Timeshift: Per creare snapshot del sistema.
Consiglio: Automatizza i backup per garantirne la regolarità .
10. Antivirus
(Si hai letto bene…)
Anche se meno comune, il malware per Linux esiste. Inoltre, puoi prevenire la diffusione di virus verso altri sistemi.
Utilizzo di ClamAV:
- Installazione:
sudo apt install clamav
- Aggiorna le definizioni dei virus:
sudo freshclam
- Esegui una scansione:
- Scansione di una directory:
clamscan -r /percorso/directory
- Scansione e rimozione di file infetti:
clamscan -r --remove /percorso/directory
- Scansione di una directory:
Consiglio: Programma scansioni regolari e aggiorna frequentemente le definizioni.
11. Monitoraggio sistema
Strumenti per il monitoraggio:
- chkrootkit:
- Installazione:
sudo apt install chkrootkit
- Esecuzione:
sudo chkrootkit
- Installazione:
- rkhunter:
- Installazione:
sudo apt install rkhunter
- Aggiornamento database:
sudo rkhunter --update
- Esecuzione:
sudo rkhunter --check
- Installazione:
Analisi dei log:
- Log di sistema: Controlla
/var/log/syslog
e/var/log/auth.log
per attività sospette. - Strumenti di monitoraggio avanzati:
- Auditd: Per monitorare e registrare le attività del sistema.
- Ossec: Un sistema di rilevamento delle intrusioni host-based.
Consiglio: Configura notifiche o alert per attività anomale.
Sezioni Articolo
Categorie Blog