| 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 :
| 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/
- 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. |
Serveur postfix
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.
| Code Block | ||||
|---|---|---|---|---|
| ||||
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 fichier de configuration /etc/postfix/main.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
Pour configurer Postfix à utiliser un relai SMTP, il faut :
- Éditer le fichier /etc/postfix/main.cf
- Se rendre dans la section relative au "relayhost" et ajouter une ligne avec l'IP de votre serveur SMTP Principale ( exemple => 192.168.1.240 ) : relayhost = 192.168.1.240
Redémarrer postfix
Code Block language text theme Emacs service postfix restart
:
| 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.
