Utiliser Gmail pour envoyer des mails depuis un shell

Date: 22/10/2009 | Catégories: Open-source,Systeme | Tags: ,

Sendmail

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):

[shell]sudo aptitude install ssmtp[/shell]

On configure SSMTP en éditant le fichier texte /etc/ssmtp/ssmtp.conf:

[shell]
root=monbeauserveur@gmail.com
mailhub=smtp.gmail.com:587
hostname=monbeauserveur.monbeaudomaine.com
AuthUser=monbeauserveur
AuthPass=monbeauPaSsWoRd
FromLineOverride=YES
UseSTARTTLS=YES
[/shell]

Si sendmail était installé sur votre serveur, il va falloir le désinstallé (SSMTP remplacera SENDMAIL):

[shell]sudo service sendmail stop
sudo aptitude remove sendmail[/shell]

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):

[shell]sudo ln -s /usr/sbin/ssmtp /usr/sbin/sendmail[/shell]

Enfin on teste l'envoi d'un mail à partir d'un Shell:

[shell]echo Contenu du mail" | mail -s "Titre du mail" destinatairedumail@gmail.com[/shell]

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 !

Partager ce billet