moussasambe projet de securite zabbix

24
PROJET DE SECURITE ZABBIX Présenté par: MOUSSA SAMBE 03/12/201 4 PROJET SECURITE ZABBIX 1

Upload: moussa-sambe

Post on 18-Jul-2015

193 views

Category:

Internet


1 download

TRANSCRIPT

PROJET DE SECURITE

ZABBIXPrésenté par:

MOUSSA SAMBE

03/12/201

4PROJET SECURITE ZABBIX

1

INTRODUCTIONZabbix est une application libre (open source) de supervision des systèmes

et des réseaux en infrastructure IT, développée en C. L’interface web est

quant à elle, développée en PHP et en JavaScript. Mise à part les versions

serveur et proxy qui sont exclusivement sur Unix, Zabbix est multiplateforme,

et est disponible sous des systèmes d’exploitation tels que par exemple

Windows, Linux, Solaris…etc.

Par sa polyvalence, Zabbix peut superviser et vérifier les statuts d’une

multitude de services réseaux, ou systèmes (serveurs), tout en surveillant au

niveau matériel de nombreux types d’équipements présents au sein

d’une infrastructure IT, comme un routeur, une imprimante, un téléphone

IP, … grâce à l’utilisation du protocole SNMP.

Zabbix supporte également le protocole IPMI, et dispose d’outils d’auto-

découverte d’équipements. Il intègre par défaut la gestion de cartes

(réseaux) et de graphiques, tous visualisables depuis une même interface

03/12/201

4PROJET SECURITE ZABBIX

2

PRESENTATION

Zabbix est une solution de supervision open source. Ce

logiciel permet de superviser des réseaux, et de

surveiller les statuts de différents services, systèmes et

réseaux.

Un peu similaire à Nagios, Zabbix utilise un système de

templates pour définir des hôtes à superviser, ce qui le

rend très pratique pour la définition de grosses

infrastructures.

03/12/201

4PROJET SECURITE ZABBIX

3

COMPOSANTS DE ZABBIX

Zabbix Server: Composant principal, le

Zabbix Server permet une surveillance à distance (et

en local) du bon fonctionnement de différents

services systèmes et réseaux, tels que : les serveurs

Web, les serveurs de courriers, ou bien encore les

serveurs FTP, …etc. Il gère la notification par mail, afin

d’avertir les administrateurs de toute nouvelle alerte.

Zabbix Server peut fonctionner sans avoir recours aux

agents, mais dans ce cas, il ne remontera qu’une

quantité limitée d’informations. Il peut également

utiliser le protocole SNMP pour superviser des hôtes.

03/12/201

4PROJET SECURITE ZABBIX

4

COMPOSANTS DE ZABBIX

Zabbix Frontend

Deuxième composant essentiel après Zabbix Server, Zabbix Frontend est tout simplement l’interface de visualisation des évènements, mais aussi, et surtout l’interface d’administration et de configuration de Zabbix.

Zabbix Frontend, étant une interface Web (php), a l’avantage d’être accessible depuis n’importe quelle plateforme possédant un navigateur internet.

03/12/201

4PROJET SECURITE ZABBIX

5

COMPOSANTS DE ZABBIX

Zabbix ProxyZabbix Proxy permet de collecter des informations sur la performance et la disponibilité des données sur un hôte, avant de les transmettre au Zabbix Server.

Zabbix Proxy offre la possibilité de réduire la charge d’un serveur Zabbix. En effet, toutes les informations collectées peuvent être traitées en local, avant leur transmission au serveur.

Le Proxy de Zabbix est idéal pour une surveillance centralisée de sites distants, fonctionnant comme un serveur intermédiaire, il remplit parfaitement son rôle de collecteur de données d’équipements variés. Distant d’un serveur Zabbix, il agit comme une sonde de collecte et de traitement des données

03/12/201

4PROJET SECURITE ZABBIX

6

COMPOSANTS DE ZABBIX

Zabbix Agent

Bien qu’optionnel, se passer du Zabbix Agent serait une erreur, car même si le serveur Zabbix peut fonctionner sans agent, l’usage de ces derniers permet une meilleure surveillance des hôtes, et donc une supervision plus accrue.

L’installation d’un Zabbix Agent sur un hôte offre essentiellement une surveillance active des ressources locales, des applications, … etc. L’agent envoi toutes informations supervisée au Zabbix Server.

03/12/201

4PROJET SECURITE ZABBIX

7

PRINCIPE DE

FONCTIONNEMENT

Comme l’indique la partie précédente, Zabbix est en

quelque sorte, modulable et dispose d’une capacité

d’adaptation aux infrastructures à la fois pratique, et

simple à mettre en place.

Entre ses différents composants, il existe un certain

nombre d’interactions, utiles à connaître afin d’en

comprendre au mieux le fonctionnement :

03/12/201

4PROJET SECURITE ZABBIX

8

PRINCIPE DE

FONCTIONNEMENT

03/12/201

4PROJET SECURITE ZABBIX

9

PRINCIPE DE

FONCTIONNEMENTDans ce schéma, les composants Zabbix sont regroupés en trois blocs, le premier représente la partie serveur de Zabbix, c’est-à-dire, les composants Server et Frontend, qui sont essentiels au fonctionnement et à l’administration d’un serveur Zabbix. Ces deux composants utilisent une base de données, servant à stocker les données de supervision, et également pour les afficher dans l’interface Web.

Quant aux deux autres blocs, ils représentent la partie Agentet Proxy de Zabbix. L’agent peut interagir avec le proxy, en transférant ses données non-plus directement vers le serveur Zabbix, mais plutôt vers le proxy. Ce dernier agissant comme un serveur intermédiaire, c’est-à-dire un collecteur, il utilise donc comme pour Zabbix Server une base de données.

03/12/201

4PROJET SECURITE ZABBIX

10

CHECKS PASSIFS/CHECKS

ACTIFS

Zabbix utilise le protocole JSON pour communiquer

avec les Zabbix Agents.

CHECK PASSIFS

Dans Zabbix, les checks passifs sont de simples requêtes

de données émises par le serveur (Zabbix Proxy ou

Server) à l’agent installé sur un hôte à superviser. Le

Zabbix Agent répond ensuite à la requête.

03/12/201

4PROJET SECURITE ZABBIX

11

CHECKS PASSIFS/CHECKS

ACTIFS

03/12/201

4PROJET SECURITE ZABBIX

12

CHECKS PASSIFS/CHECKS

ACTIFS

Afin d’illustrer le fonctionnement avec un cas concret,

voici un exemple :

Le serveur ouvre une connexion TCP avec l’agent

Le serveur envoi une requête agent.ping\n

L’agent réceptionne et lit la requête

Réponse de l’agent au serveur avec

<HEADER><DATALEN>1

Le serveur analyse la réponse de l’agent et récupère

la valeur demandée 1

03/12/201

4PROJET SECURITE ZABBIX

13

CHECKS PASSIFS/CHECKS

ACTIFS

Checks actifs

A la différence des checks passifs, les checks actifs

n’attendent pas la requête du serveur pour envoyer

les données, en effet, les checks actifs effectuent eux-

mêmes les tests de manière périodique, puis ils

transmettent les différents résultats au serveur. Le

processus de fonctionnement des checks actifs peut

être décomposé en 2 parties :

03/12/201

4PROJET SECURITE ZABBIX

14

CHECKS PASSIFS/CHECKS

ACTIFS

Récupération de la liste des items

Pour chaque hôte supervisé (configuré) sur le serveur

Zabbix, un certain nombre d’items (par l’intermédiaire

des templates) sont définis. Lorsqu’un agent est

démarré en mode actif, il effectue une requête au

serveur afin de récupérer sa liste d’items.

03/12/201

4PROJET SECURITE ZABBIX

15

CHECKS PASSIFS/CHECKS

ACTIFS

03/12/201

4PROJET SECURITE ZABBIX

16

CHECKS PASSIFS/CHECKS

ACTIFS

Voici un exemple un peu plus concret :

L’agent ouvre une connexion TCP avec le serveur

L’agent demande ensuite sa liste d’items

Le serveur répond en envoyant la liste d’items propres

à cet agent

L’agent réceptionne la réponse du serveur

La collecte des données définis par les items démarre

03/12/201

4PROJET SECURITE ZABBIX

17

FONCTIONNEMENT

Envoi des données collectées

Une fois la liste des items récupérés par l’agent, ce

dernier démarre alors sa collecte de données à un

intervalle régulier pour chaque item. Il transmet

ensuite au serveur les données, et reçoit une réponse

de celui-ci pour confirmer la bonne réception

03/12/201

4PROJET SECURITE ZABBIX

18

FONCTIONNEMENT

03/12/201

4PROJET SECURITE ZABBIX

19

FONCTIONNEMENT

Exemple du processus d’envoi de données :

L’agent ouvre une connexion TCP avec le serveur

L’agent envoi sa liste de valeurs (données collectées

pour chaque item)

Le serveur réceptionne et traite les données

Le server retourne le statut à l’agent

03/12/201

4PROJET SECURITE ZABBIX

20

SYSTEME D’ALERTE

Terminologie

Item : un item est un élément qui teste des services et collecte des données.

Trigger : génère un évènement en réaction à une

certaine valeur ou donnée remontée par un item.

Action : envoi des alertes (notifications), en fonction

d’évènements précis générés par des triggers.

03/12/201

4PROJET SECURITE ZABBIX

21

SYSTÈME D’ALERTE

Principe de fonctionnement

Dans Zabbix, la génération d’une alerte est le résultat

d’un enchaînement de conditions. Voici un schéma

montrant les différentes relations entre les 3 éléments

essentiels de Zabbix pour la génération d’une alerte,

c’est-à-dire l’item, le trigger et l’action.

03/12/201

4PROJET SECURITE ZABBIX

22

SYSTÈME D’ALERTE

03/12/201

4PROJET SECURITE ZABBIX

23

SYSTÈME D’ALERTE

Dans le processus de génération d’une alerte, le premier maillon de la chaîne est l’item. Cet élément collecte les données à surveiller, comme par exemple « Est-ce que le port 522 est ouvert ? », ensuite, le trigger chargé de surveiller cet item, en fonction de ses conditions et des valeurs remontées par l’item, il génère un évènement de type PROBLEM, UNKNOW ou OK (avec différents niveaux de criticités possibles).

Pour créer une alerte, le 3ème et dernier élément de Zabbix à entrer en jeux est l’action. Celui-ci fonctionne comme le trigger, à la différence qu’il surveille les évènements créés par le trigger (au lieu des valeurs remontées par les items pour ce dernier) , selon ses conditions, il génère alors une alerte (ou notification) de type EMAIL, SMS, ou encore JABBER.

03/12/201

4PROJET SECURITE ZABBIX

24