Recherche de site Web

Comment configurer Zabbix pour envoyer des alertes par e-mail à votre compte Gmail


Si vous utilisez Zabbix pour surveiller votre infrastructure, vous voudrez peut-être recevoir des alertes par e-mail de votre domaine local quelque part sur un domaine Internet public, même si vous ne possédez pas un nom de domaine Internet enregistré valide avec un serveur de messagerie que vous pouvez configurer vous-même.

Ce tutoriel abordera brièvement comment configurer un serveur Zabbix pour envoyer des rapports de courrier à une adresse Gmail à l’aide du programme SSMTP, sans avoir besoin d’installer et de configurer un démon MTA local, tel que Postfix, Exim, etc.

Exigences

  • Comment installer Zabbix sur RHEL/CentOS et Debian/Ubuntu - Partie 1

Étape 1 : Installer et configurer SSMTP

1. SSMTP est un petit logiciel, qui ne remplit aucune des fonctionnalités d’un serveur de messagerie, mais ne livre que des e-mails d’une machine locale à une adresse e-mail externe sur un mailhub.

Pour installer le programme SSMTP en même temps que le paquet mailutils que vous utiliserez pour envoyer des e-mails, exécutez la commande suivante sur vos distributions basées sur RedHat et sur un serveur similaire à Debian :

# yum install msmtp mailx               [On RHEL/CentOS] 
sudo apt-get install ssmtp mailutils       [On Debian/Ubuntu]

2. Une fois les packages installés sur le système, configurez le programme SSMTP pour envoyer des e-mails locaux à votre compte Gmail en ouvrant le fichier de configuration principal pour l’édition avec votre éditeur de texte préféré et vos privilèges root et utilisez les paramètres suivants :

# vi /etc/msmtprc                       [On RHEL/CentOS]
sudo nano /etc/ssmtp/ssmtp.conf            [On Debian/Ubuntu]

Paramètres MSMTP pour le compte GMAIL.

#set default values for all following accounts.
defaults
auth           on
tls            on
tls_trust_file    /etc/pki/tls/certs/ca-bundle.crt
logfile        ~/.msmtp.log
Gmail
account        gmail
host           smtp.gmail.com
port           587
from           [email 
user           [email 
password       gmailpassword

Set a default account
account default : gmail

Paramètres SSMTP pour le compte GMAIL.

[email 
mailhub=smtp.gmail.com:587
rewriteDomain=your_local_domain
hostname=your_local_FQDN
UseTLS=Yes
UseSTARTTLS=Yes
AuthUser=Gmail_username
AuthPass=Gmail_password
FromLineOverride=YES

Étape 2 : Tests Gmail pour les alertes par e-mail Zabbix

3. À l’étape suivante, il est temps d’envoyer un e-mail généré localement à un compte Gmail en exécutant la commande ci-dessous.

# echo "Body test email from 'hostname -f' "| mail -s "subject here" [email 

4. Normalement, Gmail empêche différents types d’authentifications sur leurs serveurs à partir de votre compte, donc, si vous obtenez l’erreur « mail : cannot send a message : Process exited with not-zero status », connectez-vous à votre compte Gmail depuis le navigateur et accédez au lien suivant https://www.google.com/settings/security/lesssecureapps afin de permettre l’accès aux applications moins sécurisées comme dans ce qui suit écran.

5. Après avoir activé la fonctionnalité Applications moins sécurisées sur votre compte Gmail, exécutez à nouveau la commande mail ci-dessus et vérifiez votre boîte de réception après quelques secondes pour vérifier si l’e-mail généré localement a été livré avec succès - vous devriez normalement voir que l’e-mail arrive de Gmail.

Étape 3 : Configurer le script Zabbix Sendmail

6. De plus, sur la base de la commande $ (which mail), le script Bash suivant est créé dans le répertoire alertscripts de Zabbix avec le contenu suivant et lui donne les autorisations d’exécution :

# vi /usr/local/share/zabbix/alertscripts/zabbix-sendmail            [On RHEL/CentOS]
sudo nano /usr/local/share/zabbix/alertscripts/zabbix-sendmail     [On Debian/Ubuntu]

Contenu du script :

#!/bin/bash
echo "$3" | /usr/bin/mail -s "$2" $1

Ensuite, définissez l’autorisation d’exécution sur le fichier de script.

# chmod +x /usr/local/share/zabbix/alertscripts/zabbix-sendmail

7. Ensuite, comme précédemment, testez la fonctionnalité du script en envoyant un e-mail local à un compte Gmail. La façon d’exécuter le script avec des paramètres positionnels est expliquée ci-dessus :

# /usr/local/share/zabbix/alertscripts/zabbix-sendmail [email  "Subject here" "Body of the message here"

Ensuite, vérifiez la boîte de réception Gmail et vérifiez si le nouveau message local est arrivé.

Étape 4 : Configurer Zabbix pour envoyer des alertes à Gmail

8. Si les tests jusqu’à présent sont concluants, vous pouvez passer à l’étape suivante et configurer Zabbix pour qu’il envoie des alertes par e-mail générées à Gmail. Tout d’abord, connectez-vous à l’interface Web de Zabbix et accédez au menu suivant : Administration -> Types de médias > Créer un type de média.

9. Sur l’écran suivant, entrez un nom arbitraire pour identifier de manière unique le script dans les configurations Zabbix (dans cet exemple, Send-Email-Script est utilisé), choisissez Script comme Type dans la liste et entrez le nom du script Bash créé précédemment (zabbix-sendmail utilisé dans ce tutoriel) pour envoyer des emails depuis la ligne de commande (n’utilisez pas le chemin pour le script, seulement le nom du script). Lorsque vous avez terminé, cliquez sur le bouton Ajouter ci-dessous pour refléter les modifications.

10. De plus, configurons une adresse e-mail à laquelle vous enverrez des alertes Zabbix. Allez dans Profil -> Média -> Ajouter et une nouvelle fenêtre contextuelle devrait apparaître.

Ici, sélectionnez le nom du script que vous avez précédemment nommé (dans cet exemple Send-Email-Script est utilisé) pour Type, entrez l’adresse Gmail à laquelle vous enverrez des e-mails, choisissez la période (semaine, heures) pendant laquelle les rapports d’e-mails doivent être actifs pour l’envoi, choisissez la gravité des messages que vous souhaitez recevoir sur votre adresse Gmail, sélectionnez Activé comme État et cliquez sur le bouton Ajouter pour ajouter le média. Enfin, appuyez sur le bouton Mettre à jour pour appliquer la configuration.

11. À l’étape suivante, activez les alertes Zabbix par défaut en accédant à Configuration -> Actions, sélectionnez-le comme Source d’événement - > Déclencheurs dans le menu de droite, et cliquez sur Statut désactivé afin de l’activer. Répétez l’étape pour Source d’événement – > Actions internes ou autres actions personnalisées et vous avez terminé.

Attendez un moment que Zabbix commence à recueillir des informations et à générer des rapports, puis vérifiez votre boîte de réception Gmail et vous devriez voir certaines alertes Zabbix soumises jusqu’à présent.

C’est tout! Bien que ce guide soit principalement axé sur l’envoi d’alertes Zabbix à un compte Gmail en utilisant le serveur SMTP Gmail comme mailhub, en utilisant la même configuration, vous pouvez également pousser les alertes e-mail Zabbix vers d’autres comptes de messagerie Internet valides en vous appuyant sur Gmail pour acheminer vos e-mails via des serveurs SMTP.

Articles connexes: