Proxmox v6: Configurer l’envoi de mail

Proxmox v6: Configurer l’envoi de mail

17 mars 2020 0 Par Mairien Anthony

Aujourd’hui un rapide article sur la configuration d’envoi de mail sur Proxmox 6.

Quelque chose qui m’a semblait pourtant simple mais qui m’a fait faire quelques recherches lorsque je bidouillais mon cluster Proxmox, c’est bien la gestion de l’envoi de mails lors de réussite/échec de sauvegarde ou lors d’alarmes.

En réalité la démarche est assez simple, mais nécessite d’être faite sur chaque noeud du cluster à la main… sauf si vous utilisez Ansible bien entendu, dans ce cas il est possible d’automatiser le tout 😉

I) Configuration « à la main »

On se connecte donc à la console de notre hôte via l’interface web, et on installe quelques paquets de base dont postfix qui permet d’envoyer des mails :

apt-get update
apt-get install postfix sasl2-bin libsasl2-2 libsasl2-modules

Une fois fait, on édite le fichier saslauthd et on l’active au démarrage :

nano /etc/default/saslauthd
# valeur à modifier dans le fichier
START=yes

Ensuite on modifier la configuration de Postfix même :

nano /etc/postfix/main.cf
# Rajouter ces lignes là dans le fichier, en supprimant la ligne
# relayhost="" qui est déjà présente dedans
smtp_use_tls=yes
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_sasl_tls_security_options = noanonymous
tls_random_source = dev:/dev/urandom
smtp_sasl_auth_enable = yes
relayhost=[mail.notamax.be]:587
smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous

Bien entendu la ligne relayhost=[mail.notamax.be]:587 est à adapter selon votre serveur SMTP et le port utilisé.

On créer ensuite un fichier en lecture seule par root qui servira à stocker nos credentials :

echo '' > /etc/postfix/sasl_passwd
chown root.root /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd
nano /etc/postfix/sasl_passwd
# Rentrez vos identifiants de la même façon
[mail.notamax.be]:587 contact@notamax.be:SuP3rP@$$W0rD

Une fois fait, on peut lancer ces deux dernières commandes puis redémarrer le service Postfix :

postmap /etc/postfix/sasl_passwd
postfix check
/etc/init.d/postfix restart

Et ensuite vient le fameux moment du test !

echo "Subject: Test d'envoi mail"| sendmail -f contact@notamax.be -v anthony@notamax.be

Et le mail part ! On peut d’ailleurs vérifier les logs via la commande tail -f /var/log/mail.log.

Ensuite, si on décide de sauvegarder une machine il faut simplement que celle-ci se trouve bien sur l’hôte sur lequel nous avons installé Postfix, puis dans Datacenter, Options on vient rajouter l’adresse expéditeur
par défaut :

Puis lors de la création d’une sauvegarde, on renseigne le mail du destinataire et le tour est joué :

Voilà un aperçu du fameux mail, et si vous avez déjà utilisé des VPS vous devriez voir que c’est le même type de mail ici :

II) Configuration via Ansible

Je me suis donc un peu remis à Ansible pour vous concocter un petit script certes basique mais qui fonctionne parfaitement, à vous d’en juger et de l’adapter si nécessaire. Il se comporte de la manière suivante :

Bien entendu je ne vais pas détailler les pré-requis et son installation/utilisation, je vous renvoi directement sur mon Github pour cela : https://github.com/IT-Anthony/PVEautoPostfix

Et bien voilà, ceci conclut ce petit article qui peut s’avérer bien utile selon moi ! Bonne journée/soirée à vous ! 😉