Outils du site

Heureux ceux qui savent rire d'eux même, ils pourront bien s'amuser. [Inconnu]

04-linux:60-ssmtp

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
04-linux:60-ssmtp [2016/04/07 00:36] Roge04-linux:60-ssmtp [2018/09/22 06:28] (Version actuelle) – [SSMTP for GMAIL] Roge
Ligne 1: Ligne 1:
 +====== ssmtp ======
  
 +Send mail sans serveur de mail
 +
 +===== Références =====
 +
 +[[http://linux.die.net/man/8/ssmtp]]
 +
 +[[http://linux.die.net/man/5/ssmtp.conf]]
 +
 +[[https://wiki.archlinux.org/index.php/SSMTP]] Excellent !!! :-D
 +
 +[[http://iqjar.com/jar/sending-emails-from-the-raspberry-pi/]]
 +
 +===== Mise en service =====
 +
 +
 +sSMTP permet à des applications d'envoyer des courriels, sans installer de mail server, via la commande /usr/sbin/sendmail.
 +
 +sSMTP est disponible sous Ubuntu, Raspbian, Cygwin et bien d'autres LUnix.
 +
 +''sudo apt-get install ssmtp''
 +
 +
 +Créer les paramètres de configuration (Cf. [[http://linux.die.net/man/5/ssmtp.conf]]) :
 +
 +''sudo nano /etc/ssmtp/ssmtp.conf''
 +
 +<code>
 +#
 +# Config file for sSMTP sendmail
 +#
 +# The person who gets all mail for userids < 1000
 +# Make this empty to disable rewriting.
 +root=xxx@provider.com
 +
 +# The place where the mail goes. The actual machine name is required no
 +# MX records are consulted. Commonly mailhosts are named mail.domain.com
 +mailhub=smtp.provider.com
 +AuthUser=xxx                       # Your Username
 +AuthPass=xxxxxxx                   # Your Password
 +
 +# Where will the mail seem to come from?
 +rewriteDomain=provider.com         # So the message appears to come from FAI
 +
 +# The full hostname
 +hostname=localhost
 +
 +# Are users allowed to set their own From: address?
 +# YES - Allow the user to specify their own From: address
 +# NO - Use the system generated From: address
 +FromLineOverride=YES               # So the message appears to come from FAI
 +</code>
 +
 +Rendre le fichier ssmtp.conf lisible uniquement par l'administrateur et le groupe "mail" :
 +
 +''sudo chmod 640 /etc/ssmtp/ssmtp.conf''
 +
 +Modifier le propriétaire et le groupe de ssmtp.conf pour éviter l'erreur //"/etc/ssmtp/ssmtp.conf not found"//.
 +
 +''sudo chown root:mail /etc/ssmtp/ssmtp.conf''
 +
 +Set the group owner of the ssmtp binary to the new ssmtp group:
 +
 +''sudo chown :mail /usr/sbin/ssmtp''
 +
 +Set the SGID bit on the ssmtp binary.
 +
 +''sudo chmod g+s /usr/sbin/ssmtp''
 +
 +
 +Les utilisateur pouvant envoyer des mails doivent appartenir au groupe "ssmtp" (must log out and log back in for changes to be used).
 +
 +''sudo gpasswd -a //<mainuser>// mail''
 +
 +Configurer les revaliases :
 +
 +''sudo nano /etc/ssmtp/revaliases''
 +
 +<code>
 +# sSMTP aliases
 +#
 +# Format:       local_account:outgoing_address:mailhub
 +#
 +# Example: root:your_login@your.domain:mailhub.your.domain[:port]
 +# where [:port] is an optional port number that defaults to 25.
 +
 +root:xxx@provider.com:smtp.provider.com
 +bob:yyy@provider.com:smtp.provider.com
 +
 +</code>
 +
 +Pour tester la solution, il peut être nécessaire de se délogger avant de lancer la commande : 
 +
 +''echo Contenu du message | mail -s "sujet du courriel" -t user@domain.com''
 +
 +===== Compléments =====
 +
 +Pour améliorer les informations de l'auteur du mail on peut modifier le fichier ''/etc/passwd'' ainsi :
 +
 +''sudo chfn -f 'mainuser@domain.com' mainuser''
 +
 +===== Fichier attachés =====
 +
 +Installer uuencode pour envoyer des fichiers attachés :
 +
 +''sudo apt-get install sharutils''
 +
 +Pour envoyer un fichier attaché :
 +
 +''uuencode file.txt filename.txt | mail user@domain.com ''
 +
 +
 +Exemple classique d'envoi de fichiers zippés :
 +
 +<code> tar cf - * | gzip | uuencode scripts.tgz | mail -s "attached file uuencoded" user@domain.com</code>
 +
 +<note tip>
 +Sur le Raspberry, le uuencode n'a pas la même version (4.11.1 au lieu de 4.14 sur Ubuntu). Le fichier attaché se retrouve dans le corps du mail et non attaché.
 +</note>
 +===== Logs =====
 +
 +Pour vérifier les logs : 
 +
 +''cat /var/log/mail.log''
 +
 +<note warning>
 +Les logs affichent le message : 
 +
 +''sSMTP[10580]: /etc/ssmtp/ssmtp.conf not found''
 +
 +Pourtant les mails sont envoyés !!! FIXME
 +</note>
 +
 +===== Remerciements =====
 +
 +Special Thanks to [[https://wiki.archlinux.org/index.php/SSMTP]] :-)
 +
 +===== Cygwin =====
 +
 +''uuencode'' est dans la package **sharutils**
 +
 +===== SSMTP for GMAIL =====
 +
 +contenu du fichier ''/etc/ssmtp/ssmtp.conf'' :
 +<code>
 +root=$mail
 +# The place where the mail goes. The actual machine name is required no
 +# MX records are consulted. Commonly mailhosts are named mail.domain.com
 +mailhub=smtp.gmail.com:587
 +
 +# Debug=Yes
 +
 +FromLineOverride=YES
 +
 +AuthUser=$mail
 +AuthPass=$pass
 +UseSTARTTLS=YES
 +UseTLS=YES
 +</code>
 +
 +==== UFW ====
 +
 +
 +Pour GMail il faut ajouter la règle suivante à ufw:
 +<code>
 +sudo ufw allow out 587/tcp
 +</code>