Utiliser Gmail pour envoyer des mails depuis un shell
En lisant un billet sur blog Linuxers.org, m’est venu l’idée d’écrire un article sur l’utilisation d’un compte Gmail pour envoyer des mails depuis un shell ou tout autres processus utilisant un “sendmail-like” (un bon exemple d’application est l’envoi d’alertes par Nagios).
Nous allons utiliser SSMTP (pour Simple SMTP). La première chose à faire avant de lancer dans ce tuto est de créer un compte Gmail (que vous pouvez dédié à votre serveur ou pour l’ensemble de votre réseau). Je vous déconseille fortement d’utiliser votre adresse personnelle…
Une fois le compte Gmail créé (par exemple monbeauserveur@gmail.com pour illustrer le reste de cet article), nous allons installer SSMTP sur notre système GNU/Linux favori (Ubuntu Server 9.04 dans mon cas):
sudo aptitude install ssmtp
On configure SSMTP en éditant le fichier texte /etc/ssmtp/ssmtp.conf:
root=monbeauserveur@gmail.com mailhub=smtp.gmail.com:587 hostname=monbeauserveur.monbeaudomaine.com AuthUser=monbeauserveur AuthPass=monbeauPaSsWoRd FromLineOverride=YES UseSTARTTLS=YES
Si sendmail était installé sur votre serveur, il va falloir le désinstallé (SSMTP remplacera SENDMAIL):
sudo service sendmail stop sudo aptitude remove sendmail
Ensuite on configure SSMTP comme mailer par défaut (il doit y avoir une solution plus élégante mais je n’ai pas eu le temps de creuser):
sudo ln -s /usr/sbin/ssmtp /usr/sbin/sendmail
Enfin on teste l’envoi d’un mail à partir d’un Shell:
echo Contenu du mail" | mail -s "Titre du mail" destinatairedumail@gmail.com
Le mail devrait arriver au destinataire (destinatairedumail@gmail.com) quelques secondes plus tard !
Il ne vous reste plus qu’a configurer vos services comme Nagios pour envoyer les alertes par mail !