Utiliser ssmtp comme remplacement de sendmail
Le 19 juillet 2007 à 15:04.

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

# Touts les uid < 1000 utiliserons cette address pour leur From
# ainsi un démon d'uid 75 qui cherche à envoyer un mail sera connu
# par cette adresse
root=root@mon-domaine.net

# L'adresse ou le nom de votre vrai serveur SMTP
mailhub=mon_serveur_smtp_reel

# Le domaine que ssmtp utilisera pour se présenter
rewriteDomain=monDomaine.net

# Le nom de machine que ssmtp utilisera pour se présenter
hostname=barbouze

Pour tester, nous allons utiliser l'ancestrale commande mail :

mail -s "Très important" administrateurs@monDomaine.net
Le café est en train de caraméliser !!
<CTRL-D>

Si tout s'est bien passé le courriel va partir sur le smtp puis arriver à l'adresse indiquée sans encombres.

Commentaires

Malic , le 27 July, 2007 - 10:57

sendmail, 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.

Ulhume, le 27 July, 2007 - 11:38

Ah 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.

malic , le 27 July, 2007 - 12:09

Pour 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.

Ulhume, le 27 July, 2007 - 13:27

Donc c'est faisable Smiling 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

Dab, le 27 July, 2007 - 13:59

La 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 Smiling ... A une époque j'avais testé les virtual domaines sous sendmail ... conclusion 3 semaines d'arrêt Smiling

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 )

Spip , le 21 December, 2008 - 12:13

Bonjour,

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

Spip , le 21 December, 2008 - 12:16

euh, je voulais dire

ln -s /usr/sbin/ssmtp /usr/sbin/sendmail

Spip , le 21 December, 2008 - 16:17

finalement, 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

Le contenu de ce champ est gardé secret et ne sera pas montré publiquement.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • To highlight piece of code, just surround them with <code type="language"> Your code &tl;/code>>. Language can be java,c++,bash,etc... Everything Geshi support.
  • Les lignes et les paragraphes vont à la ligne automatiquement.
  • Textual smileys will be replaced with graphical ones.
  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.

Plus d'informations sur les options de formatage

Connexion utilisateur
Les derniers bavardages...