Envoyer des mails depuis votre Raspberry Pi avec le smtp de Gmail

Cet article va vous permettre d’envoyer des mails depuis le terminal ou avec la fonction mail de php en utilisant le smtp de gmail.

C’est à dire que les mails seront envoyés par le biais de votre adresse perso gmail. Que ce soit pour être alerté d’une présence (avec une photo en pièce jointe), des mises à jours de sécurité à appliquer ou que sais-je encore…

 

Créer un mot de passe spécifique

Rendez-vous sur la page Mots de passe d’application de google et renseigner comme ceci :
Sélectionner une application -> Messagerie
Sélectionner un appareil -> Autre (nom personnalisé) -> Raspberry Pi

Vous obtiendrez un mot de passe spécifique qui a l’avantage de pouvoir être révoqué en cas de doute sur la sécurité de votre Raspberry Pi et de pouvoir envoyer des mails sans avoir à effectuer l’authentification en deux étapes.

Installer les packages

puis

Choisir la première ligne “Distribution directe par SMTP (site Internet)”
Distribution directe par SMTP (site Internet) : RaspberryPi
Liste d’adresses IP : 127.0.0.1 ; ::1_
Autres destinations : RaspberryPi
RaspberryPi : (laisser vide)
Machines à relayer : (laisser vide)
Faut-il minimiser les requêtes DNS : Non
Format « mbox » dans /var/mail
Faut-il séparer la configuration dans plusieurs fichiers ? Non
Destinataire des courriers de « root » et « postmaster » : (laisser vide)

 

ajouter les lignes à la fin du fichier en modifiant votre adresse et votre mot de passe (celui générer au début du tuto)

Il faut relancer Exim4 :

 

Courage on touche au bout :

ssmtp pour permettre l’utilisation du smtp de gmail
mailutils & mpak pour envoyer des mails en shell

Supprimer les deux ligne :

Et ajouter à la fin (en remplaçant le nom et le mot de passe une fois de plus)

 

Cron et d’autres services vont certainement vouloir envoyer des mails, pour qu’ils soient bien routés, il faut ajouter ces deux lignes à la fin du fichier /etc/aliases :

 

Tester

Avec php mail()

 

 

Avec mailutils dans le terminal :

Taper le texte, et pour envoyer il faut taper un point + [entrée] sur une nouvelle ligne.

 

Vous avez des tâches cron ?

Désormais, votre cron daemon va vous envoyer des alertes à chaque exécution d’une tâche. Voici comment paramétrer les alertes cron :

5 commentaires

  1. Bonjour,
    cela ne fonctionne pas chez moi, message d’erreur:
    May 10 14:43:53 raspberrypi sSMTP[8432]: Creating SSL connection to host
    May 10 14:44:03 raspberrypi sSMTP[8432]: Invalid response SMTP Server (STARTTLS)
    May 10 14:44:03 raspberrypi sSMTP[8432]: Cannot open smtp.gmail.com:465
    Je ne comprend pas j’ai paramètre le port 587 et c’est 465 qui est retourné…

    1. Bonjour,
      Je n’ai pas le soucis, par contre, sur StackOverflow je viens de trouver une réponse qui pourrait t’aider Linux configuration — ssmtp: Cannot open smtp.gmail.com:587

      A priori, il faudrait préciser un peu plus le chemin vers le smtp en modifiant /etc/ssmtp/ssmtp.conf

      TLS_CA_FILE=/etc/pki/tls/certs/ca-bundle.crt
      root=@gmail.com
      mailhub=smtp.gmail.com:587
      AuthUser=
      @gmail.com
      AuthPass=
      UseSTARTTLS=Yes
      UseTLS=Yes
      hostname=

      Ou et le retour de la commande echo $HOSTNAME dans le terminal.

      Puis dans /etc/ssmtp/revaliases
      Ajouter :

      root:@gmail.com:smtp.gmail.com:587

      Et refaire un test :

      mail -s "Sujet" @gmail.com

      Si ça ne fonctionne pas, je soupçonne que le chemin vers le certificat ne soit pas bon :

      TLS_CA_FILE=/etc/pki/tls/certs/ca-bundle.crt

      /etc/pki sur un Debian…

      Regarde côté :

      /etc/ssl/certs/ca-certificates.crt

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

− 2 = 6