Come installare OSSEC HIDS su un server CentOS 7

introduzione

OSSEC è un sistema di rilevamento delle intrusioni (HIDS) open-source e basato su host che esegue analisi dei log, controllo dell'integrità, monitoraggio del registro di Windows, rilevamento dei rootkit, avvisi basati sul tempo e risposta attiva. È un'applicazione di sicurezza indispensabile su qualsiasi server.

OSSEC può essere installato per monitorare solo il server su cui è installato (un'installazione locale) o essere installato come server per monitorare uno o più agenti. In questo tutorial imparerai come installare OSSEC per monitorare CentOS 7 come installazione locale.

Prerequisiti

  • Un server CentOS 7 preferibilmente configurato con chiavi SSH e personalizzato utilizzando la configurazione iniziale di un server CentOS 7 . Accedere al server utilizzando l'account utente standard. Supponiamo che username sia joe .

    ssh -l joe server-ip-address
    

Passaggio 1: installare i pacchetti richiesti

OSSEC verrà compilato dal sorgente, quindi è necessario un compilatore per renderlo possibile. Richiede anche un pacchetto aggiuntivo per le notifiche. Installali digitando:

sudo yum install -y gcc inotify-tools

Passaggio 2: scaricare e verificare OSSEC

OSSEC viene consegnato come tarball compresso che deve essere scaricato dal sito Web del progetto. È inoltre necessario scaricare il file di checksum, che verrà utilizzato per verificare che il tarball non sia stato manomesso. Al momento della presente pubblicazione, l'ultima versione di OSSEC è 2.8.2. Controlla la pagina di download del progetto e scarica qualunque sia l'ultima versione.

Per scaricare il tarball, digitare:

wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.2.tar.gz

Per il file checksum, digitare:

wget -U ossec http://www.ossec.net/files/ossec-hids-2.8.2-checksum.txt

Con entrambi i file scaricati, il passaggio successivo è verificare i checksum MD5 e SHA1 del tarball. Per MD5sum, digitare:

md5sum -c ossec-hids-2.8.2-checksum.txt

L'output previsto è:

ossec-hids-2.8.2.tar.gz: OK
md5sum: WARNING: 1 line is improperly formatted

Per verificare l'hash SHA1, digitare:

sha1sum -c ossec-hids-2.8.2-checksum.txt

E il risultato atteso è:

ossec-hids-2.8.2.tar.gz: OK
sha1sum: WARNING: 1 line is improperly formatted

Passaggio 3: determinare il server SMTP

Durante il processo di installazione di OSSEC, ti verrà richiesto di specificare un server SMTP per il tuo indirizzo email. Se non sai di cosa si tratta, il metodo più semplice per scoprirlo è emettere questo comando dal tuo computer locale (sostituisci l'indirizzo email falso con quello reale):

dig -t mx you@example.com

La sezione pertinente nell'output è mostrata in questo blocco di codice. In questo esempio di output, il server SMTP per l'indirizzo e-mail richiesto è alla fine della riga - mail.vivaldi.net. . Si noti che il punto alla fine è incluso.

;; ANSWER SECTION:
vivaldi.net.        300 IN  MX  10 mail.vivaldi.net.

Passaggio 4: installare OSSEC

Per installare OSSEC, devi prima decomprimere il tarball, cosa che fai digitando:

tar xf ossec-hids-2.8.2.tar.gz

Verrà decompresso in una directory che porta il nome e la versione del programma. Cambia o cdin esso. OSSEC 2.8.2, la versione installata per questo articolo, presenta un bug minore che deve essere corretto prima di iniziare l'installazione. Quando viene rilasciata la prossima versione stabile, che dovrebbe essere OSSEC 2.9, ciò non dovrebbe essere necessario, poiché la correzione è già nel ramo principale. Ripararlo per OSSEC 2.8.2 significa solo modificare un file, che si trova nella active-responsedirectory. Il file è hosts-deny.sh, quindi aprilo usando:

nano active-response/hosts-deny.sh

Verso la fine del file, cerca questo blocco di codice:

# Deleting from hosts.deny
elif [ "x$" = "xdelete" ]; then
   lock;
   TMP_FILE = `mktemp /var/ossec/ossec-hosts.XXXXXXXXXX`
   if [ "X$" = "X" ]; then
      # Cheap fake tmpfile, but should be harder then no random data
      TMP_FILE = "/var/ossec/ossec-hosts.`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -1 `"
   fi

Sulle righe che iniziano con TMP_FILE , eliminare gli spazi attorno al segno = . Dopo aver rimosso gli spazi, quella parte del file dovrebbe essere come mostrato nel blocco di codice qui sotto. Salva e chiudi il file.

# Deleting from hosts.deny
elif [ "x$" = "xdelete" ]; then
   lock;
   TMP_FILE=`mktemp /var/ossec/ossec-hosts.XXXXXXXXXX`
   if [ "X$" = "X" ]; then
      # Cheap fake tmpfile, but should be harder then no random data
      TMP_FILE="/var/ossec/ossec-hosts.`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -1 `"
   fi

Ora che la correzione è attiva, possiamo avviare il processo di installazione, digitando:

sudo ./install.sh

Durante tutto il processo di installazione, ti verrà richiesto di fornire alcuni input. Nella maggior parte dei casi, è sufficiente premere INVIO per accettare l'impostazione predefinita. Innanzitutto, ti verrà richiesto di selezionare la lingua di installazione, che per impostazione predefinita è l'inglese (en). Quindi premi INVIO se è la tua lingua preferita. Altrimenti, inserisci le 2 lettere dall'elenco delle lingue supportate. Successivamente, premere di nuovo INVIO .

La prima domanda ti chiederà quale tipo di installazione desideri. Qui, inserisci locale .

1- What kind of installation do you want (server, agent, local, hybrid or help)? local

Per domande successive, premere INVIO per accettare l'impostazione predefinita. La domanda 3.1 ti chiederà il tuo indirizzo e-mail e quindi chiederà il tuo server SMTP. Per quella domanda, inserisci un indirizzo email valido e il server SMTP che hai determinato al passaggio 3.

3- Configuring the OSSEC HIDS.

   3.1- Do you want e-mail notification? (y/n) [y]: 
      - What's your e-mail address? you@example.com
      - What's your SMTP server ip/host?

Se l'installazione ha esito positivo, dovresti vedere questo output:

- Configuration finished properly.

...

    More information can be found at http://www.ossec.net

    ---  Press ENTER to finish (maybe more information below). ---

Premere INVIO per terminare l'installazione.

Passaggio 5: avviare OSSEC

OSSEC è stato installato, ma non avviato. Per avviarlo, passa prima all'account root.

sudo su

Quindi, avviarlo emettendo il seguente comando.

/var/ossec/bin/ossec-control start

Successivamente, controlla la Posta in arrivo. Dovrebbe esserci un avviso da OSSEC che ti informa che è stato avviato. Con ciò, ora sai che OSSEC è installato e invierà avvisi se necessario.

Passaggio 6: personalizza OSSEC

La configurazione predefinita di OSSEC funziona correttamente, ma ci sono impostazioni che puoi modificare per proteggere meglio il tuo server. Il primo file da personalizzare è il file di configurazione principale ossec.conf, che troverai nella /var/ossec/etcdirectory. Apri il file:

nano /var/ossec/etc/ossec.conf

Il primo elemento da verificare è un'impostazione di posta elettronica, che troverai nella sezione globale del file:

<global>
   <email_notification>yes</email_notification>
   <email_to>finid@vivaldi.net</email_to>
   <smtp_server>mail.vivaldi.net.</smtp_server>
   <email_from>ossecm@vultr.guest</email_from>
</global>

Assicurati che l' indirizzo email_from sia valido. In caso contrario, alcuni server SMTP del provider di posta contrassegneranno gli avvisi di OSSEC come spam. Se il nome FQDN del server non è impostato, la parte del dominio dell'e-mail è impostata sul nome host del server, quindi questa è un'impostazione che si desidera davvero avere un indirizzo e-mail valido.

Un'altra impostazione che si desidera personalizzare, in particolare durante il test del sistema, è la frequenza con cui OSSEC esegue i propri audit. Tale impostazione è nella SysCheck sezione e, per impostazione predefinita, viene eseguito ogni 22 ore. Per testare le funzionalità di avviso di OSSEC, è possibile impostarlo su un valore inferiore, ma ripristinarlo ai valori predefiniti in seguito.

<syscheck>
   <!-- Frequency that syscheck is executed - default to every 22 hours -->
   <frequency>79200</frequency>

Per impostazione predefinita, OSSEC non avvisa quando un nuovo file viene aggiunto al server. Per cambiarlo, aggiungi un nuovo tag appena sotto il tag <frequenza> . Al termine, la sezione dovrebbe ora contenere:

<syscheck>
   <!-- Frequency that syscheck is executed - default to every 22 hours -->
   <frequency>79200</frequency>

   <alert_new_files>yes</alert_new_files>

Un'ultima impostazione che è utile modificare è nell'elenco delle directory che OSSEC dovrebbe controllare. Li troverai subito dopo l'impostazione precedente. Per impostazione predefinita, le directory sono visualizzate come:

<!-- Directories to check  (perform all possible verifications) -->
   <directories check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
   <directories check_all="yes">/bin,/sbin</directories>

Modifica entrambe le righe per apportare modifiche al rapporto OSSEC in tempo reale. Al termine, dovrebbero leggere:

<directories report_changes="yes" realtime="yes" check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories report_changes="yes" realtime="yes" check_all="yes">/bin,/sbin</directories>

Salva e chiudi il file.

Il prossimo file che dovremo modificare è local_rules.xmlnella /var/ossec/rulesdirectory. Quindi cdin quella directory:

cd /var/ossec/rules

Tale directory contiene i file delle regole di OSSEC, nessuno dei quali deve essere modificato, tranne il local_rules.xmlfile. In quel file, aggiungiamo regole personalizzate. La regola che dobbiamo aggiungere è quella che si attiva quando viene aggiunto un nuovo file. Tale regola, numerata 554 , non attiva un avviso per impostazione predefinita. Questo perché OSSEC non invia avvisi quando viene attivata una regola con livello impostato su zero.

Ecco come appare la regola 554 per impostazione predefinita.

 <rule id="554" level="0">
    <category>ossec</category>
    <decoded_as>syscheck_new_entry</decoded_as>
    <description>File added to the system.</description>
    <group>syscheck,</group>
 </rule>

Dobbiamo aggiungere una versione modificata di quella regola nel local_rules.xmlfile. Quella versione modificata è data nel blocco di codice qui sotto. Copia e aggiungilo in fondo al file appena prima del tag di chiusura.

 <rule id="554" level="7" overwrite="yes">
    <category>ossec</category>
    <decoded_as>syscheck_new_entry</decoded_as>
    <description>File added to the system.</description>
    <group>syscheck,</group>
 </rule>

Salvare e chiudere il file, quindi riavviare OSSEC.

/var/ossec/bin/ossec-control restart

Maggiori informazioni

OSSEC è un software molto potente e questo articolo ha appena toccato le basi. Troverai ulteriori impostazioni di personalizzazione nella documentazione ufficiale .

Lascia un commento

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Lintelligenza artificiale può combattere con un numero crescente di attacchi ransomware?

Gli attacchi ransomware sono in aumento, ma l'intelligenza artificiale può aiutare ad affrontare l'ultimo virus informatico? L'intelligenza artificiale è la risposta? Leggi qui sai è AI boone o bane

ReactOS: è questo il futuro di Windows?

ReactOS: è questo il futuro di Windows?

ReactOS, un sistema operativo open source e gratuito è qui con l'ultima versione. Può essere sufficiente alle esigenze degli utenti Windows moderni e abbattere Microsoft? Scopriamo di più su questo vecchio stile, ma un'esperienza del sistema operativo più recente.

Rimani connesso tramite lapp desktop WhatsApp 24*7

Rimani connesso tramite lapp desktop WhatsApp 24*7

Whatsapp ha finalmente lanciato l'app desktop per utenti Mac e Windows. Ora puoi accedere facilmente a Whatsapp da Windows o Mac. Disponibile per Windows 8+ e Mac OS 10.9+

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

In che modo lintelligenza artificiale può portare lautomazione dei processi al livello successivo?

Leggi questo per sapere come l'intelligenza artificiale sta diventando popolare tra le aziende di piccole dimensioni e come sta aumentando le probabilità di farle crescere e dare un vantaggio ai loro concorrenti.

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Laggiornamento del supplemento macOS Catalina 10.15.4 sta causando più problemi che risolverli

Recentemente Apple ha rilasciato macOS Catalina 10.15.4 un aggiornamento supplementare per risolvere i problemi, ma sembra che l'aggiornamento stia causando più problemi che portano al bricking delle macchine mac. Leggi questo articolo per saperne di più

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per lestrazione dei dati dai Big Data

13 strumenti commerciali per l'estrazione dei dati dai Big Data

Che cosè un file system di journaling e come funziona?

Che cosè un file system di journaling e come funziona?

Il nostro computer memorizza tutti i dati in un modo organizzato noto come file system di journaling. È un metodo efficiente che consente al computer di cercare e visualizzare i file non appena si preme search.https://wethegeek.com/?p=94116&preview=true

Singolarità tecnologica: un lontano futuro della civiltà umana?

Singolarità tecnologica: un lontano futuro della civiltà umana?

Man mano che la scienza si evolve a un ritmo rapido, assumendo gran parte dei nostri sforzi, aumentano anche i rischi di sottoporci a una singolarità inspiegabile. Leggi, cosa potrebbe significare per noi la singolarità.

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Uno sguardo a 26 tecniche di analisi dei Big Data: Parte 1

Limpatto dellintelligenza artificiale nella sanità 2021

Limpatto dellintelligenza artificiale nella sanità 2021

L'intelligenza artificiale nell'assistenza sanitaria ha compiuto grandi passi avanti negli ultimi decenni. Pertanto, il futuro dell'IA in sanità continua a crescere giorno dopo giorno.