Comment un démon, par exemple CRON, exécuté sur une machine qui n'a pas de MTA (Mail Transfert Agent) peut-il envoyer alors ses mails de notification ? la réponse souvent évoquée dans les forums est... en installant Postfix ou Sendmail... Pas lourd du tout comme idée
Heureusement il existe en réalité une alternative un peu moins gourmande nommé ssmtp.
ssmtp est, comme son nom ne l'indique pas, un simple remplacement du mécanisme standard sendmail utilisant le protocole SMTP. Sont fonctionnement est des plus simple, son unique rôle est de répondre aux appels à sendmail et de forwarder tous les contenus vers un serveur smtp externe.
Pour l'installer sous Mandriva, il suffit d'un urpmi ssmtp. Une fois installé, il n'y a rien à lancer. En effet, pas de démon et c'est tout l'avantage de la méthode. La substitution à sendmail se fait par l'utilisation du mécanisme des alternatives, c'est à dire par de simple lien symboliques allant du fichier /usb/sbin/sendmail vers /usr/sbin/ssmtp. Cette solution magique, qu'au passage j'ai trouve sur ce site, ne prends donc pas un octet en mémoire. Assez avantageux par rapport à l'installation d'un postfix complet donc.
Côté paramétrage, il faut pour que cela fonctionne modifier le fichier cat /etc/ssmtp/ssmtp.conf :
Pour tester, nous allons utiliser l'ancestrale commande mail :
Si tout s'est bien passé le courriel va partir sur le smtp puis arriver à l'adresse indiquée sans encombres.
- répondre
Malic , le 27 July, 2007 - 10:57sendmail, si ma mémoire est bonne, est tout à fait capable d'envoyer du mail sans être résident.
La partie résidente n'est utile que pour recevoir du mail.
Evidément, il faut quand même avoir une configuration valide pour envoyer avec sendmail sans être résident, ce qui n'est pas aussi simple que ssmtp.
- répondre
Ulhume, le 27 July, 2007 - 11:38Ah mais je ne dis pas que sendmail est résident, je dis que pour relayer vers un serveur smtp les mails locaux, il faudrait que sendmail soit configuré pour faire se relai (je ne sais pas si c'est faisable).
En général ce qui est préconisé est d'installer postfix dans ce but qui va surcharger la commande sendmail et faire ce relai.
ssmtp est juste une version méga light de tout cela.
- répondre
malic , le 27 July, 2007 - 12:09Pour juste faire du relai vers un autre server, c'est le paramêtre SmartRelay (ou DS) dans le fichier de conf, aprés ça, sendmail envoie tout ce qui n'est pas local à ce serveur.
- répondre
Ulhume, le 27 July, 2007 - 13:27Donc c'est faisable
Ok c'est noté. Etant directement passé à postfix je n'ai jamais mis les pieds chez M. Sendmail.
Ceci dit, pour juste faire ce petit relai de mails d'alerte:
- sendmail (rpm) 1mo (doc non comprise)
- ssmtp (rpm) 22ko
- répondre
Dab, le 27 July, 2007 - 13:59La doc de sendmail nous dit: "On dit souvent que celui qui n'a jamais édité un fichier standard sendmail.cf n'est pas un véritable administrateur UNIX. La légende dit aussi qu'il ne faut pas le faire deux fois, sous peine de devenir fou"
Et c'est vrai
... A une époque j'avais testé les virtual domaines sous sendmail ... conclusion 3 semaines d'arrêt 
Pour le relay il faut :
- Modifier le DS ( ex:DSmonserveur.mondomaine.fr <- relayage des mails vers monserveur.mondomaine.fr )
- Modifier le Dj si le nom de domaine du serveur sendmail n'est pas le nom de domaine connu sur internet (ex: Dj$w.toto.fr pour la reecriture du nom de domaine des mails )
- répondre
Spip , le 21 December, 2008 - 12:13Bonjour,
le lien dans l'article est mort, voir plutot celui ci
http://chezarchange.free.fr/blog/2007/02/01/
malgré mon acharnement, je n'arrive pas à appliquer la méthode.
je ne comprends pas le passage
En effet, pas de démon et c'est tout l'avantage de la méthode. La substitution à sendmail se fait par l'utilisation du mécanisme des alternatives, c'est à dire par de simple lien symboliques allant du fichier /usb/sbin/sendmail vers /usr/sbin/ssmtp
ln -s /usb/sbin/sendmail /usr/sbin/ssmtp
? ou faut il faire quelque chose dans /etc/alternatives ?
mon compte email (bidon)
voici mon fichier /etc/ssmtp/ssmtp.conf
root=
mailhub=smtp.gmail.com:465
rewriteDomain=gmail.com
hostname=localhost
FromLineOverride=YES
UseTLS=YES
AuthUser=bidon
AuthPass=**********
aucun message d'erreur quand je tente des envoies... pas facile de diagnostiquer.
Merci d'avance
- répondre
Spip , le 21 December, 2008 - 12:16euh, je voulais dire
ln -s /usr/sbin/ssmtp /usr/sbin/sendmail
- répondre
Spip , le 21 December, 2008 - 16:17finalement, j'ai reussit. Non pas en passant par gmail (j'ai tout essayé) mais par le smtp de mon fai. je rédigerai un article sur le wiki de mandriva.
dispo là bientot
http://wiki.mandriva.com/fr/Ssmtp
Cdlt
Spip.
Poster un nouveau commentaire