Zabbix Proxy Installation : Différence entre versions

De SLM - MediaWiki
 
(18 révisions intermédiaires par le même utilisateur non affichées)
Ligne 4 : Ligne 4 :
 
Vous pouvez utiliser un proxy pour surveiller les emplacements distants derrière le pare-feu ou les emplacements dont la communication n'est pas fiable et pour décharger le serveur Zabbix dans les grands environnements.
 
Vous pouvez utiliser un proxy pour surveiller les emplacements distants derrière le pare-feu ou les emplacements dont la communication n'est pas fiable et pour décharger le serveur Zabbix dans les grands environnements.
  
 +
Dans notre exemple nous allons installer zabbix_proxy sur un serveur VOIP VitalPBX sous centos 7
 
[[Fichier:Example of zabbix proxy architecture.png]]
 
[[Fichier:Example of zabbix proxy architecture.png]]
  
=== Installez le proxy Zabbix sur VitalPBX - CentOS 7 ===
+
= Zabbix proxy =
La version de proxy Zabbix doit correspondre à la version du serveur.
+
Il est preferable que la version de proxy Zabbix corresponde à la version du serveur.
Vous pouvez vérifier la version du serveur Zabbix avec la commande " zabbix_server -V" :
+
Vous pouvez vérifier la version du serveur Zabbix avec la commande:
  root@zabbix:~# zabbix_server -V
+
  zabbix_server -V
 
  zabbix_server (Zabbix) 6.0.0alpha4
 
  zabbix_server (Zabbix) 6.0.0alpha4
  
Connectez vous sur votre serveur VitalPBX
+
ça sera pas le cas dans cet article ou nous aurons notre serveur en 6.0 et le proxy en 5.4
 +
 
 +
Connectez vous sur votre serveur VitalPBX  
 +
 
 +
Voici les versions sde notre serveur VOIP en date de cet article
 
  Version        : 3.1.2-1
 
  Version        : 3.1.2-1
 
  Asterisk      : Asterisk 18.6.0
 
  Asterisk      : Asterisk 18.6.0
 
  Linux Version  : CentOS Linux release 7.9.2009 (Core)
 
  Linux Version  : CentOS Linux release 7.9.2009 (Core)
 +
==Centos==
 +
===Installation du dépôt===
  
===Installation du dépôt===
 
 
Rendez vous sur le site ci-dessous afin de récupérer le lien de la version relative à votre serveur.
 
Rendez vous sur le site ci-dessous afin de récupérer le lien de la version relative à votre serveur.
 
https://repo.zabbix.com/zabbix/
 
https://repo.zabbix.com/zabbix/
Ligne 25 : Ligne 31 :
 
  yum upgrade
 
  yum upgrade
  
Récupérer le paquet permettant la configuration du dépôt
+
Récupérer le paquet permettant la configuration du dépôt en fonction de votre version MariaDB
 +
 
 +
Zabbix_Proxy V6.0 nécessite une Version de MariaDB de 10.5 ou supérieur.
 +
 
 +
Notre probleme est que la version installé par vital PBX au jour de cet article est 10.4.7.
 +
 
 +
Une mise à jour de celle ci n'est pas si simple à cause de la suppression des dépendances occasionné.
 +
 
 +
Verifier votre vesion Mariadb
 +
mysql -uroot -e "SHOW GLOBAL VARIABLES LIKE 'version';"
 +
 
 +
MatriaDB < 10.5 (Zabbix_proxy V 5.4.7-1)
 +
rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/$(rpm -E %{rhel})/x86_64/zabbix-release-5.4-1.el$(rpm -E %{rhel}).noarch.rpm
 +
 
 +
MatriaDB >= 10.5 (Zabbix_proxy V 6.0.0)
 
  rpm -Uvh https://repo.zabbix.com/zabbix/5.5/rhel/$(rpm -E %{rhel})/x86_64/zabbix-release-5.5-1.el$(rpm -E %{rhel}).noarch.rpm
 
  rpm -Uvh https://repo.zabbix.com/zabbix/5.5/rhel/$(rpm -E %{rhel})/x86_64/zabbix-release-5.5-1.el$(rpm -E %{rhel}).noarch.rpm
  
Ligne 31 : Ligne 51 :
 
  yum clean all
 
  yum clean all
  
===Installation de zabbix-server===  
+
===Installation de zabbix-proxy===  
 
Lancer la commande d'installation  
 
Lancer la commande d'installation  
 
  yum install zabbix-proxy-mysql zabbix-sql-scripts
 
  yum install zabbix-proxy-mysql zabbix-sql-scripts
 
Installé :
 
  zabbix-proxy-mysql.x86_64 0:6.0.0-0.5alpha5.el7
 
  zabbix-sql-scripts.noarch 0:6.0.0-0.5alpha5.el7
 
 
  
 
=== Base de données ===
 
=== Base de données ===
Dans cette installation, j'utiliserai le mot de passe rootDBpass comme mot de passe de la base de données racine et zabbixDBpass comme mot de passe de la base de données Zabbix. Pensez à changer votre mot de passe pour des raisons de sécurité.
+
Dans cette installation, j'utiliserai le mot de passe '''zabbixDBpass''' comme mot de passe de la base de données Zabbix. Pensez à changer votre mot de passe pour des raisons de sécurité.
  
 
==== Connexion ====
 
==== Connexion ====
Ligne 52 : Ligne 67 :
  
 
==== Importer le schéma de base de données initial ====
 
==== Importer le schéma de base de données initial ====
Importer un shema de base de données pour le serveur proxy (peut durer jusqu'à 5 minutes) :
+
Importer un schéma de base de données pour le serveur proxy (peut durer jusqu'à 5 minutes) :
 
  zcat /usr/share/doc/zabbix-sql-scripts/mysql/schema.sql.gz | mysql -uzabbix -p'zabbixDBpass' zabbix_proxy
 
  zcat /usr/share/doc/zabbix-sql-scripts/mysql/schema.sql.gz | mysql -uzabbix -p'zabbixDBpass' zabbix_proxy
  
 
=== Configuration du chiffrement PSK sur le proxy Zabbix ===
 
=== Configuration du chiffrement PSK sur le proxy Zabbix ===
Bien que Zabbix supporte le cryptage par certificat, la mise en place d'une autorité de certification dépasse le cadre de ce tutoriel. Mais vous pouvez utiliser des clés pré-partagées (PSK) pour sécuriser la connexion entre le serveur et l'agent.
+
Bien que Zabbix supporte le chiffrement par certificat, la mise en place d'une autorité de certification dépasse le cadre de ce tutoriel. Mais vous pouvez utiliser des clés pré-partagées (PSK) pour sécuriser la connexion entre le serveur et l'agent.
  
 
générez une PSK
 
générez une PSK
Ligne 70 : Ligne 85 :
  
 
=== Configuration du proxy Zabbix ===
 
=== Configuration du proxy Zabbix ===
Dans ma configuration, je nommerai le proxy Zabbix "voip.slemoal.fr" et le configurerai pour communiquer avec le Zabbix qui a l'adresse zabbix.slemoal.fr - veuillez les modifier en conséquence pour qu'ils correspondent à votre environnement.
+
Dans ma configuration, je nommerai le proxy Zabbix  
 +
*voip.slemoal.fr  
 +
et le configurerai pour communiquer avec le serveur Zabbix qui a l'adresse:
 +
*zabbix.slemoal.fr
 +
 
 +
veuillez les modifier en conséquence pour qu'ils correspondent à votre environnement.
 +
 
 +
Modifier le fichier zabbix_proxy.conf avec la commande :
 +
nano /etc/zabbix/zabbix_proxy.conf
  
Ouvrez le fichier zabbix_proxy.conf avec la commande : "nano /etc/zabbix/zabbix_proxy.conf" et ajoutez le mot de passe de la base de données et la fréquence de configuration dans ce format n'importe où dans le fichier :
 
 
  Server=zabbix.slemoal.fr  
 
  Server=zabbix.slemoal.fr  
 
  Hostname=voip.slemoal.fr  
 
  Hostname=voip.slemoal.fr  
Ligne 86 : Ligne 108 :
 
Le paramètre "ConfigFrequency" définit la fréquence à laquelle le proxy récupère les données de configuration du serveur Zabbix en quelques secondes. Vous pouvez en savoir plus sur les paramètres de configuration du proxy dans la [https://www.zabbix.com/documentation/4.0/manual/appendix/config/zabbix_proxy documentation officielle] .
 
Le paramètre "ConfigFrequency" définit la fréquence à laquelle le proxy récupère les données de configuration du serveur Zabbix en quelques secondes. Vous pouvez en savoir plus sur les paramètres de configuration du proxy dans la [https://www.zabbix.com/documentation/4.0/manual/appendix/config/zabbix_proxy documentation officielle] .
  
==== Démarrer et activer le service proxy Zabbix ====
+
=== Démarrer et activer le service proxy Zabbix ===
 
Redémarrez le service proxy et configurez-le pour qu'il se lance au démarrage :
 
Redémarrez le service proxy et configurez-le pour qu'il se lance au démarrage :
  systemctl redémarrer zabbix-proxy  
+
  systemctl restart zabbix-proxy
  systemctl activer zabbix-proxy
+
  systemctl enable zabbix-proxy
 +
 
 +
Vérifier l'etat
 +
systemctl status zabbix-proxy
 +
En cas de soucis, les logs se situe dans /var/log/zabbix/zabbix-proxy.log
 +
 
 +
==Opnsense==
 +
===Installation de zabbix-proxy===
 +
Systeme -> Firmware -> Plugins: os-zabbix54-proxy - Installer
 +
 
 +
=== Configuration du chiffrement PSK sur le proxy Zabbix ===
 +
 
 +
=== Configuration du proxy Zabbix ===
 +
Services -> Mandataire Zabbix -> Paramètres
 +
 
 +
* Mode Avancer: Activer
 +
* Activer: Cocher
 +
* Mode mandataire: Cocher
 +
* Serveur: <ip/dns-du-serveur-zabbix> ex: zabbix.slemoal.fr
 +
* Port du serveur: 10051
 +
* Nom d'hôte : <nom-de-machine> # Exemple: opnsense.slemoal.fr
 +
* Port d'écoute: 10051
 +
* Config Frequency: 300
 +
* PSK based encryption: Cocher
 +
* PSK Identity: <identite-psk> #exemple Proxy-slemoal.fr
 +
* PSK: <Clé RSA> Renseigner une clé Hexa de 64 caractères voir site ci dessous
 +
https://numbergenerator.org/random-64-digit-hex-codes-generator
 +
 
 +
Le paramètre "ConfigFrequency" définit la fréquence à laquelle le proxy récupère les données de configuration du serveur Zabbix en quelques secondes. Vous pouvez en savoir plus sur les paramètres de configuration du proxy dans la [https://www.zabbix.com/documentation/4.0/manual/appendix/config/zabbix_proxy documentation officielle] .
 +
 
 +
== Firewall VitalPBX ==
 +
Se rendre sur l'interface Web Tiscom voice
 +
Admin -> Pare feu -> Service : Add Service
 +
 
 +
* Nom: Agent Zabbix
 +
* Port: 10050-10051
 +
* Protocole: TCP
 +
Save
 +
 
 +
Admin -> Pare feu -> Règle : Add Rule
 +
* Service: Agent Zabbix
 +
* Source:
 +
* Destination:
 +
* Action: Accepter
 +
Save
 +
 
 +
Admin -> Pare feu -> Règle : Add Rule
 +
* Service: Asterisk HTTP Daemon
 +
* Source:
 +
* Destination:
 +
* Action: Accepter
 +
Save
 +
 
 +
Appliquer (Fleche rouge en haut à droite)
  
 
==Zabbix==
 
==Zabbix==
Ligne 95 : Ligne 170 :
 
  https://zabbix.slemoal.fr
 
  https://zabbix.slemoal.fr
  
Création du proxy
+
Ajouter le nouveau proxy au serveur Zabbix
 +
Administration -> Proxys : Créer un proxy
 +
 
 +
=== Onglet Hote ===
 +
* Nom de l'hote: voip.slemoal.fr
 +
* Mode proxy: Actif
 +
* Adresse du proxy: Vide
 +
* Description: facultatif
 +
 
 +
 
 +
=== Onglet Chiffrement ===
 +
* Connexion du proxy: PSK
 +
* identité PSK: ZBX-PSK-01
 +
* PSK: 75ad6cb5e17d244ac8c00c96a1b074d0550b8e7b15d0ab3cde60cd79af280fca
 +
 
 +
Enfin, cliquez sur le bouton "Ajouter" au bas du formulaire pour créer l'hôte.
 +
 
 +
Immédiatement après avoir ajouté un proxy au frontend, vous serez informé que le proxy n'a jamais été vu.
 +
 
 +
Cependant, si vous attendez 100 secondes, le statut « Dernière vue (âge) » affichera des secondes à la place « Jamais », ce qui signifie que le proxy communique avec le serveur.

Version actuelle datée du 29 décembre 2021 à 13:07

Description

Le proxy Zabbix est un service qui peut collecter des données de performances et de disponibilité à partir des terminaux pour le compte du serveur Zabbix .

Vous pouvez utiliser un proxy pour surveiller les emplacements distants derrière le pare-feu ou les emplacements dont la communication n'est pas fiable et pour décharger le serveur Zabbix dans les grands environnements.

Dans notre exemple nous allons installer zabbix_proxy sur un serveur VOIP VitalPBX sous centos 7 Example of zabbix proxy architecture.png

Zabbix proxy

Il est preferable que la version de proxy Zabbix corresponde à la version du serveur. Vous pouvez vérifier la version du serveur Zabbix avec la commande:

zabbix_server -V
zabbix_server (Zabbix) 6.0.0alpha4

ça sera pas le cas dans cet article ou nous aurons notre serveur en 6.0 et le proxy en 5.4

Connectez vous sur votre serveur VitalPBX

Voici les versions sde notre serveur VOIP en date de cet article

Version        : 3.1.2-1
Asterisk       : Asterisk 18.6.0
Linux Version  : CentOS Linux release 7.9.2009 (Core)

Centos

Installation du dépôt

Rendez vous sur le site ci-dessous afin de récupérer le lien de la version relative à votre serveur. https://repo.zabbix.com/zabbix/

On commence par mettre à jour le système

yum update
yum upgrade

Récupérer le paquet permettant la configuration du dépôt en fonction de votre version MariaDB

Zabbix_Proxy V6.0 nécessite une Version de MariaDB de 10.5 ou supérieur.

Notre probleme est que la version installé par vital PBX au jour de cet article est 10.4.7.

Une mise à jour de celle ci n'est pas si simple à cause de la suppression des dépendances occasionné.

Verifier votre vesion Mariadb

mysql -uroot -e "SHOW GLOBAL VARIABLES LIKE 'version';"

MatriaDB < 10.5 (Zabbix_proxy V 5.4.7-1)

rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/$(rpm -E %{rhel})/x86_64/zabbix-release-5.4-1.el$(rpm -E %{rhel}).noarch.rpm

MatriaDB >= 10.5 (Zabbix_proxy V 6.0.0)

rpm -Uvh https://repo.zabbix.com/zabbix/5.5/rhel/$(rpm -E %{rhel})/x86_64/zabbix-release-5.5-1.el$(rpm -E %{rhel}).noarch.rpm

Vider le cache yum

yum clean all

Installation de zabbix-proxy

Lancer la commande d'installation

yum install zabbix-proxy-mysql zabbix-sql-scripts

Base de données

Dans cette installation, j'utiliserai le mot de passe zabbixDBpass comme mot de passe de la base de données Zabbix. Pensez à changer votre mot de passe pour des raisons de sécurité.

Connexion

mysql -uroot -p'rootDBpass'

Créer une base de données

create database zabbix_proxy character set utf8 collate utf8_bin;
grant all privileges on zabbix_proxy.* to zabbix@localhost identified by 'zabbixDBpass';
exit

Importer le schéma de base de données initial

Importer un schéma de base de données pour le serveur proxy (peut durer jusqu'à 5 minutes) :

zcat /usr/share/doc/zabbix-sql-scripts/mysql/schema.sql.gz | mysql -uzabbix -p'zabbixDBpass' zabbix_proxy

Configuration du chiffrement PSK sur le proxy Zabbix

Bien que Zabbix supporte le chiffrement par certificat, la mise en place d'une autorité de certification dépasse le cadre de ce tutoriel. Mais vous pouvez utiliser des clés pré-partagées (PSK) pour sécuriser la connexion entre le serveur et l'agent.

générez une PSK

sh -c "openssl rand -hex 32 > /etc/zabbix/zabbix_proxy.psk"
chmod 644 /etc/zabbix/zabbix_proxy.psk

Montrez la clé en utilisant cat pour que vous puissiez la copier quelque part :

cat /etc/zabbix/zabbix_proxy.psk

La clé ressemblera à quelque chose comme ça :

75ad6cb5e17d244ac8c00c96a1b074d0550b8e7b15d0ab3cde60cd79af280fca

Gardez-la pour plus tard ; vous en aurez besoin pour configurer l'hôte.

Configuration du proxy Zabbix

Dans ma configuration, je nommerai le proxy Zabbix

  • voip.slemoal.fr

et le configurerai pour communiquer avec le serveur Zabbix qui a l'adresse:

  • zabbix.slemoal.fr

veuillez les modifier en conséquence pour qu'ils correspondent à votre environnement.

Modifier le fichier zabbix_proxy.conf avec la commande :

nano /etc/zabbix/zabbix_proxy.conf
Server=zabbix.slemoal.fr 
Hostname=voip.slemoal.fr 
DBName=zabbix_proxy 
DBUser=zabbix
DBPassword=zabbixDBpass
TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=ZBX-PSK-01
TLSPSKFile=/etc/zabbix/zabbix_proxy.psk
ConfigFrequency=100

Le paramètre "ConfigFrequency" définit la fréquence à laquelle le proxy récupère les données de configuration du serveur Zabbix en quelques secondes. Vous pouvez en savoir plus sur les paramètres de configuration du proxy dans la documentation officielle .

Démarrer et activer le service proxy Zabbix

Redémarrez le service proxy et configurez-le pour qu'il se lance au démarrage :

systemctl restart zabbix-proxy
systemctl enable zabbix-proxy

Vérifier l'etat

systemctl status zabbix-proxy

En cas de soucis, les logs se situe dans /var/log/zabbix/zabbix-proxy.log

Opnsense

Installation de zabbix-proxy

Systeme -> Firmware -> Plugins: os-zabbix54-proxy - Installer

Configuration du chiffrement PSK sur le proxy Zabbix

Configuration du proxy Zabbix

Services -> Mandataire Zabbix -> Paramètres

  • Mode Avancer: Activer
  • Activer: Cocher
  • Mode mandataire: Cocher
  • Serveur: <ip/dns-du-serveur-zabbix> ex: zabbix.slemoal.fr
  • Port du serveur: 10051
  • Nom d'hôte : <nom-de-machine> # Exemple: opnsense.slemoal.fr
  • Port d'écoute: 10051
  • Config Frequency: 300
  • PSK based encryption: Cocher
  • PSK Identity: <identite-psk> #exemple Proxy-slemoal.fr
  • PSK: <Clé RSA> Renseigner une clé Hexa de 64 caractères voir site ci dessous

https://numbergenerator.org/random-64-digit-hex-codes-generator

Le paramètre "ConfigFrequency" définit la fréquence à laquelle le proxy récupère les données de configuration du serveur Zabbix en quelques secondes. Vous pouvez en savoir plus sur les paramètres de configuration du proxy dans la documentation officielle .

Firewall VitalPBX

Se rendre sur l'interface Web Tiscom voice

Admin -> Pare feu -> Service : Add Service
  • Nom: Agent Zabbix
  • Port: 10050-10051
  • Protocole: TCP

Save

Admin -> Pare feu -> Règle : Add Rule
  • Service: Agent Zabbix
  • Source:
  • Destination:
  • Action: Accepter

Save

Admin -> Pare feu -> Règle : Add Rule
  • Service: Asterisk HTTP Daemon
  • Source:
  • Destination:
  • Action: Accepter

Save

Appliquer (Fleche rouge en haut à droite)

Zabbix

Connectez vous en page web au serveur zabbix

https://zabbix.slemoal.fr

Ajouter le nouveau proxy au serveur Zabbix

Administration -> Proxys : Créer un proxy

Onglet Hote

  • Nom de l'hote: voip.slemoal.fr
  • Mode proxy: Actif
  • Adresse du proxy: Vide
  • Description: facultatif


Onglet Chiffrement

  • Connexion du proxy: PSK
  • identité PSK: ZBX-PSK-01
  • PSK: 75ad6cb5e17d244ac8c00c96a1b074d0550b8e7b15d0ab3cde60cd79af280fca

Enfin, cliquez sur le bouton "Ajouter" au bas du formulaire pour créer l'hôte.

Immédiatement après avoir ajouté un proxy au frontend, vous serez informé que le proxy n'a jamais été vu.

Cependant, si vous attendez 100 secondes, le statut « Dernière vue (âge) » affichera des secondes à la place « Jamais », ce qui signifie que le proxy communique avec le serveur.