Sicurezza Server · 5 min read · Jan 08, 2026

Mettere in sicurezza il server CentOS con Bastille e PSAD

Questo articolo mostra come mettere in sicurezza un server CentOS utilizzando psad, Bastille e alcune altre modifiche. psad è uno strumento che aiuta a rilevare scansioni di porte e altro traffico sospetto, e il programma di indurimento Bastille blocca un sistema operativo, configurando proattivamente il sistema per una maggiore sicurezza e diminuendo la sua suscettibilità a compromissioni.

Creare un account aggiuntivo per l’amministrazione dei sistemi

Il comando “adduser” creerà un account.

adduser service

Il comando “passwd” imposterà la password per l’account “service”.

passwd service

Creare una directory per i download.

Questo creerà una directory per scaricare i RPM e altri file.

mkdir /downloads  
cd /downloads

Installazione di PSAD

psad è una raccolta di tre demoni di sistema leggeri (due demoni principali e un demone di supporto) che girano su macchine Linux e analizzano i messaggi di log di Netfilter per rilevare scansioni di porte e altro traffico sospetto. Maggiori informazioni possono essere trovate qui.

wget http://www.cipherdyne.com/psad/download/psad-2.4.6.tar.gz  
tar xfz psad-2.4.6.tar.gz  
cd psad-2.4.6  
./install.pl

Installazione di Bastille

Il programma di indurimento Bastille “blocca” un sistema operativo, configurando proattivamente il sistema per una maggiore sicurezza e diminuendo la sua suscettibilità a compromissioni. Bastille può anche valutare lo stato attuale di indurimento di un sistema, riportando in modo granulare su ciascuna delle impostazioni di sicurezza con cui lavora. Maggiori informazioni possono essere trovate qui.

wget https://downloads.sourceforge.net/project/bastille-linux/bastille-linux/3.2.1/Bastille-3.2.1-0.1.noarch.rpm  
  
rpm -ivh Bastille-3.2.1-0.1.noarch.rpm 

Esecuzione di Bastille

Questo avvierà il prompt interattivo.

/usr/sbin/bastille -c

Risposta al prompt interattivo

Queste impostazioni sono raccomandazioni per l’installazione Perfect Setup. Potrebbero esserci determinati valori che potrebbero dover essere cambiati se sono stati installati altri software o pacchetti.

accept  
  
  
  
Vuoi impostare permessi più restrittivi sulle utility di amministrazione? -> YES  
  
  
  
Vuoi disabilitare lo stato SUID per mount/umount? -> YES  
Vuoi disabilitare lo stato SUID per ping? -> YES  
Vuoi disabilitare lo stato SUID per at? -> YES  
Vuoi disabilitare gli strumenti r? -> YES  
Vuoi disabilitare lo stato SUID per usernetctl? -> YES  
Vuoi disabilitare lo stato SUID per traceroute? -> YES  
Dovrebbe Bastille disabilitare i protocolli r in chiaro che utilizzano l'autenticazione basata su IP? -> YES  
Vuoi applicare l'invecchiamento delle password? -> YES  
Vuoi impostare il umask predefinito? -> YES   
Quale umask vuoi impostare per gli utenti sul sistema? -> 007  
Dobbiamo vietare il login root sui tty 1-6? -> NO  
Dovrebbe Bastille chiederti di eliminare account superflui? -> NO  
Vuoi proteggere con password il prompt GRUB? -> NO  
Vuoi disabilitare il riavvio CTRL-ALT-DELETE? -> YES  
Vuoi proteggere con password la modalità utente singolo? -> NO  
Vuoi impostare un default-deny su TCP Wrappers e xinetd? -> NO  
Vuoi visualizzare messaggi di "Uso autorizzato" al momento del login? -> YES  
Chi è responsabile per concedere l'autorizzazione ad utilizzare questa macchina? -> NOME DELLA TUA AZIENDA  
Vuoi mettere limiti sull'uso delle risorse di sistema? -> YES  
  
  
  
Dobbiamo limitare l'accesso alla console a un piccolo gruppo di account utente? -> YES  
Quali account dovrebbero poter accedere alla console? -> root  
Vuoi impostare la contabilità dei processi? -> NO  
  
  
  
Vuoi disabilitare acpid e/o apmd? -> YES  
Vuoi disabilitare i servizi PCMCIA? -> YES  
Vuoi disabilitare GPM? -> YES  
Vuoi disattivare lo script HP OfficeJet (hpoj) su questa macchina? -> YES  
Vuoi disattivare lo script ISDN su questa macchina? -> YES  
Vuoi disattivare l'esecuzione di kudzu all'avvio? -> YES  
Vuoi fermare sendmail dall'esecuzione in modalità demone? -> YES  
Vuoi disattivare named, almeno per ora? -> NO  
Vuoi disattivare il server web Apache? -> NO  
Vuoi legare il server web per ascoltare solo localhost? -> NO  
Vuoi legare il server web a un'interfaccia particolare? -> NO  
  
  
  
Vuoi disattivare il seguire i link simbolici? -> YES  
Vuoi disabilitare la stampa? -> YES  
Vuoi installare gli script TMPDIR/TMP? -> NO  
Vuoi eseguire lo script di filtraggio dei pacchetti? -> YES  
  
  
  
Hai bisogno delle opzioni di rete avanzate? -> NO  
Server DNS: [0.0.0.0/0] -> LASCIA PREDEFINITO  
Interfacce pubbliche: -> eth+  
Servizi TCP da controllare: -> telnet ftp imap pop3 finger sunrpc exec login linuxconf ssh  
Servizi UDP da controllare: -> 31337  
Servizi ICMP da controllare: -> VUOTO  
Nomi dei servizi TCP o numeri di porta da consentire sulle interfacce pubbliche: -> 21 22 25 53 80 110 111 143 443 631 953 993 995 3306  
Nomi dei servizi UDP o numeri di porta da consentire sulle interfacce pubbliche: -> VUOTO  
Forzare la modalità passiva? -> YES  
Servizi TCP da bloccare: -> 2049 2065:2090 6000:6020 7100  
Servizi UDP da bloccare: -> 2049 6770  
Tipi ICMP consentiti: -> destination-unreachable echo-reply time-exceeded  
Abilitare la verifica dell'indirizzo sorgente? -> YES  
Metodo di rifiuto: -> DENY  
Interfacce per le query DHCP: -> VUOTO  
Server NTP da interrogare: -> VUOTO  
Tipi ICMP da vietare in uscita: -> destination-unreachable time-exceeded  
Dovrebbe Bastille eseguire il firewall e abilitarlo all'avvio? -> YES  
Vuoi configurare psad? -> YES  
Intervallo di controllo psad: -> 15  
Soglia di scansione della gamma di porte: -> 1  
Abilitare la persistenza della scansione? -> NO  
Timeout della scansione: -> 3600  
Mostra tutte le firme di scansione? -> NO  
Livelli di pericolo: -> 5 50 1000 5000 10000  
Indirizzi email: -> root@localhost  
Livello di pericolo dell'alert via email: -> 1  
Allerta su tutti i nuovi pacchetti? -> YES  
Abilitare il blocco automatico degli IP in scansione? -> NO  
Dovrebbe Bastille abilitare psad all'avvio? -> YES  
Hai finito di rispondere alle domande, cioè possiamo apportare le modifiche? -> YES  
  

Modificare la configurazione SSH

Questo richiederà un passaggio extra per mettere in sicurezza SSH. Le seguenti impostazioni:

  • assicurano che venga utilizzato SSHv2
  • l’utente root non può accedere direttamente tramite SSH
  • gli account senza password non saranno autorizzati ad accedere
  • verrà visualizzato un banner di login.
vi /etc/ssh/sshd_config

Modifica le seguenti righe e rimuovi il commento. Non dimenticare di salvare ed uscire.

#Protocol 2,1 -> Protocol 2  
#PermitRootLogin yes -> PermitRootLogin no  
#PermitEmptyPasswords no -> PermitEmptyPasswords no  
#Banner /some/path -> Banner /etc/issue

Riavviare il sistema

Si prega di riavviare il sistema come controllo finale. Assicurati che tutto parta correttamente.

reboot
Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.