====== Envoyer un mail dans un script shell ====== __OS__: Debian Etch __Problème__: Comment envoyer un mail avec le contenu d'une variable comme corps de message depuis un script ? __Solution__: mailx permet d'envoyer facilement des mails en ligne de commande et peut être utilisé facilement dans un script. echo "Contenu du mail" | mailx -s "titre du mail" fufu@couleur3.hc Ce qui donne dans un script: echo "$VAR_NAME" | mailx -s "$TITRE" $EMAIL __Note__: mailx permet d'envoyer des mails vers une adresse email (si exim est configuré pour l'accepter) oui vers un utilisateur local: echo "Contenu du mail" | mailx -s "titre du mail" fufu ====== Mailing to remote domains not supported (mailx) ====== __OS__: Debian Etch __Problème__: Lors de la réinstallation de ma Debian, les mails ne partaient plus en utilisant mailx depuis les scripts. __Solution__: mailx dépend d'exim pour l'envoi de mails. Lors de l'installation, seul l'envoi de mails locaux avaient été autorisés (à l'utilisateur principal non-root) dans la config d'exim. dpkg-reconfigure exim4-config et choisir l'envoi de mail par smtp (site internet) au lieu de distribution locale seule. ====== Forwarder les mails system vers un utilisateur ====== __OS__: Ubuntu 9.10 __Problème__: Comment lire les mails system depuis un client graphique tel que Evolution ? __Solution__: Par défaut, les mails system sont envoyés à root. Sur ma machine, ils étaient présents dans le fichier /var/email/email Evolution permet de lire les mails dans des fichiers locaux, mais ce fichier n'était lisible que du user //mail//. Pour transférer les emails envoyés à root sous par exemple /var/email/rodn Créer le fichier suivant: sudo gedit /root/.forward contenant rodn@myhostname ====== Configuration des mails envoyés par Exim4 ====== ===== Désactivation de IPv6 ===== SMTP error from remote mail server after end of data: host gmail-smtp-in.l.google.com [2a00:1450:400c:c0a::1a]: 550-5.7.1 [2001:41d0:1:7327::1] Our system has detected that this message does 550-5.7.1 not meet IPv6 sending guidelines regarding PTR records and 550-5.7.1 authentication. Please review 550-5.7.1 https://support.google.com/mail/?p=ipv6_authentication_error for more Certains serveurs mails demandent une configuration particulière du DNS pour le hostname de la machine avec IPv6. Dans mon cas il était plus simple de désactiver IPv6 sur Exim4. /etc/exim4/exim4.conf.template: J'ai ajouté cette ligne. (...) exim_path = /usr/sbin/exim4 # rodn - 2016-03-29: disable IPV6 (for gmail) disable_ipv6 = true (...) Puis redémarré Exim: # /etc/init.d/exim4 restart Rem: le blocage était effectif avec Gmail depuis un moment semble-t-il en raison de IPv6. Rem: j'ai également ajouté disable_ipv6=true au ''fichier /etc/exim4/update-exim4.conf.conf'' mais cela ne semblait pas avoir d'effet. ===== Modification du SPF dans le DNS d'inscription-facile.com ===== /etc/bind/db.inscription-facile.com inscription-facile.com. IN TXT "v=spf1 a mx ip4:91.121.64.39 ip6:2001:41d0:1:7327::1 ptr:mail-out.ovh.net mx:mx3.ovh.net mx:mx4.ovh.net mx:mxb.ovh.net ~all" "ptr:mail-out.ovh.net" était absent, or les mails qui partent par le SMTP de OVH passent par là. ===== Ajout du nom de domaine dans /etc/hosts ===== J'ai rajouté inscription-facile.com comme alias pour localhost et l'ip du serveur: 127.0.0.1 inscription-facile.com localhost.localdomain localhost 91.121.64.39 ns25600.ip-91-121-64.eu ns25600 inscription-facile.com Puis redémarré Exim: # /etc/init.d/exim4 restart Rem: depuis cette manip seulement les mails arrivent sur mon adresse hotmail. Jusque là aucun mail n'était arrivé et aucun message d'erreur en retour n'était envoyé par hotmail https://lists.debian.org/debian-user/2006/01/msg00520.html I had to make my /etc/hosts file like this before exim4 worked right in this respect: 127.0.0.1 foobar.com localhost not 127.0.0.1 localhost foobar.com Apparemment le nom de domaine doit se trouver avant "localhost.localdomain localhost". Je n'ai pas essayé dans l'autre sens.