À son origine, le protocole SMTP (Simple Mail Transfer Protocol) était simple d’utilisation. Il suffisait simplement de spécifier un expéditeur et un destinataire, puis le serveur vérifiait l’existence de ce destinataire et l’e-mail lui était transféré. Initialement prévu pour échanger avec des personnes de confiance, le protocole SMTP ne possèdait alors aucun mécanisme de sécurité ; il a donc très vite été exploité par des personnes qui ont profité de l’absence de contrôle et de vérification du protocole afin d’envoyer une masse d’e-mails non souhaités par les utilisateurs (autrement dit, du spam), voire même afin d’effectuer une usurpation d’identité (c’est le phishing).
Afin d’augmenter la sécurité d’envoi des e-mails et donc d’authentifier la source des messages, des systèmes ont vu le jour, comme par exemple SPF et DKIM.
Sender Policy Framework
Le système Sender Policy Framework (SPF) permet d’authentifier l’expéditeur via son nom de domaine (comme par exemple « easylia.com »). Pour cela, le SPF fonctionne en adéquation avec le système DNS de votre nom de domaine en y ajoutant un enregistrement de type TXT de la forme décrite ci-dessous (en reprenant l’exemple du domaine « easylia.com », pour un enregistrement qui autorise tous les émetteurs).
easylia.com IN TXT "v=spf1 mx ~all"
Principe de fonctionnement
Après extraction du domaine de l’émetteur (« MAIL FROM: » de l’enveloppe du message SMTP, et non pas le champ « From: » de l’entête), une requête DNS de type TXT est effectuée sur le domaine en question pour connaître la liste des serveurs de messagerie autorisés à émettre des e-mails, afin de la comparer à l’adresse IP du serveur émetteur du message.
DomainKeys Identified Mail
DomainKeys Identified Mail (DKIM) est un système qui consiste, pour l’émetteur d’un message, à insérer dans l’en-tête de celui-ci une signature électronique cryptographique, de façon à ce que le serveur recevant le message soit en mesure de vérifier la source, ainsi que l’intégrité du message, et même certains de ses en-têtes. Même principe que pour le système SPF, il faut enregistrer la signature électronique cryptographique dans le système DNS de votre nom de domaine afin que le serveur de recéption puisse la vérifier. Ci-dessous, un exemple d’enregistrement DNS.
selector._domainKey TXT k=rsa; p=public_key
Principe de fonctionnement
Lors de la réception d’un message, le serveur va vérifier la signature en utilisant pour cela la clé publique de l’émetteur qui aura été publiée préalablement par le serveur émetteur dans une zone DNS spécifique. Si la signature est vérifiée avec succès, alors l’origine et le contenu du message sont reconnus comme authentiques. Dans le cas contraire, le système peut réagir en rejetant l’e-mail, en le détruisant ou en le redirigeant.
Aujourd’hui, un e-mail authentifié est indispensable si l’on souhaite que notre information arrive correctement à sa destination. Bien sûr, toutes ces précautions ne garantissent pas avec certitude que vos e-mails ne seront pas considérés comme des spams, mais augmentent considérablement les chances de ne pas l’être.
Afin de vérifier si votre domaine est en mesure d’être authentifié, je vous invite à visiter le site suivant pour faire des tests sur vos enregistrements DNS : mail-tester.com.