« Zabbix » : différence entre les versions
Aucun résumé des modifications |
(→Macro) |
||
(39 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 2 : | Ligne 2 : | ||
[[Category:debian]] | [[Category:debian]] | ||
[[Category:monitoring]] | [[Category:monitoring]] | ||
Installation et configuration de Zabbix 5.x LTS sous Debian Buster<br> | |||
=Serveur= | |||
Prérequis : | Prérequis : | ||
Ligne 7 : | Ligne 12 : | ||
* un serveur de base de donnée mysql ou mariadb | * un serveur de base de donnée mysql ou mariadb | ||
<pre>wget | Installation : | ||
dpkg -i zabbix- | <pre>wget https://repo.zabbix.com/zabbix/5.0/debian/pool/main/z/zabbix-release/zabbix-release_5.0-1+buster_all.deb | ||
dpkg -i zabbix-release_5.0-1+buster_all.deb | |||
apt update | |||
apt-get install --no-install-recommends zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf | |||
</pre> | </pre> | ||
Désactivez le fichier de configuration automatiquement ajouté à apache : | |||
<pre> | <pre> | ||
a2disconf zabbix | a2disconf zabbix | ||
Ligne 19 : | Ligne 25 : | ||
</pre> | </pre> | ||
Créez la base de donnée et l'utilisateur mysql : | |||
<pre> | |||
# mysql -uroot -p | |||
mysql> create database zabbix character set utf8 collate utf8_bin; | |||
mysql> create user zabbix@localhost identified by 'password'; | |||
mysql> grant all privileges on zabbix.* to zabbix@localhost; | |||
mysql> quit; | |||
</pre> | |||
Importez le schéma de base de donnée : | |||
<pre> | |||
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix | |||
</pre> | |||
Configurez les champs suivants dans la configuration serveur de zabbix <code>/etc/zabbix/zabbix_server.conf</code> : | |||
<pre> | |||
DBHost=localhost | |||
DBPassword=password | |||
DBSocket=/var/run/mysqld/mysqld.sock | |||
</pre> | |||
Configurez votre vhost en vous basant sur /etc/zabbix/apache.conf et pensez à y décommenter la ligne <code>php_value date.timezone</code> et settez la a votre timezone | |||
<pre> | <pre> | ||
php_value date.timezone Europe/Paris | php_value date.timezone Europe/Paris | ||
</pre> | </pre> | ||
Relancez les services et activez le lancement automatique du serveur zabbix : | |||
<pre> | |||
systemctl enable zabbix-server | |||
/etc/init.d/zabbix-server start | |||
/etc/init.d/apache2 restart | |||
</pre> | |||
Rendez vous à l'url de votre zabbix pour configurer la parti web | |||
Après configuration, les identifiants par défauts sont Admin/zabbix. Changez rapidement le mot-de-passe par défaut. | |||
==Sécurité finale== | |||
Après configuration initiale, cela évitera qu'un utilisateur malicieux puisse modifier la configuration du frontend, ou qu'un utilisateur autre que zabbix ne puisse lire le mot-de-passe de la base de donnée : | |||
<pre> | |||
chgrp www-data /etc/zabbix/web/ | |||
chown -R root /etc/zabbix/web/ | |||
chmod -R o-rx /etc/zabbix/web/ | |||
chmod o-r /etc/zabbix/zabbix_server.conf | |||
</pre> | |||
=Agent= | |||
<pre> | |||
aptitude install zabbix-agent | |||
</pre> | |||
/etc/zabbix/zabbix_agentd.conf : | |||
<pre> | |||
PidFile=/var/run/zabbix/zabbix_agentd.pid | |||
LogFile=/var/log/zabbix/zabbix_agentd.log | |||
LogFileSize=0 | |||
ListenIP=192.168.118.7 | |||
Server=192.168.118.4 | |||
ServerActive=192.168.118.4 | |||
Hostname=plop | |||
Include=/etc/zabbix/zabbix_agentd.d/ | |||
</pre> | |||
Point importants : | |||
* ListenIP : l'ip a laquelle le client écoute (pensez à firewaller si c'est une ip publique) | |||
* Server : l'ip du serveur zabbix (l'agent refuse les connexions d'une autre ip que celles ci) | |||
* ServerActive : l'ip du serveur zabbix (l'agent se connectera a ce serveur) | |||
* Hostname doit correspondre à l'hostname défini dans la configuration zabbix | |||
=Détection à distance de l'OS (non obligatoire)= | |||
Installez sudo | |||
Créez le fichier <code>/etc/sudoers.d/zabbix</code> contenant : | |||
<pre> | |||
zabbix ALL = (root) NOPASSWD: /usr/bin/nmap | |||
</pre> | |||
=Macro= | |||
Zabbix resolves macros according to the following precedence: | |||
* host level macros (checked first) | |||
* macros defined for first level templates of the host (i.e., templates linked directly to the host), sorted by template ID | |||
* macros defined for second level templates of the host, sorted by template ID | |||
* macros defined for third level templates of the host, sorted by template ID, etc. | |||
* global macros (checked last) | |||
La première macro évaluée est appliquée. Par exemple, si vous avez un macro host-level, celles du template/global seront ignorés. | |||
Les macro globales sont dans Administration -> General -> Macros. Attention, ces macros globales ne sont pas exportables ! | |||
=bug IPMI et debian/ubuntu= | |||
Il faut rebuild openipmi avec le support openssl | |||
https://support.zabbix.com/browse/ZBX-6139 | |||
=Templates VMWare ESXi= | |||
https://github.com/pfoo/zabbix-esxi | |||
=Templates et scripts pour les outils de monitoring des serveurs HPs= | |||
https://github.com/pfoo/zabbix-HP | |||
=Templates et monitoring IPMI pour supermicro A1SAM-2750F= | |||
https://github.com/pfoo/zabbix-motherboards-templates |
Dernière version du 5 novembre 2020 à 10:48
Installation et configuration de Zabbix 5.x LTS sous Debian Buster
Serveur
Prérequis :
- apache 2.x
- un serveur de base de donnée mysql ou mariadb
Installation :
wget https://repo.zabbix.com/zabbix/5.0/debian/pool/main/z/zabbix-release/zabbix-release_5.0-1+buster_all.deb dpkg -i zabbix-release_5.0-1+buster_all.deb apt update apt-get install --no-install-recommends zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf
Désactivez le fichier de configuration automatiquement ajouté à apache :
a2disconf zabbix /etc/init.d/apache2 reload
Créez la base de donnée et l'utilisateur mysql :
# mysql -uroot -p mysql> create database zabbix character set utf8 collate utf8_bin; mysql> create user zabbix@localhost identified by 'password'; mysql> grant all privileges on zabbix.* to zabbix@localhost; mysql> quit;
Importez le schéma de base de donnée :
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Configurez les champs suivants dans la configuration serveur de zabbix /etc/zabbix/zabbix_server.conf
:
DBHost=localhost DBPassword=password DBSocket=/var/run/mysqld/mysqld.sock
Configurez votre vhost en vous basant sur /etc/zabbix/apache.conf et pensez à y décommenter la ligne php_value date.timezone
et settez la a votre timezone
php_value date.timezone Europe/Paris
Relancez les services et activez le lancement automatique du serveur zabbix :
systemctl enable zabbix-server /etc/init.d/zabbix-server start /etc/init.d/apache2 restart
Rendez vous à l'url de votre zabbix pour configurer la parti web
Après configuration, les identifiants par défauts sont Admin/zabbix. Changez rapidement le mot-de-passe par défaut.
Sécurité finale
Après configuration initiale, cela évitera qu'un utilisateur malicieux puisse modifier la configuration du frontend, ou qu'un utilisateur autre que zabbix ne puisse lire le mot-de-passe de la base de donnée :
chgrp www-data /etc/zabbix/web/ chown -R root /etc/zabbix/web/ chmod -R o-rx /etc/zabbix/web/ chmod o-r /etc/zabbix/zabbix_server.conf
Agent
aptitude install zabbix-agent
/etc/zabbix/zabbix_agentd.conf :
PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 ListenIP=192.168.118.7 Server=192.168.118.4 ServerActive=192.168.118.4 Hostname=plop Include=/etc/zabbix/zabbix_agentd.d/
Point importants :
- ListenIP : l'ip a laquelle le client écoute (pensez à firewaller si c'est une ip publique)
- Server : l'ip du serveur zabbix (l'agent refuse les connexions d'une autre ip que celles ci)
- ServerActive : l'ip du serveur zabbix (l'agent se connectera a ce serveur)
- Hostname doit correspondre à l'hostname défini dans la configuration zabbix
Détection à distance de l'OS (non obligatoire)
Installez sudo
Créez le fichier /etc/sudoers.d/zabbix
contenant :
zabbix ALL = (root) NOPASSWD: /usr/bin/nmap
Macro
Zabbix resolves macros according to the following precedence:
- host level macros (checked first)
- macros defined for first level templates of the host (i.e., templates linked directly to the host), sorted by template ID
- macros defined for second level templates of the host, sorted by template ID
- macros defined for third level templates of the host, sorted by template ID, etc.
- global macros (checked last)
La première macro évaluée est appliquée. Par exemple, si vous avez un macro host-level, celles du template/global seront ignorés.
Les macro globales sont dans Administration -> General -> Macros. Attention, ces macros globales ne sont pas exportables !
bug IPMI et debian/ubuntu
Il faut rebuild openipmi avec le support openssl https://support.zabbix.com/browse/ZBX-6139
Templates VMWare ESXi
https://github.com/pfoo/zabbix-esxi
Templates et scripts pour les outils de monitoring des serveurs HPs
https://github.com/pfoo/zabbix-HP