| Scroll Ignore | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Méthodologie de résolution
Tester
votrela commande manuellement
Pour vérifier le bon envoi de l'email, loguez-vous sur la machine qui héberge votre Reactionner puis utiliser l'utilisateur shinken via :
scroll-title
| ||||
| Code Block | ||||
|---|---|---|---|---|
| ||||
su - shinken
|
Puis envoyer votre commande, par exemple :
| Scroll Title | ||||
|---|---|---|---|---|
| ||||
| Code Block | ||||
| ||||
/var/lib/shinken/libexec/notifications/notify_by_email.py --title-tpl /var/lib/shinken/libexec/notifications/service_alert_title_template.tpl --content-tpl /var/lib/shinken/libexec/notifications/service_alert_content_template.tpl -r "RECEIVER@DOMAIN.COM" -F "SENDER@DOMAIN.COM" |
Vous devriez alors recevoir :
| Code Block | ||||
|---|---|---|---|---|
| ||||
DATE,426:INFO: Mail sent successfully |
Si vous avez remplacé "RECEVEUR@DOMAIN.COM" par votre adresse mail, vous devriez recevoir l'email dans votre boite email. Le mail sera vide de sens, mais vous prouvera que votre serveur est fonctionnel.
| Panel |
|---|
Logs
Si vous avez des difficultés, veuillez vérifier les logs :
- Du Réactionner dans /var/log/shinken/reactionnerd.log
- De votre serveur mail linux (postfix/smtp) dans /var/log/maillog
Configuration avancée (relais SMTP)
Par défaut, chaque distribution Linux propose un service de boite aux lettres préinstallé (Exim4 pour Debian et Postfix pour Almalinux). Ce service est utilisé par Shinken pour délivrer les emails aux utilisateurs.
La configuration par défaut de ces services ne permet généralement pas d'envoyer des emails en dehors du réseau privé ou ceux-ci sont installés. Il devient alors nécessaire de les reconfigurer, pour leur faire utiliser un "relais SMTP".
| Info |
|---|
Un relai SMTP correspond à un serveur de l'infrastructure, spécifiquement dédié à l'envoi et la réception d'email. Celui-ci est généralement configuré pour être capable d'envoyer et recevoir des mails provenant de l'extérieur. Le relai est caractérisé par sa capacité à gérer les emails d'autres serveurs. Dans notre cas, le serveur Shinken transfère son mail au relai, qui sera chargé de l'envoyer. |
Configuration Postfix (sans authentification)
Problème d'envoi : regarder dans les logs
Si l'envoi échoue, les logs du relai SMTP peuvent donner des indications précieuses sur la cause de l'échec.
Pour Postfix :
la commande journactl permet d'afficher les logs du service :
Code Block language text theme Emacs journalctl -xf -u postfix
Le fichier de log "secure" contient les informations concernant les dernières connexions :
Code Block language text theme Emacs cat /var/log/maillog
Ces logs permettent, entre autres, de savoir :
- Si le problème d'envoi provient de la connexion avec le "relayhost".
- Si la résolution de nom s'effectue correctement.
Exemple :
Dans l'exemple ci-dessous, un mail est chargé et correctement délivré au "relayhost" pour envoi.
| Code Block | ||||
|---|---|---|---|---|
| ||||
[root@shinken-server shinken]# journalctl -xf -u postfix
-- Logs begin at Wed 2025-09-03 06:05:48 CEST. --
Sep 3 07:39:21 shinken-server postfix/smtpd[192905]: connect from localhost[127.0.0.1]
Sep 3 07:39:21 shinken-server postfix/smtpd[192905]: discarding EHLO keywords: CHUNKING
Sep 3 07:39:21 shinken-server postfix/smtpd[192905]: 55EAC80E12F6: client=localhost[127.0.0.1]
Sep 3 07:39:21 shinken-server postfix/cleanup[192908]: 55EAC80E12F6: message-id=<20250903053921.55EAC80E12F6@shinkenVM.localdomain>
Sep 3 07:39:21 shinken-server postfix/qmgr[1679]: 55EAC80E12F6: from=<shinken@email.mairie-balma.fr>, size=6284, nrcpt=1 (queue active)
Sep 3 07:39:21 shinken-server postfix/smtpd[192905]: disconnect from localhost[127.0.0.1] ehlo=1 mail=1 rcpt=1 data=1 commands=4
Sep 3 07:39:21 shinken-server postfix/smtp[192909]: 55EAC80E12F6: to=<test@shinken.fr>, relay=smtp-relay.test.com[1.179.110.5]:587, delay=0.39, delays=0.01/0.02/0.3/0.06, dsn=2.0.0, status=sent (250 2.0.0 OK: queued as <20250903053921.55EAC80E12F6@shinken-server.localdomain>)
Sep 3 07:39:21 shinken-server postfix/qmgr[1679]: 55EAC80E12F6: removed |
Les erreurs connues
Vous retrouverez listé ci-dessous les erreurs fréquentes liées à l'envoi de mail.
Erreurs de connexion au relai SMTP
Dans l'exemple ci-dessous, le "relayhost" indiqué dans le fichier de configuration /etc/postfix/main.cf est indiqué sous la forme d'une adresse IP.
Pour configurer Postfix à utiliser un relai SMTP, il faut :
| Code Block | ||||
|---|---|---|---|---|
|
service postfix restartTest d'envoi de mail :
Code Block language text theme Emacs echo "Message de test" | mailx -s "sujet du mail:test" mon.mail@my_domain
Configuration Postfix (avec authentification)
root@shinken-server ~]# cat /var/log/maillog Sep 8 04:00:45 shinken-server postfix/smtpd[897637]: disconnect from localhost[127.0.0.1] ehlo=1 mail=1 rcpt=1 data=1 commands=4
Sep 8 04:00:48 shinken-server postfix/smtp[897646]: connect to 172.17.0.94[172.17.0.94]:25: No route to host
Sep 8 04:00:48 shinken-server postfix/smtp[897646]: 1B1624474027: to=<test@shinken.com>, relay=none, delay=3.2, delays=0.05/0.07/3.1/0, dsn=4.4.1, status=deferred (connect to 172.17.0.94[172.17.0.94]:25: No route to host) |
La connexion sur le port "25" de l'adresse IP renseignée dans le "relayhost" ne s'effectue pas. Dans cette situation, l'erreur fournit des détails utiles :
- No route to host :
- Signifie que le serveur à l'adresse IP indiquée n'est pas du tout accessible depuis le serveur Shinken.
- Connection refused :
- Signifie que le serveur à l'adresse IP indiquée est joignable, mais l'accès au port 25 est bloqué.
Pour corriger, il faut vérifier si les flux réseaux entre les deux serveurs sont bien ouverts sur les ports utilisés (25, 587) et si les règles firewalls des deux serveurs autorisent bien les échanges.
Erreurs de résolution du relai SMTP
Dans l'exemple ci-dessous, le "relayhost" indiqué dans le
Il se peut que le relai SMTP nécessite une authentification. Dans ce cas, pour configurer Postfix à utiliser un relai SMTP et à s'y authentifier, il faut :
fichier de configuration /etc/postfix/main.
cf, ajouter les lignes suivantesCode Block smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonymous header_size_limit = 4096000
- Créer le fichier sasl_passwd
- Editer le fichier et y indiquer l'utilisateur et le mot de passe à utiliser pour le relai SMTP
Code Block [smtp-relay-exemple]:587 login@exemple.fr:ThisIsAPassword- Executer la commande "postmap /etc/postfix/sasl_passwd" pour que le fichier nouvellement créé soit "hashé" au format que postfix pourra lire
Redémarrer postfix
| Code Block | ||||
|---|---|---|---|---|
| ||||
service postfix restart |
cf est indiqué sous la forme d'un nom à résoudre, plutôt que d'une adresse IP.
| Code Block | ||||
|---|---|---|---|---|
| ||||
root@shinken-server ~]# cat /var/log/maillog
Sep 8 03:47:04 shinken-server postfix/smtp[877337]: warning: relayhost configuration problem
Sep 8 03:47:04 shinken-server postfix/smtp[877337]: 3E59D43D6060: to=<test@shinken.com>, relay=none, delay=0.15, delays=0.04/0.07/0.04/0, dsn=4.3.5, status=deferred (Host or domain name not found. Name service error for name=test-smtp.shinken.com type=AAAA: Host not found) |
Le nom de domaine "test-smtp.shinken.com" n'est pas résolu
Test d'envoi de mail:
| Code Block | ||||
|---|---|---|---|---|
|
[root@shinken-server ~]# nslookup test-smtp.shinken.com
Server: 172.17.0.254
Address: 172.17.0.254#53
** server can't find tet-smtp.shinken.co: NXDOMAIN |
Les mails ne peuvent pas être transférés et envoyés via le "relayhost".
Pour corriger, il faut s'assurer que le "relayhost" puisse être résolu depuis le serveur local. Il est également possible d'utiliser directement l'adresse IP du relai SMTP.
