Académique Documents
Professionnel Documents
Culture Documents
1/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
Table des matières
1 Contexte et choix des technologies...................................................................................................3
1.1 Présentation de l’infrastructure existante...................................................................................3
1.2 Quels équipements allons nous superviser................................................................................3
1.3 Choix de la solution qui hébergera Zabbix................................................................................4
1.3.1 Système d’exploitation du serveur Zabbix.........................................................................4
1.3.2 Choix du serveur Web et de la base de données................................................................4
1.3.3 Choix de la version du serveur Zabbix..............................................................................4
2 Installation de Zabbix........................................................................................................................4
2.1 Installation du dépôt de Zabbix.................................................................................................4
2.2 Installation du serveur Zabbix, du serveur Web, de l’agent Zabbix et de la base de données...4
2.2.1 Configuration de sécurité de la base de données...............................................................4
2.3 Création de la base de données de Zabbix.................................................................................5
2.4 Configuration du mot de passe de la BDD pour Zabbix............................................................5
2.5 Configuration du PHP et du front-end Zabbix...........................................................................5
2.6 Démarrage du serveur Zabbix....................................................................................................5
3 Configuration de Zabbix....................................................................................................................7
3.1 Changer la langue de Zabbix.....................................................................................................7
3.2 Gestion des utilisateurs..............................................................................................................8
3.2.1 Groupe d’utilisateurs..........................................................................................................9
3.3 Gestion des notifications............................................................................................................9
3.3.1 Notification par mail..........................................................................................................9
4 Supervision des différents serveurs.................................................................................................10
4.1 Création de groupes d’hôtes....................................................................................................10
4.2 Supervision d’un serveur Web Apache Cent OS 8..................................................................10
4.2.1 Configuration sur la machine supervisée.........................................................................10
4.2.2 Configuration sur le serveur Zabbix................................................................................12
4.2.3 Module httpd mod_status.................................................................................................13
4.2.4 Monitoring des logs d’Apache.........................................................................................14
4.3 Supervision d’un serveur Web NGINX...................................................................................16
4.4 Supervision de Windows Server..............................................................................................17
4.4.1 Supervision du service Active Directory..........................................................................18
4.4.2 Supervision de fichiers logs Windows.............................................................................18
4.5 Monitoring pfSense..................................................................................................................19
4.5.1 Monitoring avancé de pfSense.........................................................................................20
4.6 Supervision d’équipements réseaux Cisco..............................................................................21
5 Tableaux de bords, cartes et écrans..................................................................................................22
5.1 Tableaux de bords....................................................................................................................22
5.2 Cartes.......................................................................................................................................23
2/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
1 Contexte et choix des technologies
1.1 Présentation de l’infrastructure existante
Comme nous pouvons le voir sur le schéma, notre infrastructure est décomposée en deux parties.
• Une partie purement réseau qui comporte deux routeurs et deux switch. Ces équipements
sont de marque Cisco.
• Une partie virtuelle hébergée sur un hyperviseur VmWare ESXi. Cette partie est découpée
en plusieurs VLAN à l’aide d’un pare-feu pfSense. Dans ces VLAN nous retrouvons
différents serveurs Linux et Windows.
3/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
1.3 Choix de la solution qui hébergera Zabbix
1.3.1 Système d’exploitation du serveur Zabbix
Notre serveur Zabbix fonctionnera sur Red Hat Entreprise Linux 8. En effet, notre parc, pour la
partie Linux, fonctionne exclusivement avec des machines Cent OS 8. Ce choix nous permettra
également de disposer d’une sécurité déjà renforcée à l’installation grâce à la présence de Se Linux
et de Firewalld.
2 Installation de Zabbix
Pour installer ce serveur Zabbix, nous allons nous référer au guide du site officiel de Zabbix.
4/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
Nous pouvons ensuite lancer l’installation sécurisée de Maria DB.
# mysql_secure_installation
Avec cette commande, nous pouvons définir un mot de passe pour l’utilisateur root de la BDD,
supprimer l’utilisateur anonyme, désactiver la connexion à distance à la base de données et
supprimer la base de donnée de test.
Ici, on configure Nginx pour que ce dernier lui attribue le port 80 (vous pouvez l’attribuer au port
443 si vous avez déjà une configuration SSL prête). On attribue également le bon fuseau horaire à
PHP.
On ouvre également le port 80 :
# firewall-cmd --add-service=http --permanent
# firewall-cmd --reload
Nous pouvons ensuite nous connecter à notre serveur Zabbix à l’aide d’un navigateur web.
5/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
Figure 2: Ici nous pouvons vérifier que notre configuration est correct
Ici nous configurons le mot de passe de la BDD. Si jamais nous avions une base de données sur une
machine différente c’est également ici qu’on configurerait cette partie.
Nous pouvons ensuite nous connecter à notre serveur Zabbix, les identifiants par défaut sont :
Admin
zabbix
6/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
3 Configuration de Zabbix
3.1 Changer la langue de Zabbix
Pour changer la langue, rendez-vous dans la section « User Settings ».
7/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
Dans cette section, nous pouvons ajouter des médias. Ces derniers seront utilisés notamment pour
l’alerting. Ici, nous ajoutons un mail qui sera contacté en cas d’incident de sévérité Haut / Désastre.
Dans cette section nous pouvons définir des permissions pour l’utilisateur.
8/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
3.2.1 Groupe d’utilisateurs
Nous pouvons également définir des droits d’accès pour les groupes. Ici nous interdisons les
utilisateurs du groupe à accéder à la section Network Devices et à tous les sous groupes qui la
composent.
9/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
On peut ensuite tester l’envoi.
10/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-
1.el8.noarch.rpm
Une fois l’agent installé, nous pouvons commencer à la configurer. Nous pouvons ouvrir son fichier
de configuration qui se situe ici : /etc/zabbix/zabbix_agent2.conf
Server=ipOuNomDeDomaineDeVotreServeurZabbix
ServerActive=ipOuNomDeDomaineDeVotreServeurZabbix
Hostname=nomDeVotreMachine
Nous allons ensuite configurer du chiffrement. Pour ça nous allons créer un fichier
zabbix_agendtd.psk. Vous pouvez le créer où est-ce que vous voulez, mais faites en sorte que ce
dernier soit accessible par l’utilisateur Zabbix. Attention à ne pas trop l’exposer non plus, en effet la
clé de chiffrement sera contenue en clair dans ce fichier.
Dans ce fichier vous renseignerez une clé de chiffrement généré à l’aide de la commande :
openssl rand -hex 32
L’agent Zabbix utilise le port 10 050 par défaut, nous l’ouvrons donc :
firewall-cmd --add-port=10050/tcp --permanent
firewall-cmd –reload
Si jamais vous rencontrez des difficultés avec SeLinux, il peut être nécessaire de re labéliser le
fichier contenant la clé de chiffrement.
chcon -t zabbix_agent_exec_t /etc/zabbix/zabbix_agentd.psk
11/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
checkmodule -M -m -o zabbix1.mod zabbix1.te
semodule_package -o zabbix1.pp -m zabbix1.mod
semodule -i zabbix1.pp
Dans la partie hôte vous pouvez remplir différentes sections et informations de bases. Vous pouvez
également spécifier une adresse IP et/ou un nom de domaine et choisir lequel des deux sera utilisé.
Dans la section templates/modèles, vous pouvez spécifier à Zabbix quel type de machine/services il
devra superviser. Dans notre cas :
Enfin dans la partie chiffrement, nous renseignons la clé PSK que nous avons spécifié sur notre
machine, ainsi que l’identité que nous avons renseignée dans le fichier de configuration.
Si votre configuration a été faite correctement, au bout d’une à deux minutes votre hôte devrait
passer dans le vert :
12/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
Après quelques minutes, Zabbix peut récupérer un grand nombre d’informations supplémentaires
sur le service Apache !
13/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
Tout d’abord vérifiez bien que l’IP de votre serveur est bien définie dans la section ServerActive de
votre fichier de configuration Zabbix Agent.
Par défaut sous Cent OS 8, le dossier logs d’apache (/var/log/httpd) et son contenu appartiennent à
l’utilisateur root. L’agent Zabbix ne peut pas y accéder, car il ne fait pas partit du groupe root. Nous
allons donc modifier l’appartenance du dossier afin que ce dernier appartienne à l’utilisateur et au
groupe apache :
# chown -R apache:apache /var/log/httpd
Nous allons ensuite ajouter le groupe apache à l’utilisateur zabbix pour que ce dernier puisse
accéder aux fichiers :
# usermod -a -G apache zabbix
14/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
Une fois cela fait, nous allons créer 2 items comme ceci :
Un premier pour le fichier error_log :
Une fois cela fait, nous allons lancer un test de connexion avec l’outil apache benchmark afin de
créer des nouvelles lignes dans le fichier access.log.
15/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
# ab -n 50 -c 10 http://192.168.3.130/
Si on se rend maintenant dans l’onglet dernières données de Zabbix, nous pouvons constater que
nos fichiers logs bien supervisés :
Nous allons ensuite éditer le fichier de configuration /etc/nginx/nginx.conf en ajoutant les lignes
suivantes dans la partie server {} :
location = /basic_status {
stub_status;
allow all;
deny all;
}
16/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
Pour télécharger l’agent Zabbix 2, il peut être nécessaire de désactiver la protection internet
renforcée dans les paramètres du serveur local. La configuration est la même que celle sur les
agents Linux, sauf qu’ici elle se fait avec une interface graphique.
Petite astuce pour la clé de chiffrement, on peut utiliser un convertisseur Qwerty / Azerty pour la
coller avec VmWare Workstation.
17/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
On lance ensuite l’installation et on configure l’hôte sur notre interface Zabbix avec la template
« Windows Server By Zabbix Agent ». Au bout de quelques minutes :
18/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
19/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
20/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
curl -o /root/scripts/pfsense_zbx.php
https://raw.githubusercontent.com/rbicelli/pfsense-zabbix-template/master/
pfsense_zbx.php
Ensuite, sur l’interface web nous pouvons aller dans la section Zabbix Agent dans l’onglet services.
On rajoute les options suivantes dans les options avancées :
AllowRoot=1
UserParameter=pfsense.states.max,grep "limit states" /tmp/rules.limits | cut -f4
-d ' '
UserParameter=pfsense.states.current,grep "current entries" /tmp/pfctl_si_out |
tr -s ' ' | cut -f4 -d ' '
UserParameter=pfsense.mbuf.current,netstat -m | grep "mbuf clusters" | cut -f1 -
d ' ' | cut -d '/' -f1
UserParameter=pfsense.mbuf.cache,netstat -m | grep "mbuf clusters" | cut -f1 -d
' ' | cut -d '/' -f2
UserParameter=pfsense.mbuf.max,netstat -m | grep "mbuf clusters" | cut -f1 -d '
' | cut -d '/' -f4
UserParameter=pfsense.discovery[*],/usr/local/bin/php
/root/scripts/pfsense_zbx.php discovery $1
UserParameter=pfsense.value[*],/usr/local/bin/php /root/scripts/pfsense_zbx.php
$1 $2 $3
21/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
5 Tableaux de bords, cartes et écrans
Chaque élément de cette partie étant assez intuitif, je me contenterai ici juste de montrer quelques
résultats qu’il est possible d’obtenir.
5.2 Cartes
22/23
PPE – Berlin Hugo Nowacki Lycée Gaston Berger
23/23