NotificationMailAvecProxmox
Contexte
Un serveur proxmox est hébergé à l'Élabo, et dispose de plusieurs disques en RAID.
On souhaite recevoir une notification par e-mail du démon RAID mdadm quand un disque devient défaillant et doit donc être rapidement remplacé.
Contraintes: le port 25 est bloqué par l'abonnement fibre Orange Pro, donc pas moyen d'envoyer le mail directement sur la VM d'Actux. Et on n'a moyennement envie de mettre en place le port 587/submission sur le Postfix d'Actux (avec potentiellement la gestion de comptes mail locaux) qui est déjà assez complexe avec la gestion des listes Sympa et compagnie. On va donc envoyer via le SMTP d'Orange.
Mise en place
Adaptation à Proxmox
Proxmox trafique /root/.forward pour passer les e-mails sur /usr/bin/proxmox-mail-forward, qui passe l'e-mail au système de notifications Proxmox.
Dans l'interface, on ajoute l'adresse d'admin en destinataire: Datacenter > Notifications > mail-to-root > Additional recipients: root@breizh-entropy.org.
Normalement on a une trace de ça dans /etc/pve/notifications.cfg.
Ici on va faire repasser la notification sur la couche standard Sendmail pour avoir la main avec Postfix. (On aurait peut-être pu directement configurer ce qui va suivre avec Datacenter > Notifications > Add > SMTP, mais pas testé. Et puis le système proxmox-mail-forward ne fonctionne que pour les mails à root@, avec un Postfix bien configuré les utilisateurs non-root pourront envoyer des e-mails.)
Pour garder une copie locale des e-mails, on ajoute \root à /root/.forward:
\root, |/usr/bin/proxmox-mail-forward
On configure ensuite Postfix pour passer par Orange. Dans /etc/postfix/main.cf:
## Relai Orange relayhost = [smtp.orange.fr]:submission smtp_sasl_auth_enable = yes smtp_sasl_tls_security_options = noanonymous smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd sender_canonical_maps = hash:/etc/postfix/sender_canonical
Commenter aussi les lignes suivantes:
#default_transport = error #relay_transport = error
Dans /etc/postfix/sasl_passwd, pour fournir les identifiants SMTP Orange:
[smtp.orange.fr]:submission xxxxx@orange.fr:MotDePasse!
Dans /etc/postfix/sender_canonical, pour ré-écrire le From, car Orange n'accepte plus les expéditeurs non-Orange depuis courant 2024:
root xxxxx@orange.fr
Redémarrer tout ça:
postmap /etc/postfix/sasl_passwd postmap /etc/postfix/sender_canonical service postfix restart
Tester l'envoi sur une adresse perso:
echo Bonjour. | mail -s Test chez@vous.com
Inspecter la copie locale:
mutt -f /var/mail/root
Vérifier que l'envoi s'est bien passé:
# journalctl -fxb oct. 09 21:19:20 proxmox postfix/smtp[17211]: 5170F1D40609: to=<root@breizh-entropy.org>, relay=smtp.orange.fr[80.12.26.33]:587, delay=2.2, delays=0/0/0.21/2, dsn=2.0.0, status=sent (250 2.0.0 ycDOsyZ2QMzKhycDOsPxxX mail accepted for delivery)
Tester enfin l'envoi d'alertes RAID par mdadm:
mdadm --monitor --scan --oneshot --test
C'est bon, on est maintenant prévenu quand un disque lâche !