- La téléphonie Internet libre basée sur Asterisk par Sylvain Thérien - http://www.tux89.com -

Configurer sendmail comme relais SMTP vers la messagerie Gmail

Si la démarche de configuration de l’envoi de courriel proposée (relais SMTP sendmail) dans l’article « Ajustement Post installation [1] » ne fonctionne pas pour vous,  alors suivez les étapes de cet article afin d’utiliser le relais de Gmail [2] plutôt que celui de votre fournisseur d’accès Internet.

Valider la version de sendmail

Le protocole de communication utilisé par Gmail pour l’accès au service SMTP est sécurisé. Il faut donc s’assurer que la version de sendmail utilisé supporte le protocole TLS pour le chiffrement et SASL pour l’authentification. Pour vérifier,

faites la ligne de commande suivante :

/usr/sbin/sendmail -d0.1 -bv root

[3]

Si tout est bon, vous devriez voir les 2 options suivantes :

Compiled with : STARTTLS &  SASLv2

Valider la version de SASL

Afin de s’assurer que la version de SASL supporte les bons niveaux d’authentification, soit « LOGIN » et « PLAIN », et qu’il n’y aura pas de problème pour l’authentification avec Gmail, il faut valider la version  de SASL en exécutant la ligne de commande suivante :

yum list | grep sasl

La version de SASL doit être à 2.1.21 ou supérieure.

[4]

Si vous n’avez pas la bonne version, vous n’avez qu’à mettre à jour en effectuant la ligne de commande suivante :

yum install cyrus-sasl-plain

Avant de poursuivre, assurez-vous que le service SASL est fonctionnel et s’exécute comme daemon. Exécutez la ligne de commande suivante :

chkconfig –list saslauthd

Vous devriez observer que le service s’exécute au niveau 2-3-4-5, état « on », comme ci-dessous :

saslauthd       0:off   1:off   2:on 3:on 4:on 5:on 6:off

Si ce n’est pas le cas, simplement exécuter les deux lignes de commandes suivantes :

chkconfig saslauthd on
/sbin/service saslauthd start

Certificat de sécurité SSL

Cette étape consiste à créer les répertoires pour le stockage des certificats s’ils n’existent pas, effectuez les lignes de commandes suivantes :

mkdir /usr/share/ssl
mkdir /usr/share/ssl/certs
cd /usr/share/ssl/certs

Maintenant, si le fichier ca-bundle.crt n’existe pas, il faudra copier le certificat maître de votre système en effectuant la ligne de commande suivante :

cp /etc/pki/tls/certs/ca-bundle.crt /usr/share/ssl/certs/

Si vous ne trouvez pas le certificat ca-bundle.crt dans le répertoire /etc/pki/tls/certs/,  effectuez une recherche sur votre système afin de trouver son emplacement. Voici la commande en cas de besoin :

find / -name ca-bundle.crt -print

Nous allons maintenant générer les certificats locaux. Voici les lignes de commandes à utiliser pour générer les certificats SSL. Il est à noter qu’avec la valeur de paramètre « 3650 », vos certificats seront valides pour une période d’environ 10 ans.

Vous n’avez pas à générer le certificat CAPERM.PEM, mais question de conformité future, il ne fait pas de mal le générer tout de même. Exécutez la ligne de commande suivante et entrez les paramètres selon vos propres besoins et coordonnées.

openssl req -new -x509 -keyout cakey.pem -out cacert.pem -days 3650

[5]

Poursuivez maintenant pour la création du certificat sendmail en exécutant la ligne de commande suivante et entrez les paramètres selon vos propres besoins et coordonnées.

openssl req -nodes -new -x509 -keyout sendmail.pem -out sendmail.pem -days 3650

[6]

Configuration de sendmail

Nous sommes maintenant à l’étape finale de la démarche. Nous devons paramétrer sendmail afin qu’il puisse utiliser le relais SMTP de Gmail pour l’envoie de courriels.

Éditez le fichier /etc/mail/authinfo. Si le fichier n’existe pas, vous devrez le créer. Entrez les informations suivantes :

AuthInfo:smtp.gmail.com "U:root" "I:votreadresse@gmail.com" "P:mot_de_passe" "M:PLAIN"
AuthInfo:smtp.gmail.com:587 "U:root" "I:votreadresse@gmail.com" "P:mot_de_passe" "M:PLAIN"

Notez que vous devez changer les paramètres « votreadresse » et « mot_de_passe » par vos identifiants Gmail.

Effectuez ensuite les lignes de commandes suivantes :

makemap hash /etc/mail/authinfo < /etc/mail/authinfo
chmod 600 /etc/mail/authinfo

Éditez ensuite le fichier /etc/mail/sendmail.mc afin d’y ajouter les lignes suivantes, juste avant la ligne « MAILER(smtp)dnl » :

FEATURE(`authinfo',`hash /etc/mail/authinfo.db')
define(`SMART_HOST',`smtp.gmail.com')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 587')
define(`ESMTP_MAILER_ARGS', `TCP $h 587')
define(`confCACERT_PATH',`/usr/share/ssl/certs')
define(`confCACERT',`/usr/share/ssl/certs/ca-bundle.crt')
define(`confSERVER_CERT',`/usr/share/ssl/certs/sendmail.pem')
define(`confSERVER_KEY',`/usr/share/ssl/certs/sendmail.pem')
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')
define(`confAUTH_OPTIONS', `A')dnl

Effectuez ensuite les lignes de commandes suivantes afin de générer une version finale de configuration de sendmail. Notez que la commande m4 ne devrait donner aucune erreur.

cd /etc/mail
m4 sendmail.mc > sendmail.cf

Redémarrez le service sendmail en effectuant la ligne de commande suivante :

service sendmail restart

Pour valider que le tout soit conforme, exécutez la ligne de commande suivante :

echo '/map authinfo AuthInfo:smtp.gmail.com' | /usr/sbin/sendmail -bt

La commande précédente devrait donner le résultat suivant :

ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> map_lookup: authinfo (AuthInfo:smtp.gmail.com) returns « U:root » « I:votreadresse@gmail.com » « P:mot_de_passe » « M:PLAIN » (0)

Faites en suite un test en exécutant la ligne de commande suivante en prenant soin de changer « votreadresse@gmail.com » par votre propre adresse de courriel

echo « Ceci est un test » | mail -s Test votreadresse@gmail.com

Références :

http://www.screaming-penguin.com/node/4214 [7]

http://www.phinesolutions.com/sendmail-gmail-smtp-relay-howto.html [8]

Étape suivante :

Aide pour la gestion via une ligne de commande [9] pixelstats trackingpixel
Comments Disabled (Open | Close)

Comments Disabled To "Configurer sendmail comme relais SMTP vers la messagerie Gmail"

#1 Comment By Narcisse On 24 février 2010 @ 19 h 46 min

Nous pouvons conclure maintenant, le mail est fonctionnel.
Félicitation pour le travail effectué, Merci pour ton aide.

#2 Comment By Kamel On 4 juin 2010 @ 12 h 02 min

Bonsoir Sylvain,
Le mail est toujours non fonctionnel, tous les mails du système sont routés vers root@localhost ???
Par contre a l’étape suivante de ton tuto ;
————————————
Éditez le fichier /etc/mail/authinfo et entrez les informations suivantes :
AuthInfo:smtp.gmail.com “U:root” “I:votreadresse@gmail.com” “P:mot_de_passe” “M:PLAIN”
AuthInfo:smtp.gmail.com:587 “U:root” “I:votreadresse@gmail.com” “P:mot_de_passe” “M:PLAIN”
———————————————————–

Je ne trouve pas de fichier « /etc/mail/authinfo », est-ce qu’il le créer ??

En tout, j’attends vos instructions, Merci d’avance,

Kamel

#3 Comment By Kamel On 7 juin 2010 @ 13 h 51 min

Salut Sylvain,
je me suis remis donc a Sendmail (ce erreur ci-dessus),
J’ai du creer le fichier authinfo, et en faisant le reste du tuto, j’ai deux erreurs :
1- quand je valide « echo ‘/map authinfo AuthInfo:smtp.gmail.com’ | /usr/sbin/sendmail -bt »:
Erreur (putty) :
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) Enter
> Unknown « . » command ./map authinfo Authoinfo:smtp.gmail.com.

2- voila le message de retour de mail du systeme (via webmin) :
Mail headers View all headers | View raw message
From Mail Delivery Subsystem
To
Date 07/06/2010 19:17
Subject Warning: could not send message for past 4 hours
Message contents
**********************************************
** THIS IS A WARNING MESSAGE ONLY **
** YOU DO NOT NEED TO RESEND YOUR MESSAGE **
**********************************************

The original message was received at Mon, 7 Jun 2010 15:14:16 +0200
from pbx.local [127.0.0.1]

—– Transcript of session follows —–
… Deferred: Name server: smtp.gmail.com: host name lookup failure
Warning: message still undelivered after 4 hours
Will keep trying until message is 5 days old

As-tu des explications ?, cela fait longtemps que je cherche a faire fonctionner Sendmail mais sans succès ??
Ser t-il possible de basculer vers Posfix par exemple ? as-tu un tuto ?

Merci

#4 Comment By Sylvain Thérien On 7 juin 2010 @ 21 h 40 min

Kamel,

Tu dois faire attention quand tu copie les commandes du tutoriel. J’ai remarqué par exemple que le  » (ouvert et fermé) n’est pas identique (“ et ”). C’est causé par l’éditeur de WordPress qui gère le contenu du site. Tu dois alors faire attention à ce que l’ouverture et la fermeture du  » soit identique.

Par exemple :

AuthInfo:smtp.gmail.com “U:root” “I:votreadresse@gmail.com” “P:mot_de_passe” “M:PLAIN”
AuthInfo:smtp.gmail.com:587 “U:root” “I:votreadresse@gmail.com” “P:mot_de_passe” “M:PLAIN”

doit être comme ceci :

AuthInfo:smtp.gmail.com « U:root » « I:votreadresse@gmail.com » « P:mot_de_passe » « M:PLAIN »
AuthInfo:smtp.gmail.com:587 « U:root » « I:votreadresse@gmail.com » « P:mot_de_passe » « M:PLAIN »

Tu peux alors essayer de refaire le tutoriel en faisant attention aux « . Pour ce qui est des caractères ’ et `, tu ne devrais pas avoir a les changer, ils devraient être corrects.

De plus, assure toi que tu ton DNS est fonctionnel. Tu peux valider en faisant la ligne de commande suivante :

nslookup smtp.gmail.com

Tu devrais alors recevoir une réponse du genre :

Non-authoritative answer:
smtp.gmail.com canonical name = gmail-smtp-msa.l.google.com.
Name: gmail-smtp-msa.l.google.com
Address: 74.125.113.109

#5 Comment By Uday pratap singh sikarwar On 29 septembre 2010 @ 3 h 09 min

Hi,

This is Uday. I was trying to configure sendmail with smtp for last 2-3 day’s but i was unsuccessful. but by all these steps i configuration is completed successful. So i am very happy with person who placed these steps for persons like me.

#6 Comment By Team Roster On 29 octobre 2010 @ 22 h 01 min

Maybe you should edit the blog subject Configuring sendmail as SMTP relay to Gmail Telephony The free Internet telephony based on Asterisk by Sylvain Therien to more specific for your blog post you create. I loved the blog post withal.

#7 Comment By Sylvain Thérien On 29 octobre 2010 @ 22 h 23 min

I agree with you on the fact that the title of the post is probably not reflecting accurately the content of the post. What you should know is that the whole blog is written in French only and I am using a plug-in to provide to non-French visitors automatic translation. Translation engines are based on Google and Bing free web services.

Thanks for the comment.

#8 Comment By Shalom K On 18 décembre 2010 @ 14 h 09 min

Hi Sylvain,
I followed you tutorial but I can’t get this to work, hope you have an idea.
I’m doing this on a centos vm guest running under opensuse host.
this is my maillog after I send a message:

Dec 18 21:05:26 centos-drupal sendmail[6026]: alias database /etc/aliases rebuilt by shalom
Dec 18 21:05:26 centos-drupal sendmail[6026]: /etc/aliases: 76 aliases, longest 10 bytes, 765 bytes total
Dec 18 21:05:26 centos-drupal sendmail[6031]: starting daemon (8.13.8): SMTP+queueing@01:00:00
Dec 18 21:05:26 centos-drupal sendmail[6031]: STARTTLS=server: file /etc/mail/certs/sendmail.pem unsafe: Group readable file
Dec 18 21:05:26 centos-drupal sm-msp-queue[6039]: starting daemon (8.13.8): queueing@01:00:00
Dec 18 21:05:44 centos-drupal sendmail[6043]: oBIJ5i3h006043: from=root, size=45, class=0, nrcpts=1, msgid=, relay=root@localhost
Dec 18 21:05:45 centos-drupal sendmail[6044]: oBIJ5jdG006044: from=, size=356, class=0, nrcpts=1, msgid=, proto=ESMTP, daemon=MTA, relay=centos-drupal.localdomain [127.0.0.1]
Dec 18 21:05:45 centos-drupal sendmail[6043]: oBIJ5i3h006043: to=shalom938@gmail.com, ctladdr=root (0/0), delay=00:00:01, xdelay=00:00:01, mailer=relay, pri=30045, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (oBIJ5jdG006044 Message accepted for delivery)
Dec 18 21:05:46 centos-drupal sendmail[6046]: STARTTLS=client, relay=smtp.gmail.com, version=TLSv1/SSLv3, verify=OK, cipher=RC4-MD5, bits=128/128
Dec 18 21:05:46 centos-drupal sendmail[6046]: AUTH=client, relay=smtp.gmail.com [209.85.229.109], authinfo failed
Dec 18 21:05:46 centos-drupal sendmail[6046]: oBIJ5jdG006044: to=, ctladdr= (0/0), delay=00:00:01, xdelay=00:00:01, mailer=relay, pri=120356, relay=smtp.gmail.com [209.85.229.109], dsn=5.0.0, stat=Service unavailable
Dec 18 21:05:46 centos-drupal sendmail[6046]: oBIJ5jdG006044: oBIJ5kdG006046: DSN: Service unavailable
Dec 18 21:05:46 centos-drupal sendmail[6046]: oBIJ5kdG006046: to=, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=31622, dsn=2.0.0, stat=Sent

#9 Comment By Sylvain Thérien On 20 décembre 2010 @ 22 h 28 min

Hello Shalom,

First, there should be no problem using Centos VM under Opensuse.

In your log, it seems that the authentication with gmail is not working correctly.

Dec 18 21:05:46 centos-drupal sendmail[6046]: AUTH=client, relay=smtp.gmail.com [209.85.229.109], authinfo failed

Just to let you know, the article is automatically translated using Google translation engine for English speaking people,. After re-verifying the post, I found one thing that didn’t match the original French post, and it’s the following:

The file in which you have to put the authentication info is /etc/mail/authinfo rather then /etc/mail/AUTHINFO.

The content of /etc/mail/authinfo should be:

AuthInfo:smtp.gmail.com « U:root » « I:uremail@gmail.com » « P:password » « M:PLAIN »
AuthInfo:smtp.gmail.com:587 « U:root » « I:uremail@gmail.com » « P:password » « M:PLAIN »

Redo all steps as described in the post and to verify that the authentication rules are properly used, do the following command:

echo ‘/map authinfo AuthInfo:smtp.gmail.com’ | /usr/sbin/sendmail –bt

You should the get this result:

ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter

> map_lookup: authinfo (AuthInfo:smtp.gmail.com) returns “U:root” “in:uremail@gmail.com” “P:password” “m:PLAIN” (0)

Then you should be able to do the following and receive an email.

echo “This is a test” | mail -s Test [10]

Hope it help.

#10 Comment By James On 4 février 2011 @ 8 h 05 min

Salut,

cela fait pas mal de temps que je creuse … no result!
Lorsque je tape la commande :

echo ‘/map authinfo AuthInfo:smtp.gmail.com’ | /usr/sbin/sendmail -bt

Voici ce que j’obtiens:

ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter
> hash map « authinfo »: unsafe map file /etc/mail/authinfo.db: Permission denied
map_lookup: authinfo (AuthInfo:smtp.gmail.com) no match (75)

Je ne comprend pas.. pour info mon fichier authinfo.db est vide …

Merci d’avance,

James

#11 Comment By James On 4 février 2011 @ 8 h 31 min

Re,

j’ai résolu mon problème en mettant à jour mon fichier authinfo, j’ai sûrement du rentrer des mauvais caractères.

Cela dit le résultat de la commande echo ‘/map authinfo AuthInfo:smtp.gmail.com’ | /usr/sbin/sendmail -bt répond bien mais lorsque j’envoie un mail via :

sendmail
From:
Subject: le sujet du mail
…contenu du message…
puis ctr+D

Je ne reçois pas de mail…?

Pour info mon nslookup smtp.gmail.com renvoie les bons paramètres (cf. plus haut)

Merci,

James

#12 Comment By James On 4 février 2011 @ 9 h 34 min

j’ai résolu le 2nd pb

j’avais un pb d’authentification gmail

dsl pour le spam

merci,

super tuto

#13 Comment By Sylvain Thérien On 4 février 2011 @ 9 h 50 min

James,

Félicitation. Ça c’est que j’appelle du libre service 🙂

#14 Comment By Antoine LELIEVRE On 17 mars 2011 @ 7 h 00 min

Bonjour,

J’ai il me semble tout fait correctement, pourtant quand j’essaye d’envoyer un mail avec la commande sendmail j’ai l’erreur suivante dans les logs:

Mar 17 11:56:42 persee sendmail[4051]: p2HAugpD004049: to=, ctladdr= (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=120333, relay=smtp.gmail.com [74.125.39.109], dsn=4.0.0, stat=Deferred: Connection refused by smtp.gmail.com

Une idée?

#15 Comment By Sylvain Thérien On 17 mars 2011 @ 11 h 06 min

Bonjour Antoine,

Il semble que tu as un problème d’authentification avec le serveur SMTP Gmail.

-> Connection refused by smtp.gmail.com

Lorsque tu effectues la commande suivante :

echo ‘/map authinfo AuthInfo:smtp.gmail.com’ | /usr/sbin/sendmail -bt

Est-ce que tu obtiens le résultat suivant :

ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter
> map_lookup: authinfo (AuthInfo:smtp.gmail.com) returns “U:root” “I:votreadresse@gmail.com” “P:mot_de_passe” “M:PLAIN” (0)

Es-tu certain d’utiliser le bon identifiant et le bon mot de passe ?

Si oui, alors revérifie ta configuration (STARTTLS & SASLv2) ainsi que tes certificats de sécurité SSL.

#16 Comment By Tyler On 26 juin 2011 @ 13 h 20 min

I seem to have set up everything correctly. When I send a test email I can see that it’s been accepted in the log:

Jun 26 13:10:33 pbx sendmail[5570]: p5QHAWUQ005570: from=root, size=59, class=0, nrcpts=1, msgid=, relay=root@localhost

Jun 26 13:10:33 pbx sendmail[5571]: p5QHAXdp005571: from=, size=327, class=0, nrcpts=1, msgid=, proto=ESMTP, daemon=MTA, relay=pbx.local [127.0.0.1]

Jun 26 13:10:33 pbx sendmail[5570]: p5QHAWUQ005570: to=tstyle@rnson-call.com, ctladdr=root (0/0), delay=00:00:01, xdelay=00:00:00, mailer=relay, pri=30059, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (p5QHAXdp005571 Message accepted for delivery)

Jun 26 13:10:33 pbx sendmail[5573]: STARTTLS=client, relay=smtp.gmail.com, version=TLSv1/SSLv3, verify=OK, cipher=RC4-SHA, bits=128/128

However, I never receive it. I’m using Google Apps. Perhaps that is a problem?

#17 Pingback By PBX In A Flash: Using Google Apps As A Sendmail Relay | Divide By Zero On 26 juin 2011 @ 23 h 04 min

[…] Apps for Business for email and so I wanted to integrate PIAF with existing Google Apps.  I found a decent little tutorial aimed at Gmail users that helped me with set up sendmail as a SMTP relay to Google Apps, but it was missing a few bits […]

#18 Comment By Sylvain Thérien On 27 juin 2011 @ 7 h 51 min

Tyler,

As I found from the retro Ping of your post, it seems that you have found the cause of the problem. As I read your post, the SASL daemon did not seem to be running as a service. I’ve never had this problem, but I think it would be wise to add a special mention in my post, just in case someone else encounter the same scenario.

Thank you again.

Sylvain.

#19 Comment By Marco On 8 octobre 2011 @ 4 h 28 min

Ciao, grazie per il post, ma nel mio caso vorrei evitare di usare come relay il server smpt di google, è possibile configurare sendmail per forzare sempre il relay in locale?
Perchè non mi funziona più l’invio alle caselle gmail.
Spero di non aver detto qualche fesseria non essendo esperto di mail server, nel caso l’avessi fatto chiedo scusa.
Grazie

#20 Comment By Sylvain Thérien On 13 octobre 2011 @ 6 h 58 min

Marco,

Non sono sicuro di aver capito la tua domanda.

L’installazione di default di sendmail in Asterisk funziona in modalità locale. In questa modalità, sendmail viene utilizzato come server di corriere locale, e può interagire con altri server (SMTP Relay). Inoltre, in questa modalità, sendmail può collegati da strada e clienti (POP, IMAP, …).

Ho scritto questo post per documentare un metodo per interfacciarsi con sendmail usando una interfaccia di Gmail RELAY sicuro. Questo mi permette di mandare i miei messaggi vocali dal server Asterisk e di ricevere nel mio account di posta (Gmail).

Spero che questo sia più chiaro ora.

PS: io non parlo italiano, ho usato Google Translate per scrivere questo messaggio.

Saluti!

#21 Comment By XENON On 19 janvier 2012 @ 10 h 25 min

Merci beaucoup pour le tuto, il m’a bien aidé et le seul que j’ai trouvé qui fonctionne !

Pour ceux qui bloquent lorsque vous éditez le fichier /etc/mail/sendmail.mc, utiliser le logiciel Putty qui permet une prise de contrôle à distance du serveur ou d’une machine virtuelle
Vous pourrez faire un copier/coller des commandes pour supprimer toute erreurs

j’ai galéré comme un fou avec ces ‘ ‘  » ` pour finalement que ça fonctionne

Encore merci 😉

#22 Comment By Sylvain Thérien On 19 janvier 2012 @ 13 h 08 min

Xenon,

Merci pour l’astuce d’utiliser Putty afin de simplifier l’édition du fichier.

#23 Comment By Sniperdc On 14 février 2012 @ 10 h 03 min

HAHEUIAH !!

Ça fonctionne, très bon tutoriel formel et précis !

Mon environnement server Linux CentOS 5 – 32 bits :

Linux version 2.6.18-238.el5xen (mockbuild@builder10.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48))

Je désespérais de pouvoir configurer cette fonctionnalité que j’utilise sur l’intranet de mon entreprise.

En effet la grande instabilité de notre serveur dédié pour le publipostage chez OVH nous a contraints à notre serveur intranet comme nouvelle plateforme d’envoi.

Grand fidèle des produits de RedHat Inc l’ensemble de nos environnements serveurs sont sous Fedora ou CentOS.

Sendmail est des plus ardu à configuré en l’absence d’un tutoriel de référence et d’autres solutions telles que esmpt (Ubuntu) qui facilitent la configuration de sendmail comme relay smtp sont totalement absent.

C’est en dernier espoir que j’ai essayé ce tutoriel qui me ravis de en fonctionnant parfaitement !

Merci et 1 000 mercis pour autant de formalisme dans tes explications. Un formalisme exemplaire pour les autres tutoriels du mode Linux.

#24 Comment By Sylvain Thérien On 14 février 2012 @ 17 h 02 min

Je suis bien heureux de savoir que tu as apprécié à sa juste valeur le tutoriel. Si tu as le goût de déployer Asterisk, tu aimeras tout autant les autres tutoriels que j’ai écrit.

Au plaisir !

#25 Comment By inoujk On 21 mars 2012 @ 10 h 27 min

pour corriger le problème
> Cannot open hash database /etc/mail/authinfo.db: Invalid argument
map_lookup: authinfo (AuthInfo:smtp.gmail.com) no match (75)

il faut créer un fichier authinfo
nano authinfo

et générer le authinfo.db avec un makemap
makemap hash /etc/mail/authinfo.db < /etc/mail/authinfo

du moins, chez moi ca a marché ^^

#26 Comment By Sylvain Thérien On 21 mars 2012 @ 17 h 06 min

Et poutant, c’est bien indiqué dans les instructions !!!

1 – Éditez le fichier /etc/mail/authinfo. Si le fichier n’existe pas, vous devrez le créer.

et puis …

2 – Effectuez ensuite les lignes de commandes suivantes :

makemap hash /etc/mail/authinfo < /etc/mail/authinfo
chmod 600 /etc/mail/authinfo

Au plaisir !

#27 Comment By Yoboy On 11 avril 2012 @ 20 h 07 min

You, Sir, are going to heaven! I was getting authentication problem before, and most tutorials did not clearly lay out the way to make certificates to work with sendmail. Your tutorial is the complete working method that I’ve seen so far. Sendmail is working, and my asterisk’s voicemail to email is working as well. Forever indebted to you!

#28 Comment By Sylvain Thérien On 12 avril 2012 @ 7 h 22 min

I’m glad that you appreciated it.

Thanks for the comment!

#29 Pingback By Using GMail/Google Apps with PBX in a Flash | My Solutions IT On 20 avril 2012 @ 12 h 36 min

[…] Apps for Business for email and so I wanted to integrate PIAF with existing Google Apps. I found a decent little tutorial aimed at Gmail users that helped me with set up sendmail as a SMTP relay to Google Apps. It was missing a few bits and […]

#30 Comment By Web Developer On 29 août 2012 @ 6 h 24 min

Bonjour,
je confirme que ça marche tres bien, Merci

#31 Comment By Bill-QuasiNewbieLinux On 3 septembre 2012 @ 3 h 58 min

Bonjour,

Je me penche depuis une semaine sur l’envoi de massage depuis mon intranet, sans vrai succès 🙁
L’idée est d’envoyer des alertes aux services concernés lors de la saisie d’infos dans un form php.

Je suis sur un réseau local avec un controleur de domaine WinSBS, une messagerie exchange… et mon ubuntu 10.04.4 LTS (Lucid) sur une VM, un LAMP de base qui héberge le site Web de l’intranet.

Dans l’idéal je voulais que les messages soient expédiés depuis une adresse @monorganisation.fr, n’y arrivant pas j’ai lu différents tutos pour faire avec le smtp de gmail.

Je rencontre plein de galères (commandes comme dpkg, yum, chkconfig introuvables sur mon système, ca-bundle.crt inexistant…) mais j’avance 🙂

J’en suis au point ou les messages semblent partir (je les vois dans mes éléments envoyés de gmail) mais n’arrivent jamais à destination.

J’exécute la commande suivante pour faire mes tests:

sendmail -f [11] [12] < test.txt

Je suis un peu perdu, alors si quelqu'un veut bien me filer un coup de main, je serai surement moins bête après…

Quelques précisions pour dire où j'en suis :

Message original dans messages envoyés de gmail

Return-Path:
Received: from ubuntu.localdomain (mail2.monorganisation.fr. [217.xxx.xxx.xxx]) //c’est l’IP publique de mon serveur exchange qui est là
by mx.google.com with ESMTPS id cl8sm1145724wib.10.2012.08.31.07.24.36
(version=TLSv1/SSLv3 cipher=OTHER);
Fri, 31 Aug 2012 07:24:36 -0700 (PDT)
Received: from ubuntu.localdomain (localhost [127.0.0.1])
by ubuntu.localdomain (8.14.3/8.14.3/Debian-9.1ubuntu1) with ESMTP id q7VEOaD4002207
(version=TLSv1/SSLv3 cipher=DHE-DSS-AES256-SHA bits=256 verify=NO)
for ; Fri, 31 Aug 2012 16:24:36 +0200
Received: (from root@localhost)
by ubuntu.localdomain (8.14.3/8.14.3/Submit) id q7VEOa4U002206
for [13]; Fri, 31 Aug 2012 16:24:36 +0200
Date: Fri, 31 Aug 2012 16:24:36 +0200
From: [12]
Message-Id:

Dans le mail.log :
Aug 31 16:24:36 ubuntu sendmail[2206]: q7VEOa4U002206: from=moi@monorganisation.fr, size=0, class=0, nrcpts=1, msgid=, relay=root@localhost
Aug 31 16:24:36 ubuntu sm-mta[2207]: STARTTLS=server, relay=localhost [127.0.0.1], version=TLSv1/SSLv3, verify=NO, cipher=DHE-DSS-AES256-SHA, bits=256/256
Aug 31 16:24:36 ubuntu sendmail[2206]: STARTTLS=client, relay=[127.0.0.1], version=TLSv1/SSLv3, verify=FAIL, cipher=DHE-DSS-AES256-SHA, bits=256/256
Aug 31 16:24:36 ubuntu sm-mta[2207]: q7VEOaD4002207: from=, size=306, class=0, nrcpts=1, msgid=, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Aug 31 16:24:36 ubuntu sendmail[2206]: q7VEOa4U002206: to=moi@monorganisation.fr, ctladdr=moi@monorganisation.fr (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30000, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (q7VEOaD4002207 Message accepted for delivery)
Aug 31 16:24:36 ubuntu sm-mta[2209]: STARTTLS=client, relay=smtp.gmail.com, version=TLSv1/SSLv3, verify=FAIL, cipher=RC4-SHA, bits=128/128
Aug 31 16:24:38 ubuntu sm-mta[2209]: q7VEOaD4002207: to=, delay=00:00:02, xdelay=00:00:02, mailer=relay, pri=120306, relay=smtp.gmail.com [173.194.78.109], dsn=2.0.0, stat=Sent (OK 1346423077 cl8sm1145724wib.10)

Merci beaucoup pour les éclaircissements que vous pourrez m’apporter !

#32 Comment By Sylvain Thérien On 13 septembre 2012 @ 6 h 52 min

Essaie simplement de changer l’option « from » de sendmail. Je crois que Gmail n’enverra pas les courriels si tu mes un argument from: autre que ton adresse gmail.

Ainsi, exécute simplement ceci :

echo “Ceci est un test” | sendmail [11]

#33 Comment By Bill-QuasiNewbieLinux On 13 septembre 2012 @ 7 h 29 min

Bonjour Sylvain, merci encore pour ce super tuto et ce retour. A vrai dire j’y suis arrivé entre temps, un des problèmes était lié à l’anti spam géré par un prestataire.

Du coup j’ai essayé d’approfondir pour ne pas passer par gmail mais directement par le smtp de mon organisation, et là je bloque une fois encore !

Mais avec le gmail, maintenant, c’est ok 🙂

#34 Comment By frantz On 3 février 2014 @ 16 h 36 min

Très bon tuto !! merci !

#35 Comment By Yves On 9 décembre 2014 @ 8 h 50 min

Petit « truc » les sytèmes n’ont pas forcément les fichiers CF de sendmail installé, parfois un petit « yum install sendmail-cf » est nécéssaire. Sinon super article. Merci !