Comment installer et configurer les notifications de sécurité OSSEC sur Ubuntu 14.04

introduction

Comment faites-vous le suivi des activités autorisées et non autorisées sur votre serveur?

OSSEC est un outil que vous pouvez installer sur votre serveur pour suivre son activité.

OSSEC est un système de détection d'intrusion (HIDS) à source ouverte basé sur l'hôte qui effectue l'analyse de journal, la vérification de l'intégrité, la surveillance du registre Windows, la détection de rootkit, les alertes en fonction du temps et les réponses actives. Il peut être utilisé pour surveiller un serveur ou des milliers de serveurs en mode serveur / agent.

S'il est correctement configuré, OSSEC peut vous donner une vue en temps réel de ce qui se passe sur votre serveur.

Ce tutoriel vous montrera comment installer et configurer OSSEC pour surveiller un serveur DigitalOcean exécutant Ubuntu 14.04 LTS. Nous allons configurer OSSEC de sorte que si un fichier est modifié, supprimé ou ajouté au serveur, OSSEC vous en informera par courrier électronique, en temps réel. Cela s'ajoute aux autres fonctionnalités de vérification de l'intégrité offertes par OSSEC.

OSSEC peut faire plus que vous informer des modifications de fichiers, mais un article ne suffit pas pour vous montrer comment tirer parti de toutes ses fonctionnalités.

** Quels sont les avantages de l'OSSEC?

Avant de passer à la partie installation et configuration, voyons quelques avantages concrets que vous obtenez de l’utilisation de OSSEC.

Vous trouverez ci-dessous un exemple de notification par e-mail d'OSSEC, indiquant que le fichier/var/ossec/etc/ossec.conf a été modifié.

OSSEC HIDS Notification.
2014 Nov 29 09:45:15

Received From: kuruji->syscheck
Rule: 552 fired (level 7) -> "Integrity checksum changed again (3rd time)."
Portion of the log(s):

Integrity checksum changed for: '/var/ossec/etc/ossec.conf'
Size changed from '7521' to '7752'

Si vous avez reçu une telle alerte et que vous ne vous attendiez pas à ce que ce fichier soit modifié, vous savez alors qu'un événement non autorisé s'est produit sur votre serveur.

Voici un autre exemple d'alerte par e-mail d'OSSEC, indiquant que le fichier/etc/ossec/testossec.txt a été supprimé.

OSSEC HIDS Notification.
2014 Nov 29 10:56:14

Received From: kuruji->syscheck
Rule: 553 fired (level 7) -> "File deleted. Unable to retrieve checksum."
Portion of the log(s):

File /etc/ossec/testossec.txt was deleted. Unable to retrieve checksum.

Encore une fois, si vous n'avez pas supprimé le fichier en question, vous devez déterminer ce qui se passe sur votre serveur.

Maintenant, si ce qui précède vous a suffisamment motivé pour vouloir installer OSSEC, voici quelques petites choses à faire en premier lieu.

Conditions préalables

Vous devez bien sûr disposer d’un serveur que vous souhaitez surveiller. Ce tutoriel suppose que vous en avez déjà un et qu’il est déjà configuré pour l’utilisation. Il peut s’agir d’un serveur que vous venez de configurer ou que vous utilisez depuis des mois. Le plus important est que vous y ayez accès et que vous puissiez vous connecter via SSH. Configurer OSSEC n’est pas quelque chose que vous voulez entreprendre quand vous ne savez toujours pas comment ssh sur votre serveur.

  • Serveur Ubuntu 14.04

  • Vous devez créer un utilisateursudo sur le serveur. Dans cet exemple, l'utilisateur est nommésammy. Cependant, ce tutoriel sera beaucoup plus facile à réaliser en tant qu'utilisateur deroot:

sudo su
  • Facultatif: si vous souhaitez envoyer du courrier à partir d'un serveur SMTP local, vous devez installerPostfix pour un simple envoi de courrier électronique

  • L'installation d'OSSEC implique une certaine compilation, vous devez donc installergcc etmake. Vous pouvez installer les deux en installant un seul package appelébuild-essential

  • Vous devez également installer un package appeléinotify-tools, qui est requis pour que les alertes en temps réel fonctionnent

Pour installer tous les packages requis, commencez par mettre à jour le serveur:

apt-get update

L'installer les paquets:

apt-get install build-essential inotify-tools

Maintenant que nous avons trié les préliminaires, passons à la partie amusante.

[[step-1 -—- download-and-verify-ossec]] == Étape 1 - Télécharger et vérifier OSSEC

Au cours de cette étape, vous allez télécharger l’archive OSSEC et un fichier contenant ses sommes de contrôle cryptographiques.

Dans la mesure où il s’agit d’un article de sécurité, nous allons effectuer un petit travail supplémentaire pour vérifier que nous installons un logiciel valide. L'idée est de générer les sommes de contrôle MD5 et SHA1 de l'archive OSSEC téléchargée et de les comparer avec celles du fichier de sommes de contrôle. S'ils correspondent, vous pouvez alors supposer que l'archive n'a pas été falsifiée.

Au moment de la rédaction de ce manuel, la dernière édition de serveur OSSEC est la version 2.8.1. Pour le télécharger, tapez:

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

Pour télécharger le fichier de somme de contrôle, tapez:

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

Pour vérifier que les deux fichiers sont en place, tapez:

ls -l ossec*

Vous devriez voir les fichiers:

ossec-hids-2.8.1-checksum.txt
ossec-hids-2.8.1.tar.gz

Maintenant, examinons le fichier de somme de contrôle avec la commandecat, comme ceci:

cat ossec-hids-2.8.1-checksum.txt

Production attendue:

MD5(ossec-hids-2.8.1.tar.gz)= c2ffd25180f760e366ab16eeb82ae382
SHA1(ossec-hids-2.8.1.tar.gz)= 0ecf1df09558dc8bb4b6f65e1fb2ca7a7df9817c

Dans la sortie ci-dessus, les parties importantes sont celles à droite du signe=. Ce sont les checksums MD5 et SHA1 de l'archive.

Nous allons maintenant nous assurer que les sommes de contrôle que nous générons pour l'archive correspondent aux sommes de contrôle que nous avons téléchargées.

Pour générer le MD5sum de l'archive, tapez:

md5sum ossec-hids-2.8.1.tar.gz

Production attendue:

c2ffd25180f760e366ab16eeb82ae382  ossec-hids-2.8.1.tar.gz

Comparez la somme de contrôle MD5 générée à celle du fichier de somme de contrôle. Ils devraient correspondre.

Faites la même chose pour la somme de contrôle SHA1 en tapant:

sha1sum  ossec-hids-2.8.1.tar.gz

Production attendue:

0ecf1df09558dc8bb4b6f65e1fb2ca7a7df9817c  ossec-hids-2.8.1.tar.gz

Si les deux correspondent, vous êtes prêt à partir. Deuxième étape fait signe.

[[step-2 -—- install-ossec]] == Étape 2 - Installer OSSEC

Dans cette étape, vous allez installer OSSEC.

OSSEC peut être installé en modeserver,agent,local ouhybrid. Cette installation sert à surveiller le serveur sur lequel OSSEC est installé. Cela signifie une installation delocal.

Avant de pouvoir commencer l'installation, vous devez développer le fichier. Vous faites cela en tapant:

tar -zxf ossec-hids-2.8.1.tar.gz

Après cela, vous devriez avoir un répertoire nomméossec-hids-2.8.1. Pour démarrer l'installation, vous devez changer (cd) dans ce répertoire, ce que vous faites en tapant:

cd ossec-hids-2.8.1

Pour voir le contenu du répertoire dans lequel vous vous trouvez, utilisez la commandels en tapant:

ls -lgG

Vous devriez voir ces fichiers et répertoires:

total 100
drwxrwxr-x  4  4096 Sep  8 21:03 active-response
-rw-rw-r--  1   542 Sep  8 21:03 BUGS
-rw-rw-r--  1   289 Sep  8 21:03 CONFIG
drwxrwxr-x  6  4096 Sep  8 21:03 contrib
-rw-rw-r--  1  3196 Sep  8 21:03 CONTRIBUTORS
drwxrwxr-x  4  4096 Sep  8 21:03 doc
drwxrwxr-x  4  4096 Sep  8 21:03 etc
-rw-rw-r--  1  1848 Sep  8 21:03 INSTALL
-rwxrwxr-x  1 32019 Sep  8 21:03 install.sh
-rw-rw-r--  1 24710 Sep  8 21:03 LICENSE
-rw-rw-r--  1  1664 Sep  8 21:03 README.md
drwxrwxr-x 30  4096 Sep  8 21:03 src

Le seul fichier qui nous intéresse dans cette liste estinstall.sh. C’est le script d’installation OSSEC. Pour lancer l'installation, tapez:

./install.sh

Vous serez invité à répondre à certaines questions d'installation.

La première tâche qui vous sera demandée est le choix de la langue. Comme indiqué dans la sortie ci-dessous, la langue par défaut est l'anglais. Tout au long du processus d’installation, si vous devez faire une sélection, toute entrée entre crochets est la valeur par défaut. Si vous souhaitez utiliser la valeur par défaut, appuyez sur la touche Entrée pour accepter la valeur par défaut. Outre la saisie de votre adresse e-mail, nous vous recommandons d'accepter toutes les valeurs par défaut, sauf si vous savez ce que vous faites.

Les entrées sont affichées enred.

Donc, si votre langue est l'anglais, appuyez surENTER. Sinon, tapez les deux lettres de votre langue et appuyez sur Entrée.

  (en/br/cn/de/el/es/fr/hu/it/jp/nl/pl/ru/sr/tr) [en]:

Après avoir sélectionné la langue, vous devriez voir ceci:

OSSEC HIDS v2.8 Installation Script - http://www.ossec.net

 You are about to start the installation process of the OSSEC HIDS.
 You must have a C compiler pre-installed in your system.
 If you have any questions or comments, please send an e-mail
 to [email protected] (or [email protected]).

  - System: Linux kuruji 3.13.0-36-generic
  - User: root
  - Host: kuruji

  -- Press ENTER to continue or Ctrl-C to abort. --

Après avoir appuyé sur ENTER, vous devriez obtenir:

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

Tapezlocal et appuyez sur ENTRÉE. Tu devrais obtenir:

  - Local installation chosen.

2- Setting up the installation environment.

  - Choose where to install the OSSEC HIDS [/var/ossec]:

Acceptez la valeur par défaut et appuyez sur ENTREE. Après cela, vous aurez:

    - Installation will be made at  /var/ossec .

3- Configuring the OSSEC HIDS.

  3.1- Do you want e-mail notification? (y/n) [y]:

Appuyez sur Entrée.

  - What's your e-mail address? [email protected]

Tapez l'adresse email où vous souhaitez recevoir les notifications d'OSSEC.

  - We found your SMTP server as: mail.example.com.
  - Do you want to use it? (y/n) [y]:

--- Using SMTP server:  mail.example.com.

Appuyez sur ENTREE, sauf si vous souhaitez utiliser des paramètres de serveur SMTP spécifiques.

Il est maintenant temps de faire savoir à OSSEC les vérifications qu’il devrait exécuter. En réponse à toute invite du script, acceptez la valeur par défaut en appuyant surENTER.

ENTER pour le démon de contrôle d'intégrité.

  3.2- Do you want to run the integrity check daemon? (y/n) [y]:

- Running syscheck (integrity check daemon).

ENTER pour la détection de rootkit.

  3.3- Do you want to run the rootkit detection engine? (y/n) [y]:

- Running rootcheck (rootkit detection).

ENTER pour une réponse active.

  3.4- Active response allows you to execute a specific command based on the events received.

   Do you want to enable active response? (y/n) [y]:

   Active response enabled.

Acceptez les valeurs par défaut pour la réponse de suppression du pare-feu. Votre sortie peut montrer certaines options IPv6 - ça va.

  Do you want to enable the firewall-drop response? (y/n) [y]:

- firewall-drop enabled (local) for levels >= 6

   - Default white list for the active response:
      - 8.8.8.8
      - 8.8.4.4

   - Do you want to add more IPs to the white list? (y/n)? [n]:

Vous pouvez ajouter votre adresse IP ici, mais ce n'est pas nécessaire.

OSSEC va maintenant présenter une liste par défaut de fichiers qu’il va surveiller. Des fichiers supplémentaires peuvent être ajoutés après l’installation, appuyez sur ENTREE.

3.6- Setting the configuration to analyze the following logs:
    -- /var/log/auth.log
    -- /var/log/syslog
    -- /var/log/dpkg.log

 - If you want to monitor any other file, just change
   the ossec.conf and add a new localfile entry.
   Any questions about the configuration can be answered
   by visiting us online at http://www.ossec.net .


   --- Press ENTER to continue ---

À ce stade, le programme d'installation dispose de toutes les informations nécessaires pour installer OSSEC. Détendez-vous et laissez l'installateur faire son travail. L'installation prend environ 5 minutes. Si l'installation réussit, vous êtes maintenant prêt à démarrer et configurer OSSEC.

Note: Une des raisons pour lesquelles l'installation peut échouer est si un compilateur n'est pas installé. Dans ce cas, vous obtiendrez une erreur comme celle-ci:

5- Installing the system
 - Running the Makefile
./install.sh: 85: ./install.sh: make: not found

 Error 0x5.
 Building error. Unable to finish the installation.

Si vous obtenez cette erreur, vous devez installerbuild-essential, comme expliqué dans la section Prérequis du didacticiel.

Si l'installation réussit, vous devriez voir ce type de sortie:

 - System is Debian (Ubuntu or derivative).
 - Init script modified to start OSSEC HIDS during boot.

 - Configuration finished properly.

 - To start OSSEC HIDS:
                /var/ossec/bin/ossec-control start

 - To stop OSSEC HIDS:
                /var/ossec/bin/ossec-control stop

 - The configuration can be viewed or modified at /var/ossec/etc/ossec.conf

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

OSSEC est maintenant installé. La prochaine étape consiste à le démarrer.

[[step-3 -—- start-ossec]] == Étape 3 - Démarrez OSSEC

Par défaut, OSSEC est configuré pour démarrer au démarrage, mais la première fois, vous devrez le démarrer manuellement.

Si vous voulez vérifier son statut actuel, tapez:

/var/ossec/bin/ossec-control status

Production attendue:

ossec-monitord not running...
ossec-logcollector not running...
ossec-syscheckd not running...
ossec-analysisd not running...
ossec-maild not running...
ossec-execd not running...

Cela vous indique qu'aucun des processus OSSEC n'est en cours d'exécution.

Pour démarrer OSSEC, tapez:

/var/ossec/bin/ossec-control start

Vous devriez le voir commencer:

Starting OSSEC HIDS v2.8 (by Trend Micro Inc.)...
Started ossec-maild...
Started ossec-execd...
Started ossec-analysisd...
Started ossec-logcollector...
Started ossec-syscheckd...
Started ossec-monitord...
Completed.

Si vous vérifiez à nouveau l'état, vous devriez obtenir la confirmation que OSSEC est maintenant en cours d'exécution.

/var/ossec/bin/ossec-control status

Cette sortie montre que OSSEC est en cours d'exécution:

ossec-monitord is running...
ossec-logcollector is running...
ossec-syscheckd is running...
ossec-analysisd is running...
ossec-maild is running...
ossec-execd is running...

Juste après avoir démarré OSSEC, vous devriez recevoir un email qui se lit comme ceci:

OSSEC HIDS Notification.
2014 Nov 30 11:15:38

Received From: ossec2->ossec-monitord
Rule: 502 fired (level 3) -> "Ossec server started."
Portion of the log(s):

ossec: Ossec started.

C’est une autre confirmation que OSSEC fonctionne et qu’il vous enverra des alertes par courrier électronique chaque fois que quelque chose qu’il est configuré pour surveiller se produit. Même quand il sera redémarré, OSSEC vous enverra un email.

Si vous n'avez pas reçu ce courriel tout de suite, ne vous inquiétez pas. Vous devrez peut-être encore modifier vos paramètres de courrier électronique (que nous verrons plus loin dans le didacticiel) pour vous assurer que les courriers électroniques de votre serveur OSSEC peuvent parvenir à votre fournisseur de messagerie. Cela est particulièrement vrai pour certains fournisseurs de services de messagerie tiers tels que Google et Fastmail.

[[step-4 -—- configure-ossec-for-real-time-alerts-on-file-modifications]] == Étape 4 - Configurer OSSEC pour les alertes en temps réel sur les modifications de fichiers

Apprenez ensuite à connaître les fichiers et les répertoires d’OSSEC et à modifier les paramètres de surveillance et d’alerte d’OSSEC.

Dans ce didacticiel, nous allons modifier OSSEC pour vous avertir chaque fois qu'un fichier est modifié, supprimé ou ajouté aux répertoires que vous spécifiez.

Se familiariser avec la structure de répertoire d’OSSEC

Le répertoire par défaut d'OSSEC est un environnementchroot-ed (sandbox) auquel seul un utilisateur disposant des privilèges root (admin) peut accéder. Un utilisateur standard ne peut pascd dans/var/ossec ou même lister les fichiers qu'il contient. En tant qu'utilisateur root (ou admin), vous pouvez le faire.

Donc,cd dans le répertoire d'installation en tapant:

cd /var/ossec

Pour lister les fichiers dans votre nouveau répertoire de travail, tapez:

ls -lgG

Vous devriez voir ces fichiers et répertoires:

total 40
dr-xr-x---  3 4096 Nov 26 14:56 active-response
dr-xr-x---  2 4096 Nov 20 20:56 agentless
dr-xr-x---  2 4096 Nov 20 20:56 bin
dr-xr-x---  3 4096 Nov 29 00:49 etc
drwxr-x---  5 4096 Nov 20 20:56 logs
dr-xr-x--- 11 4096 Nov 20 20:56 queue
dr-xr-x---  4 4096 Nov 20 20:56 rules
drwxr-x---  5 4096 Nov 20 21:00 stats
dr-xr-x---  2 4096 Nov 20 20:56 tmp
dr-xr-x---  3 4096 Nov 29 18:34 var
  • Le fichier de configuration principal d’OSSEC se trouve dans le répertoire/var/ossec/etc.

  • Les règles prédéfinies se trouvent dans le répertoire/var/ossec/rules

  • Les commandes utilisées pour gérer OSSEC sont en/var/ossec/bin

  • Prenez note du répertoire/var/ossec/logs. Si OSSEC génère une erreur, le fichier/var/ossec/logs/ossec.log de ce répertoire est le premier endroit à rechercher

Fichier de configuration principal, /var/ossec/etc/ossec.conf

Pour accéder au fichier de configuration principal, vous devez changer en/var/ossec/etc. Pour ce faire, tapez:

cd /var/ossec/etc

Si vous effectuez unls dans ce répertoire, vous verrez ces fichiers et répertoires:

ls -lgG

Résultats:

total 120
-r--r----- 1 97786 Sep  8 22:03 decoder.xml
-r--r----- 1  2842 Sep  8 22:03 internal_options.conf
-r--r----- 1  3519 Oct 30 13:46 localtime
-r--r----- 1  7752 Nov 29 09:45 ossec.conf
-rw-r----- 1    87 Nov 20 20:56 ossec-init.conf
drwxrwx--- 2  4096 Nov 20 21:00 shared

Le fichier de configuration principal est/var/ossec/etc/ossec.conf.

Avant de modifier le fichier, effectuez une copie de sauvegarde, au cas où. Pour faire cette copie, utilisez la commandecp comme ceci:

cp /var/ossec/etc/ossec.conf /var/ossec/etc/ossec.conf.00

L’idée est que si vos modifications ne fonctionnent pas ou gâchent le système, vous pouvez revenir à la copie et revenir à la normale. C’est la pratique de récupération après sinistre la plus simple dont vous devriez toujours tirer parti.

Maintenant, ouvrezossec.conf en utilisant l'éditeurnano.

nano /var/ossec/etc/ossec.conf

Le fichier de configuration est un très long fichier XML avec plusieurs sections.

Paramètres de messagerie

Les e-mails deNote: sont en général capricieux, surtout si vous envoyez à un fournisseur de messagerie plus strict, comme l'envoi à une adresse Gmail. Vérifiez votre courrier indésirable et modifiez vos paramètres si nécessaire.

Les premières options de configuration que vous verrez sont les informations d'identification de messagerie spécifiées lors de l'installation. Si vous devez spécifier une adresse électronique et / ou un serveur SMTP différents, vous devez le faire.


    yes
    [email protected]
    mail.example.com.
    ossecm@ossec_server

Par défaut, OSSEC envoie 12 courriels par heure, vous ne serez donc pas inondé d'alertes par courrier électronique. Vous pouvez augmenter ou diminuer cette valeur en ajoutant le paramètre<email_maxperhour>N</email_maxperhour> à cette section afin qu'elle se lise:


    yes
    [email protected]
    mail.example.com.
    ossecm@ossec_server
    N

Veuillez remplacerN par le nombre d'e-mails que vous souhaitez recevoir par heure, entre1 et9999.

Certains fournisseurs de services de messagerie tiers (Google et Fastmail, par exemple) abandonneront silencieusement les alertes envoyées par OSSEC si l'adresse de<email_from> ne contient pas de partie de domaine valide, comme celle du bloc de code ci-dessus. Pour éviter cela, assurez-vous que cette adresse électronique contient une partie de domaine valide. Par exemple:


    yes
    [email protected]
    mail.example.com.
    sammy@ossec_server.com

Les adresses<email_to> et<email_from> peuvent être identiques. Par exemple:


    yes
    [email protected]
    mail.example.com.
    [email protected]

Si vous ne souhaitez pas utiliser le serveur SMTP d'un fournisseur de messagerie externe, vous pouvez spécifier votre propre serveur SMTP, si vous en avez configuré un. (Ceci n'est pas couvert dans ce didacticiel, mais vous pouvez installer Postfix aprèsthese instructions.) Si votre serveur SMTP fonctionne sur le même Droplet que OSSEC, remplacez le paramètre<smtp_server> parlocalhost. Par exemple:

OSSEC n’envoie pas d’alerte en temps réel par défaut, mais ce didacticiel appelle à la notification en temps réel, c’est donc l’un des aspects que vous allez modifier.

Si vous ne recevez toujours pas les e-mails attendus d'OSSEC, vérifiez les journaux à/var/ossec/logs/ossec.log pour les erreurs de messagerie.

Exemple d'erreurs de messagerie:

2014/12/18 17:48:35 os_sendmail(1767): WARN: End of DATA not accepted by server
2014/12/18 17:48:35 ossec-maild(1223): ERROR: Error Sending email to 74.125.131.26 (smtp server)

Vous pouvez utiliser ces messages d'erreur pour vous aider à résoudre les problèmes liés à la réception de notifications par courrier électronique.

Fréquence des balayages

Dans la section<syscheck> deossec.conf, qui commence comme ceci:


    
    79200

Nous allons activer les alertes pour la création de nouveaux fichiers. Ajoutez la ligne<alert_new_files>yes</alert_new_files> pour qu'elle se lit comme suit:


    
    79200

    yes

À des fins de test, vous pouvez également définir une fréquence de vérification du système beaucoup plus basse. Par défaut, la vérification du système est exécutée toutes les 22 heures. À des fins de test, vous souhaiterez peut-être régler ce paramètre sur une fois par minute, c'est-à-dire60 secondes. Revert this to a sane value when you are done testing.


    
    60

    yes

Paramètres de changement de répertoire et de fichier

Après cela, vous devriez voir la liste des répertoires système surveillés par OSSEC. Il se lit comme suit:


/etc,/usr/bin,/usr/sbin
/bin,/sbin

Activer la surveillance en temps réel en ajoutant les paramètresreport_changes="yes" realtime="yes" à chaque ligne. Modifiez ces lignes pour qu'elles se lisent:


/etc,/usr/bin,/usr/sbin
/bin,/sbin

report_changes="yes" fait exactement ce qui est dit. Idem pourrealtime="yes".

Outre la liste par défaut des répertoires que OSSEC a été configurée pour surveiller, vous pouvez ajouter de nouveaux répertoires que vous souhaitez surveiller. Dans cette section suivante, je vais dire à OSSEC de surveiller/home/sammy et/var/www. Pour cela, je vais ajouter une nouvelle ligne juste sous les lignes existantes, de sorte que cette section se lise maintenant:


/etc,/usr/bin,/usr/sbin
/bin,/sbin

/home/sammy,/var/www

Vous devez modifier les répertoires pour qu'ils correspondent aux paramètres souhaités. Si votre utilisateur ne s'appelle passammy, vous voudrez changer le chemin vers le répertoire de base.

Pour les nouveaux répertoires à surveiller, nous avons ajouté l'optionrestrict, qui indique à OSSEC de surveiller uniquement les formats de fichiers spécifiés. Vous n’avez pas à utiliser cette option, mais elle est pratique lorsque vous avez d’autres fichiers, tels que des fichiers image, sur lesquels vous ne souhaitez pas que OSSEC envoie une alerte.

Ce sont tous les changements pourossec.conf. Vous pouvez sauvegarder et fermer le fichier.

Règles locales dans /var/ossec/rules/local_rules.xml

Le prochain fichier à modifier se trouve dans le répertoire/var/ossec/rules, donccd dedans en tapant:

cd /var/ossec/rules

Si vous faites unls dans ce répertoire, vous verrez un tas de fichiers XML comme ceux-ci:

ls -lgG

Sortie abrégée:

total 376
-r-xr-x--- 1  5882 Sep  8 22:03 apache_rules.xml
-r-xr-x--- 1  2567 Sep  8 22:03 arpwatch_rules.xml
-r-xr-x--- 1  3726 Sep  8 22:03 asterisk_rules.xml
-r-xr-x--- 1  4315 Sep  8 22:03 attack_rules.xml

...

-r-xr-x--- 1  1772 Nov 30 17:33 local_rules.xml

...

-r-xr-x--- 1 10359 Sep  8 22:03 ossec_rules.xml

...

Seuls deux de ces fichiers nous intéressent actuellement -local_rules.xml etossec_rules.xml. Ce dernier contient les définitions de règles par défaut d’OSSEC, tandis que le premier correspond à l’ajout de vos règles personnalisées. En d’autres termes, à partlocal_rules.xml, vous ne modifiez aucun fichier de ce répertoire.

Les définitions de règle par défaut dansossec_rules.xml sont utiles à regarder afin que nous puissions les modifier et les copier dans nos règles locales. Dansossec_rules.xml, la règle qui se déclenche lorsqu'un fichier estadded dans un répertoire surveillé est la règle554. Par défaut, OSSEC n'envoie pas d'alertes lorsque cette règle est déclenchée; la tâche consiste donc à modifier ce comportement. Voici à quoi ressemble la règle 554 dans la version par défaut:


ossec
syscheck_new_entry
File added to the system.
syscheck,

OSSEC n'envoie pas d'alerte si une règle a unlevel défini sur0. Nous voulons modifier cette règle pour augmenter le niveau d'alerte. Au lieu de la changer dans le fichier par défaut, nous allons copier la règle danslocal_rules.xml et la modifier pour qu'elle puisse déclencher une alerte.

Pour ce faire, faites une copie de sauvegarde du fichier/var/ossec/rules/local_rules.xml:

cp /var/ossec/rules/local_rules.xml /var/ossec/rules/local_rules.xml.00

Modifiez le fichier avecnano:

nano /var/ossec/rules/local_rules.xml

Ajoutez la nouvelle règle à la fin du fichier. Assurez-vous qu'il se trouve dans la balise<group> ... </group>.


ossec
syscheck_new_entry
File added to the system.
syscheck,

Enregistrez et fermez le fichier.

Ce sont tous les changements nécessaires.

Redémarrer OSSEC

Il ne reste plus qu’à redémarrer OSSEC, ce qui doit être fait chaque fois que vous modifiez les fichiers OSSEC. Pour redémarrer le type OSSEC:

/var/ossec/bin/ossec-control restart

Si tout fonctionne correctement, vous devriez recevoir un email de la part d'OSSEC qui vous informera qu'il a (re) démarré.

[[step-5 -—- trigger-file-change-alerts]] == Étape 5 - Déclencher des alertes de changement de fichier

Et en fonction de ce qui se passe dans les répertoires que OSSEC a été configuré pour surveiller, vous devriez recevoir des courriels qui lisent quelque chose comme ceci:

Essayez maintenant de créer un fichier d'exemple en/home/sammy

touch /home/sammy/index.html

Attends une minute. Ajouter du contenu:

nano /home/sammy/index.html

Attends une minute. Supprimer le fichier:

rm /home/sammy/index.html

Vous devriez commencer à recevoir des notifications comme ceci:

OSSEC HIDS Notification.
2014 Nov 30 18:03:51

Received From: ossec2->syscheck
Rule: 550 fired (level 7) -> "Integrity checksum changed."
Portion of the log(s):

Integrity checksum changed for: '/home/sammy/index.html'
Size changed from '21' to '46'
What changed:
1c1,4
< This is an html file
---

     

This is an html file

Old md5sum was: '4473d6ada73de51b5b36748627fa119b' New md5sum is : 'ef36c42cd7014de95680d656dec62de9' Old sha1sum was: '96bd9d685a7d23b20abd7d8231bb215521bcdb6c' New sha1sum is : '5ab0f31c32077a23c71c18018a374375edcd0b90'

Ou ca:

OSSEC HIDS Notification.
2014 Dec 01 10:13:31

Received From: ossec2->syscheck
Rule: 554 fired (level 7) -> "File added to the system."
Portion of the log(s):

New file '/var/www/header.html' added to the file system.

Note: OSSEC n'envoie pas d'alertes en temps réel sur les ajouts de fichiers, uniquement sur les modifications et les suppressions de fichiers. Les alertes sur les ajouts de fichiers sortent après une vérification complète du système, qui est régie par le temps de vérification de la fréquence enossec.conf.

nano /var/ossec/etc/ossec.conf

Réglage pourfrequency:


    
    79200

Encore une fois, si vous ne recevez pas d'e-mails, vérifiez votre spam, vérifiez vos/var/ossec/logs/ossec.log, vérifiez vos journaux de messagerie, etc.

Conclusion

J'espère que cela vous a donné un avant-goût de ce que l'OSSEC a à offrir. Des configurations et des configurations plus avancées sont possibles, alors restez à l'affût des prochains articles sur la manière de déployer OSSEC pour surveiller et protéger vos serveurs.

Pour plus d’informations sur OSSEC, visitez le site Web du projet à l’adressehttp://www.ossec.net/.