LINUX:Client Submission et STARTTLS

De WIKI sur Linux (ADB)
Aller à la navigation Aller à la recherche
La version imprimable n’est plus prise en charge et peut comporter des erreurs de génération. Veuillez mettre à jour les signets de votre navigateur et utiliser à la place la fonction d’impression par défaut de celui-ci.

retour au menu de Postfix-Configuration redirection des mails vers Internet


But

Dans ce premier cas, nous allons envoyer des mails vers un serveur de messagerie Internet. On utilise le protocole "Submission" avec authentification et cryptage avec la fonctionnalité STARTTLS.


Caractéristiques

Nous abordons le cas de connexion au serveur messagerie de Proximus (BE).

Il utilise le port 587, le protocole STARTTLS et il nous a fourni, en tant que client, un nom d'utilisateur et son mot de passe associé. Il faut que le domaine de l'adresse mail de l'expéditeur soit valide sur Internet. Ce serveur de messagerie travaille alors en tant que relais. Donc en tant qu'utilisateur authentifié, on peut envoyer des mails à tout le monde mais on en est responsable car ils sont envoyés en notre nom.


Configuration des options

Le processus qui envoie des mails est "smtp" et les options qui y correspondent commencent par "smtp_".

La première partie correspond à des options concernant le cryptage et aux options d'authentification. La seconde partie définit diverses tables nécessaires au bon fonctionnement. Ces tables vont être expliquées par la suite.

On ajoute les lignes suivantes aux options avancées au chapitre précédent des options de base "/etc/postix/main.cf":


smtp_sasl_security_options = noanonymous
smtp_sasl_auth_enable = yes
smtp_use_tls = yes
smtp_tls_security_level = encrypt
smtp_enforce_tls = yes
smtp_sasl_mechanism_filter = PLAIN, LOGIN, CRAM-MD5
smtp_tls_wrappermode = no
# tables 
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
transport_maps = hash:/etc/postfix/transport
smtp_generic_maps = hash:/etc/postfix/generic

Les options "smtp_" sont parlantes. A noter quelques unes:

  • "smtp_enforce_tls" force le cryptage après l'authentification.
  • "smtp_sasl_mechanism_filter" correspond aux options proposées par le serveur distant suite au test avec le programme "openssl" (l'article Tester l'envoi de mails).
  • "smtp_tls_wrappermode" permet de ne pas avoir un échange complètement crypté, le protocole STARTSSL est accepté.

Cette dernière option ("smtp_tls_wrappermode") est la seule qui change dans cette configuration par rapport à la suivante. Ce qui rend les deux configurations incompatibles.

Le fichier "/etc/postfix/master.cf" ne change pas.


Table Utilisateur-Mot de passe

La première étape consiste à stocker le nom d'utilisateur et son mot de passe lié à un nom serveur de messagerie en fonction du port utilisé.

Chaque ligne du fichier a la forme: HOST:PORT USER:PASSWORD Nous nommerons le fichier: "/etc/postfix/sasl_passwd":


relay.proximus.be:587 fg12345678@skynet.be:motdepasseinconnu

Il faut compiler le fichier avec la commande:

postmap /etc/postfix/sasl_passwd


Table TRANSPORT

Maintenant nous allons amender la table TRANSPORT que nous avons vu au chapitre précédent. Nous ajoutons la ligne suivante au fichier "/etc/postfix/transport":


pdupont@proximus.be   smtp:relay.proximus.be:587

Au contraire des autres configurations, en première partie, l'adresse mail cible est spécifiée. Ceci veut dire qu'on ne peut envoyer qu'à cette adresse. Il se fait que dans ce cas, c'est un alias pour le mail de référence: "fg12345678@skynet.be".

Cette configuration est sécuritaire. Car si vous aviez la configuration qui suit dans le fichier "/etc/postfix/transport":


*       smtp:relay.proximus.be:587

vous pourriez envoyer des mails à qui vous vouliez mais si cet accès sert comme passerelle, par exemple, à un site WEB, vous vous exposez à être responsable de spamming ou à des mails hors de propos si pas désobligeants.

Ne pas oublier de la compiler le fichier avec la commande:

postmap /etc/postfix/transport

Remarquons que le nom de machine ou l'adresse IP, le numéro de port et ses éventuels crochets ("[]') doivent être identiques dans les deux fichiers "/etc/postfix/sasl_passwd" et "/etc/postfix/transport".


Table GENERIC

La table BENERIC sert à renommer les adresses mails, ou en partie, aussi bien de l'expéditeur et du récepteur lors de l'envoi de mail. Attention, ce traitement est récursif.

Cette table va nous servir car l'adresse mail de l'expéditeur doit correspondre au propriétaire du couple utilisateur/mot de passe. Dans notre cas, l'adresse mail devient "pdupont@proximus.be" si l'expéditeur est "root".

Nommons ce fichier "/etc/postfix/generic":


root   pdupont@proximus.be

Il faut compiler le fichier avec la commande:

postmap /etc/postfix/generic


Envoi de mail

On peut envoyer un mail avec la commande "mail" à "pdupont@proximus.be", l'expéditeur sera transformé de "root" en "pdupont@proximus.be".


Table ALIASES

Si on désire envoyer les mails locaux destinés à l'utilisateur "root" à notre compte chez Proximus, on modifie le fichier "/etc/postfix/aliases":


root:  pdupont@proximus.be

Ne pas oublier de le "recompiler":

newaliases




retour au menu de Postfix-Configuration redirection des mails vers Internet