Connexion chiffrée avec un serveur de mail sur internet

Dans le post précédent on a vu comment chiffrer la liaison entre le serveur de mail local et les postes clients du réseau local, avec dovecot pour la récupération des mails et sendmail pour l’envoi de mail. Mais qu’en est-il de l’envoi ensuite vers internet en émission avec SMTP et en réception avec POP ?

Commençons par la réception, il faut d’abord bien sûr que votre fournisseur de service mail dispose d’un serveur POP avec option de chiffrement TLS/SSL. Jusqu’à présent j’utilisais fetchmail qui tourne sur le serveur de mail local, récupère les mails de tous les utilisateurs du réseau local sur internet et en assure la distribution dans les boîtes mail sous /var/spool/mail avec sendmail. Sauf qu’il semblerait que fetchmail ne sache pas gérer le chiffrement TLS/SSL avec comme MDA (mail delivery agent) sendmail. Du coup j’ai remplacé sendmail comme MDA par procmail et au final la commande fetchmail devient:

[pastacode lang= »markup » manual= »%2Fusr%2Fbin%2Ffetchmail%20–sslcertck%20-a%20-f%20%2Froot%2F.fetchmailrc%20-L%20%2Fvar%2Flog%2Ffetchmail.log » message= » » highlight= » » provider= »manual »/]

avec un fichier .fetchmailrc qui ressemble à ça (pour ne pas faire de pub, je suis chez online)

[pastacode lang= »markup » manual= »poll%20pop.online.net%20protocol%20pop3%0A%20user%20olivier.hoarau%40funix.org%20there%20with%20password%20password-fai%20is%20olivier%20here%0A%20option%20ssl%3B%0A%20mda%20%22mda%20%22%2Fusr%2Fbin%2Fprocmail%20-d%20%25T%22″ message= » » highlight= » » provider= »manual »/]

Passons maintenant à l’émission avec SMTP, là encore il faut que le fournisseur d’accès dispose d’un serveur SMTP sécurisé avec TLS/SSL. J’ai passé des heures à jouer avec la configuration de sendmail pour mettre en place le chiffrement de la connexion jusqu’à  que je me rende compte que la connexion était déjà chiffrée par défaut ! Et pour s’en convaincre il a suffit de lancer sendmail en mode verbeux pour voir les échanges entre mon serveur et le serveur de mon fournisseur d’accès:

sendmail -q -v

voilà le résultat

Running /var/spool/mqueue/v06JL1vY031912 (sequence 1 of 1)
<veronique.hoarau@funix.org>… Connecting to smtp.numericable.fr. via smtp8…

réponse du serveur SMTP de mon fournisseur d’accès numericable

220 smtp2.tech.numericable.fr ESMTP Postfix

mon serveur lui envoie un hello !

>>> EHLO ppp.numericable.fr

le serveur numericable lui envoie ses fonctionnalités

250-smtp2.tech.numericable.fr
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250 8BITMIME

la commande PIPELINING permet d’accélérer la connexion SMTP en envoyant les commandes d’un bloc et pas l’une après l’autre. SIZE 102400000 indique que les mails sont limités à 10Mo. ETRN pour dire à mon serveur  SMTP de lui envoyer tous ses messages. ENHANCEDSTATUSCODES c’est pour étoffer les codes de retour de commande. 8BITMIME mode de transfert sous 8bits pour faire passer  tous les caractères de l’UTF-8 et enfin STARTTLS pour passer en mode chiffré avec TLS.

Mon serveur lance donc une connexion chiffrée

>>> STARTTLS

voilà la réponse du serveur SMTP numericable

220 2.0.0 Ready to start TLS

mon serveur lui renvoie un hello

>>> EHLO ppp.numericable.fr

et le serveur SMTP de numericable renvoie à nouveau les fonctionnalités

250-smtp2.tech.numericable.fr
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-ENHANCEDSTATUSCODES
250 8BITMIME

le transfert de mail s’effectue ensuite avec un dialogue entre les 2 serveurs

>>> MAIL From:<olivier.hoarau@funix.org> SIZE=1064 BODY=7BIT
250 2.1.0 Ok
>>> RCPT To:<veronique.hoarau@funix.org>
>>> DATA
250 2.1.5 Ok
354 End data with <CR><LF>.<CR><LF>
>>> .
250 2.0.0 Ok: queued as C441561944
<veronique.hoarau@funix.org>… Sent (Ok: queued as C441561944)
Closing connection to smtp.numericable.fr.
>>> QUIT
221 2.0.0 Bye

voilà, voilà, comme quoi il n’y a rien à configurer la connexion est chiffrée par défaut. Pour en savoir plus sur la configuration de sendmail c’est par ici. Et pour la récupération des mails par fetchmail et leur mise à disposition avec un serveur POP local dovecot c’est par .

Laisser un commentaire