Post

Proteggi il Tuo Sistema: Guida Completa all'Hardening di Linux

Il termine “hardening” si riferisce al processo di miglioramento della sicurezza di un sistema riducendo le sue vulnerabilità e rafforzandone le difese contro gli attacchi diminuendo anche la disponibilità di superficie per un attacco. Hardening di Linux significa configurare il sistema operativo in modo che sia il più sicuro possibile contro le minacce interne ed esterne. Questo articolo esplorerà diverse tecniche e best practice per l’hardening di un sistema Linux.

Introduzione

In un articolo precedente, ho condiviso alcuni consigli su come migliorare la sicurezza del proprio sistema Linux. In questo nuovo articolo, esploreremo ulteriori suggerimenti da integrare a quelli già discussi, per rendere il vostro sistema ancora più robusto e sicuro.

Policy di Password

Impostare politiche di password forti è essenziale. Utilizzare pam_pwquality per forzare l’uso di password complesse.

1
sudo nano /etc/security/pwquality.conf

Impostare parametri come:

1
2
3
minlen = 12
dcredit = -1
ucredit = -1

Disabilitare i Servizi Inutilizzati

Ogni servizio in esecuzione su un sistema Linux rappresenta una potenziale vulnerabilità. Identificare e disabilitare i servizi non necessari.

1
2
3
4
sudo systemctl list-units --type=service --state=running
# Disabilitare un servizio
sudo systemctl disable nome_servizio
sudo systemctl stop nome_servizio

Permessi e Proprietà dei File

Assicurarsi che i file di sistema critici abbiano i permessi corretti (prenderemo per l’esempio il path che gestisce le configurazioni per il secure shell).

1
2
sudo chmod 600 /etc/ssh/sshd_config
sudo chown root:root /etc/ssh/sshd_config

Montaggio Sicuro delle Partizioni

Montare le partizioni con opzioni che aumentano la sicurezza, come noexec, nosuid, e nodev.

1
2
3
sudo nano /etc/fstab
# Esempio di configurazione sicura:
tmpfs /tmp tmpfs defaults,noexec,nosuid,nodev 0 0

Monitoraggio e Logging

Configurazione di Syslog

Assicurarsi che il sistema di logging sia configurato correttamente per monitorare attività sospette.

1
2
3
4
sudo nano /etc/rsyslog.conf
# Abilitare log di auth, kernel, ecc.
auth,authpriv.* /var/log/auth.log
kern.* /var/log/kern.log

Strumenti di Monitoraggio

Lynis

Lynis è uno strumento di auditing di sicurezza che analizza il sistema per identificare potenziali vulnerabilità e suggerire miglioramenti. Alcuni amministratori di sistema creano immagini “golden” da sistemi che hanno superato una “pulizia” con Lynis per poter distribuire un’immagine pulita. Naturalmente, dovrebbe essere eseguito regolarmente e con periodicità per mantenere questo stato.

Un job pianificato con cron è una buona soluzione per creare report regolari anche.

1
2
sudo apt install lynis
sudo lynis audit system

per cercare e correre ai ripari delle possibili vulnerabilità del vostro sistema verificare i suggerimenti indicati dallo scan nel file lynis.log

1
sudo grep Suggestion /var/log/lynis.log

RKHunter

(Rootkit Hunter) è uno strumento per rilevare rootkit, backdoor e exploit locali.

1
2
sudo apt install rkhunter
sudo rkhunter --check

AIDE

(Advanced Intrusion Detection Environment) è uno strumento per monitorare l’integrità dei file. Consente di rilevare modifiche non autorizzate ai file di sistema.

1
2
3
4
5
6
sudo apt install aide
sudo aideinit
# Copiare il file di database iniziale
sudo cp /var/lib/aide/aide.db.new /var/lib/aide/aide.db
# Eseguire una verifica di integrità
sudo aide --check

ricordatevi che ad ogni nuova operazione/aggiornamento da parte vostra dovrà essere aggiornato anche il db aide con il seguente comando:

1
sudo aide --update

Protezione dalle Scansioni delle Porte con Portsentry

Le scansioni delle porte portscans sono un metodo comune utilizzato dagli attaccanti per individuare le porte aperte e i servizi in esecuzione su un sistema. Proteggere il sistema dalle portscans è un aspetto cruciale dell’hardening di Linux. Portsentry è uno strumento efficace per rilevare e bloccare le scansioni delle porte in tempo reale.

Installazione e Configurazione di Portsentry

Portsentry può essere utilizzato per monitorare e bloccare gli IP che effettuano scansioni delle porte della vostra server linux.

1
sudo apt install portsentry

Modifica il file di configurazione di Portsentry per configurare il monitoraggio delle porte e l’azione da intraprendere in caso di rilevamento di una scansione.

1
sudo nano /etc/portsentry/portsentry.conf

Porte a rischio (modifica le porte in base alle tue esigenze):

1
2
3
# Ports to monitor for suspicious activity
TCP_PORTS="1,11,15,23,79,80,110,113,119,135,139,143,256,512,513,514,1080,1524,2000,6667,12345,12346,20034,27665,31337,32771,32772,32773,32774,40421,49724,54320"
UDP_PORTS="1,7,9,69,161,162,512,513,514,2000,31337,32770,32771,32772,32773,32774,40421,49724,54320"

Un’azione da prendere in considerazione potrebbe essere il blocco dell’IP rilevato; di default, il valore qui riportato è 1 (che significa bloccare), mentre 0 indica l’opposto.

1
2
BLOCK_UDP="1"
BLOCK_TCP="1"
1
2
sudo systemctl start portsentry
sudo systemctl enable portsentry

Puoi testare esegui una scansione delle porte dal tuo stesso sistema o da un altro dispositivo nella rete. Usa nmap per effettuare una scansione:

1
nmap -sS -p 1-1024 localhost <---- ip o host

Portsentry dovrebbe rilevare la scansione e bloccare l’IP di origine, aggiornando i file di configurazione del firewall per impedire ulteriori tentativi di connessione.

L’hardening di un sistema Linux è un processo continuo che richiede attenzione costante e aggiornamenti regolari. Seguendo le pratiche descritte in questo articolo, inclusi l’utilizzo di strumenti come Lynis, RKHunter e AIDE, è possibile ridurre significativamente le vulnerabilità e proteggere il sistema da molteplici minacce. Mantenere un sistema sicuro richiede una combinazione di configurazioni corrette, aggiornamenti regolari, e un monitoraggio attivo.

Questo post è sotto licenza CC BY 4.0 a nome dell'autore.

DISCLAIMER: Questo blog non rappresenta una testata giornalistica in quanto viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge N°62 del 07/03/2001. Leggi di più

© Cybertome. Alcuni diritti riservati.

Servizio offerto da Jekyll con tema Chirpy