Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
ossec [Le 26/08/2010, 14:32] 188.62.43.21ossec [Le 09/05/2020, 13:28] (Version actuelle) – [Désinstallation] 151.127.32.49
Ligne 1: Ligne 1:
 +{{tag>pare-feu réseau}}
 +----
  
 +====== Détecteur d'intrusions OSSEC-HIDS ======
 +{{ http://www.ossec.net/wp-content/uploads/2012/06/ossec-hids.png}}
 +Cette page traite de la procédure à suivre afin d'installer et d'utiliser OSSEC, un détecteur d'intrusion sur machine hôte : "HIDS" ([[wpfr>NIDS#HIDS_.28IDS_machine.29|Host-based Intrusion Detection System]]). Ossec est l'un des HIDS le plus utilisés. Il est très facile d'accès tant pour l'installation que pour l'utilisation.
 +
 +Pouvant réagir, c'est également une IPS, [[wpfr>Système_de_prévention_d'intrusion|Système de prévention d'intrusion]] machine.
 +
 +Pour en savoir plus sur ce qu'est un IDS, vous pouvez vous référer à [[http://www.commentcamarche.net/detection/ids.php3|ce lien]], ou à [[wpfr>NIDS|celui-là]].
 +
 +Voir en complément :
 +  * [[Snort Inline]] : un IPS réseau.
 +
 +===== Pré-requis =====
 +
 +
 +  * Disposer des [[:sudo|droits d'administration]] ;
 +  * Disposer d'une connexion à Internet configurée et activée ;
 +  * (Pour l'interface graphique uniquement) Disposer d'[[:apache2]].
 +
 +
 +===== Installation =====
 +====Installation manuelle====
 +Malheureusement, OSSEC n'est pas dans les dépôts, il vous faudra donc vous rendre sur [[http://www.ossec.net/?page_id=19|le site d'OSSEC]] et télécharger la dernière version. À l'heure où ce tuto est écrit, il s'agit de la 2.5.1
 +
 +Une fois le paquet téléchargé, placez-vous dans le répertoire de téléchargement et  continuez par
 +
 +<code>wget http://www.ossec.net/files/ossec-hids-2.5.1.tar.gz
 +tar xzvf ossec-hids-2.5.1.tar.gz
 +cd ossec-hids-2.5.1
 +sudo ./install.sh</code>
 +
 +Parmi la liste de questions qu'on va vous poser, vous pouvez choisir la réponse par défaut dans tous les cas. Lorsqu'on vous demande quel type d'installation préférer, optez pour **local**.
 +
 +<note tip>Quand on vous demande si vous souhaitez ajouter des IP dans la liste blanche, pensez à renseigner les IPs des ordinateurs de votre LAN, le cas échéant.</note>
 +
 +Si vous souhaitez utiliser une interface graphique pour OSSEC, il vous faudra un serveur [[:apache2]] en état de fonctionnement. 
 +
 +Si c'est le cas, rendez-vous à nouveau sur le site d'OSSEC et téléchargez la dernière version de la [[http://www.ossec.net/wiki/index.php/OSSECWUI:Install|WebInterface]] dans** /var/www/**. Ensuite :
 +
 +
 +<code>cd /var/www
 +sudo tar xzvf ~/ossec-wui-0.3.tar.gz
 +sudo mv ossec-wui* ossec
 +
 +cd ossec
 +sudo ./setup.sh
 +
 +cd /var/www
 +sudo chown -R www-data.www-data ossec
 +sudo usermod -G ossec -a www-data</code>
 +
 +L'installation est terminée, vous pouvez maintenant relancer apache et lancer OSSEC :
 +
 +<code>sudo /etc/init.d/apache2 restart
 +sudo /etc/init.d/ossec start</code>
 +
 +====Installation par dépot launchpad====
 +Pour [[lucid|lucid 10.04 LTS]], [[12.04_lts|Precise 12.04 LTS]]:[[https://launchpad.net/~nicolas-zin/+archive/ossec-ubuntu|PPA]] (comment installer un [[ppa|PPA]]?), __préférer l'installation manuelle__
 +==== Erreur au lancement dans le navigateur ====
 +Si au lancement de la page web vous obtenez une erreur de type opendir failed (/var/ossec) et que vous avez modifé le répertoire d'ossec à l'installation (/home/ossec par exemple, il faut éditer le fichier /var/www/ossec/ossec_conf.php et faire les changements suivants :
 +<code>
 +/* Ossec directory */
 +$ossec_dir="/home/ossec";
 +</code> 
 +
 +
 +===== Configuration =====
 +
 +Il n'y a pas grand chose à faire pour configurer OSSEC. Vous pouvez toutefois [[:tutoriel:comment_modifier_un_fichier|jeter un oeil]] au fichier de configuration **/var/ossec/etc/ossec.conf**, ainsi qu'au [[http://www.ossec.net/main/manual/#config|manuel (anglais)]] si vous souhaitez tout paramétrer.
 +
 +===== Ajout de surveillance dossier en temps réel =====
 +
 +
 +Pour ajouter un fichier à surveiller, [[:tutoriel:comment_modifier_un_fichier|ouvrez le fichier]] **/var/ossec/etc/ossec.conf**. 
 +
 +Recherchez syscheck dans ce document xml, et ajoutez sous <directories> séparé d'une virgule les dossiers à ajouter ou rajoutez des lignes qui suivent cette forme : 
 +
 +<code><directories check_all="yes">/home/ton_user/ton_dossier,/ton_autre_dossier</directories></code>
 +
 +Par défaut OSSEC fait une analyse d'intégrité toutes les 22h que vous remarquerez par cette valeur : **<frequency>79200</frequency>**. 
 +
 +**Voici un exemple d'analyse en temps réel :**
 +
 +Ajouter **Firefox et Filezilla**... (Il est conseillé d'avoir Quad de 2.8 GHz minimum pour appliquer cet exemple.) Cela donne :
 +
 +<code><directories check_all="yes" realtime="yes">/home/marypopy/.mozilla,/home/marypopy/.filezilla</directories></code>
 +(Remplacer "marypopy" par votre identifiant)
 +
 +Mise à jour de la base pour la vérification d'intégrité
 +<code>sudo /var/ossec/bin/syscheck_update -a</code>
 +Et
 +<code>sudo /var/ossec/bin/syscheck_update -l</code>
 +
 +Suite à une modification, relancez OSSEC
 +<code>sudo /var/ossec/bin/ossec-control restart</code>
 +Si vous obtenez un message de ce type c'est ok :
 +<code>Starting OSSEC HIDS v2.4.1 (by Trend Micro Inc.)...
 +ossec-maild already running...
 +ossec-execd already running...
 +ossec-analysisd already running...
 +ossec-logcollector already running...
 +ossec-syscheckd already running...
 +ossec-monitord already running...
 +Completed.</code>
 +Si ce n'est pas ok vous obtiendrez un message de ce type :
 +<code>Starting OSSEC HIDS v2.4.1 (by Trend Micro Inc.)...
 +2010/08/26 13:20:25 ossec-config(1226): ERROR: Error reading XML file '/var/ossec/etc/ossec.conf': XMLERR: Attribute 'realtime' not followed by a " or '. (line 76).
 +2010/08/26 13:20:25 ossec-testrule(1202): ERROR: Configuration error at '/var/ossec/etc/ossec.conf'. Exiting.
 +ossec-analysisd: Configuration error. Exiting.
 +2010/08/26 13:20:25 ossec-config(1226): ERROR: Error reading XML file '/var/ossec/etc/ossec.conf': XMLERR: Attribute 'realtime' not followed by a " or '. (line 76).
 +2010/08/26 13:20:25 ossec-maild(1202): ERROR: Configuration error at '/var/ossec/etc/ossec.conf'. Exiting.
 +ossec-maild: Configuration error. Exiting</code>
 +
 +==== Configurer le <syscheck> aux petits oignons. ====
 +
 +A la place de "check_all" qui active toutes les actions énumérées ci-dessous, vous pourriez préférer les activer séparément selon vos besoins.
 +
 +  * //check_sum// vérifications selon sommes de contrôle
 +  * //check_size// vérification sur la taille des fichiers
 +  * //check_owner// vérification basée sur le changement de propriétaire
 +  * //check_perm// vérification basée sur le changement de permission
 +
 +Toujour indiquer le yes. L'activation se passe donc sous cette forme :
 +<file><directories check_sum="yes" check_size="yes" check_owner="yes" check_groupe="yes" check_perm="yes">/home/ton_user/tes_dossiers</directories></file>
 +Cette forme est absolument égale à :
 +<file><directories check_all="yes">/home/ton_user/tes_dossiers</directories></file>
 +Ensuite "yes" "no" équivaut à un bouton on ou off
 +
 +La balise **<ignore>** sert à exclure du contenu de l'analyse.
 +
 +Vous trouverez des informations sur [[http://forum.ubuntu-fr.org/viewtopic.php?id=404799|cette discussion du forum]].
 +
 +==== Visionner vos alertes en temps réel ====
 +
 +
 +Visionner les alertes en temps réel :
 +<code>sudo tail -f /var/ossec/logs/alerts/alerts.log</code>
 +ou
 +<code>sudo tail -f /var/ossec/logs/ossec.log</code>
 +
 +==== Ajouter un agent ====
 +
 +L'avantage d'OSSEC est de pouvoir monitorer des serveurs distants appelés agents. Pour les ajouter voici comment faire. 
 +
 +On lance sur le serveur maître (celui qui monitorera les agents) la commande suivante :
 +
 +<code>(server)# /var/ossec/bin/manage_agents
 +
 +****************************************
 +* OSSEC HIDS v0.8 Agent manager.       *
 +* The following options are available: *
 +****************************************
 +   (A)dd an agent (A).
 +   (E)xtract key for an agent (E).
 +   (L)ist already added agents (L).
 +   (R)emove an agent (R).
 +   (Q)uit.
 +Choose your actions: A,E,R or Q:   //On choisi alors l'action a réaliser. On choisi d'ajouter un agent (option A):
 +- Adding a new agent (use ‘q’ to return to main menu).
 +  Please provide the following:
 +    * A name for the new agent: Linux01 // On choisi le nom qu'on veut donné a notre agent, par exemple Linux01
 +    * The IP Address for the new agent: 192.168.2.32 // On entre l'adresse IP du serveur
 +
 +    * An ID for the new agent[001]:
 +Agent information:
 +    ID:001
 +    Name:linux1
 +    IP Address:192.168.2.32
 +
 +Confirm adding it?(y/n): y
 +Added.
 +</code>
 +
 +Voila l'agent est ajouté. Seulement pour sécuriser les transferts il faut créer un clé de confiance entre les deux entités. 
 +
 +Toujours du coté serveur on tape :
 +<code>
 +(server)# /var/ossec/bin/manage_agents
 +
 +****************************************
 +* OSSEC HIDS v0.8 Agent manager.       *
 +* The following options are available: *
 +****************************************
 +   (A)dd an agent (A).
 +   (E)xtract key for an agent (E).
 +   (L)ist already added agents (L).
 +   (R)emove an agent (R).
 +   (Q)uit.
 +Choose your actions: A,E,R or Q: e          // On choisi cette option pour créer la clef
 +
 +Available agents:
 +    ID: 001, Name: linux1, IP: 192.168.2.32
 +    ID: 002, Name: obsd1, IP: 192.168.2.10
 +Provide the ID of the agent you want to extract the key: 001  // On choisi notre premier agent
 +
 +Agent key information for ‘001′ is:
 +CDAxIGxpbnX4MSAxOTIuMTY4LjAuMzIgOWM5MENlYzNXXXYYYZZZZZ==
 +
 +** Press ENTER to continue
 +</code>
 +
 +Il faut copier cette clé et la coller dans l'agent. 
 +
 +Maintenant du coté agent on fait ceci :
 +<code>
 +(agent)# /var/ossec/bin/manage_agents
 +
 +****************************************
 +* OSSEC HIDS v0.8 Agent manager.       *
 +* The following options are available: *
 +****************************************
 +   (I)mport key for the server (I).
 +   (Q)uit.
 +   Choose your actions: I or Q: i  // On choisi d'insérer une clef
 +
 +* Provide the Key generated from the server.
 +* The best approach is to cut and paste it.
 +*** OBS: Do not include spaces or new lines.
 +
 +Paste it here: CDAxIGxpbnX4MSAxOTIuMTY4LjAuMzIgOWM5MENlYzNXXXYYYZZZZZ== // On colle la clé créer avec le serveur
 +
 +Agent information:
 +    ID:001
 +    Name:linux1
 +    IP Address:192.168.2.32
 +
 +Confirm adding it?(y/n): y
 +
 +Added.
 +** Press ENTER to continue.
 +
 +****************************************
 +* OSSEC HIDS v0.8 Agent manager.       *
 +* The following options are available: *
 +****************************************
 +    (I)mport key for the server (I).
 +    (Q)uit.
 +Choose your actions: I or Q: q
 +
 +manage_agents: Exiting ..
 +</code>
 +
 +Voila notre agent est configuré sur le serveur.
 +
 +===== Utilisation=====
 +
 +Pour vous connecter à l'interface graphique, tapez ceci dans votre navigateur :
 +
 +http://votre_ip_locale/ossec
 +
 +L'interface est très simple, aussi ne nécessite-t-elle pas plus d'explications... :-)
 +
 +Pour afficher la liste des agents actifs on saisis dans un terminal :
 +
 +<file>/var/ossec/bin/agent_control -lc
 +OSSEC HIDS agent_control. List of available agents:
 +ID: 000, Name: enigma.ossec.net (server), IP: 127.0.0.1, Active/Local
 +ID: 002, Name: winhome, IP: 192.168.2.190, Active
 +ID: 005, Name: jul, IP: 192.168.2.0/24, Active
 +ID: 165, Name: esqueleto2, IP: 192.168.2.99, Active
 +ID: 174, Name: lili3win, IP: 192.168.2.0/24, Active</file>
 +
 +Pour interroger le status d'un agent on tape :
 +<file>/var/ossec/bin/agent_control -i 002
 +
 +    OSSEC HIDS agent_control. Agent information:
 +    Agent ID: 002
 +    Agent Name: winhome
 +    IP address: 192.168.2.190
 +    Status: Active
 +
 +    Operating system: Microsoft Windows XP Professional (Build 2600)
 +    Client version: OSSEC HIDS v1.5-SNP-080412
 +    Last keep alive: Fri Apr 25 14:33:03 2008
 +
 +    Syscheck last started at: Fri Apr 25 05:07:13 2008
 +    Rootcheck last started at: Fri Apr 25 09:04:12 2008</file>
 +
 +===== Désinstallation =====
 +
 +Pour supprimer cette application, il vous faut supprimer les fichiers liés, via le [[terminal]] :
 +
 +<code>
 +sudo rm -rf /var/ossec
 +sudo rm -f /etc/init.d/ossec
 +sudo rm -f /etc/ossec-init.conf
 +sudo deluser ossecm
 +sudo deluser ossecr
 +sudo delgroup ossec
 +</code>
 +
 +
 +
 +
 +
 +=====Installation du Rootcheck OSSEC=====
 +Le rootcheck OSSEC est un outil puissant. N'appartenant pas à la logithèque il vous faudra le compiler.
 +Le tutorial présent sur le forum à la page :[[http://forum.ubuntu-fr.org/viewtopic.php?pid=3725713#p3725713]] vous expliquera facilement comment installer le Rootcheck et cela même si vous êtes débutant.
 +
 +===== Voir aussi =====
 +
 +Des références particulièrement intéressantes pour approfondir le sujet peuvent être utiles.
 +
 +  * **(en)** [[http://www.ossec.net/main/manual|Manuel officiel]]
 +  * **(en)** Howto ameliore sur OSSec (PDF) [[http://blog.savoirfairelinux.com/tutoriels/livre-gratuit-ossec-how-to-the-quick-and-dirty-way/]]
 +  * **(fr)** [[http://www.system-linux.eu/index.php?post/2009/10/29/Installation-et-configuration-d-Ossec|Aller plus loin]]
 +
 +----
 +//Contributeurs : [[utilisateurs:naoli|naoli]], [[utilisateurs:MaryPopy]]//.
 +
 +// Basé sur [[http://ubuntuforums.org/showthread.php?t=919472|« Ubuntu Intrusion Detection »]] par bodhi.zazen.//