Partie 4 : Configurer SPF et DKIM avec Postfix sur Ubuntu Serveur

Débutant – Configurer SPF et DKIM avec Postfix sur Ubuntu Serveur

lms 15 4

Vue d'ensemble

Après avoir terminé la configuration de postfix les parties 1 et partie 2, nous disposons d’un serveur SMTP Postfix fonctionnel et d’un serveur IMAP Dovecot. Nous allons configurer SPF et DKIM avec Postfix sur Ubuntu Serveur

Nous pouvons envoyer et recevoir des e-mails à l’aide d’un client de messagerie de bureau.

Bien que je dispose d’enregistrements MX, A et PTR corrects, mes e-mails ont été signalés comme spam par la Microsoft Outlook.

Dans cette partie, nous allons donc voir comment améliorer la livraison des e-mails dans la boîte de réception du destinataire en configurant SPF et DKIM sur le serveur Ubuntu.

Ce que vous apprendrez

  • Que sont les enregistrements SPF et DKIM ?
  • Créer un enregistrement SPF dans DNS
  • Configuration de l’agent de stratégie SPF
  • Configuration de DKIM
  • Créer une table de signature, une table de clés et un fichier d’hôtes de confiance
  • Générer une paire de clés privée/publique
  • Publiez votre clé publique dans les enregistrements DNS
  • tester la clé DKIM
  • Connectez Postfix à OpenDKIM
  • Vérification SPF et DKIM
  • Test du score et du placement des e-mails
  • Boîtes aux lettres Microsoft
Sommaire
2
3
Tutoriels – SPF et DKIM

SPF et DKIM sont deux types d’enregistrements TXT dans DNS qui vous permettent de détecter l’usurpation d’e-mail et d’aider les e-mails légitimes à être envoyés dans la boîte de réception du destinataire au lieu du dossier spam.

Débutant

04 heures 00 min

Mise à jour le: 3/12/2024

Pré-requis

Avoir un serveur Ubuntu

Avoir installé postfix de base

postfix serveur imap dovecot et le cryptage tls

Créer des boîtes aux lettres virtuelles sur un serveur de messagerie Ubuntu

Que sont les enregistrements SPF et DKIM ?

SPF et DKIM sont deux types d’enregistrements TXT dans DNS qui vous permettent de détecter l’usurpation d’e-mail et d’aider les e-mails légitimes à être envoyés dans la boîte de réception du destinataire au lieu du dossier spam.

Si votre domaine est victime d’usurpation d’e-mails, vos e-mails risquent d’atterrir dans le dossier spam du destinataire s’il ne vous a pas ajouté au carnet d’adresses.

L’enregistrement SPF (Sender Policy Framework) spécifie quels hôtes ou adresses IP sont autorisés à envoyer des e-mails au nom d’un domaine.

Vous devez autoriser uniquement votre propre serveur de messagerie ou celui de votre FAI à envoyer des e-mails pour votre domaine.

DKIM (DomainKeys Identified Mail) utilise une clé privée pour ajouter une signature aux e-mails envoyés depuis votre domaine.

Les serveurs SMTP de réception vérifient la signature en utilisant la clé publique correspondante, qui est publiée dans votre gestionnaire DNS.

Étape 1 : Créer un enregistrement SPF dans DNS

Dans votre interface de gestion DNS, créez un nouvel enregistrement TXT comme ci-dessous.

Commande :

TXT @ v=spf1 mx ~all

Comment configurer SPF et DKIM avec Postfix sur Ubuntu Server

Explication :

  • TXT indique qu’il s’agit d’un enregistrement TXT.
  • Entrez @ dans le champ du nom.
  • v=spf1 indique qu’il s’agit d’un enregistrement SPF et que la version de l’enregistrement SPF est SPF1.
  • Mx signifie que tous les hôtes répertoriés dans les enregistrements MX sont autorisés à envoyer des e-mails pour votre domaine et que tous les autres hôtes sont interdits.
  • ~all indique que les e-mails de votre domaine ne doivent provenir que d’hôtes spécifiés dans l’enregistrement SPF. Les e-mails provenant d’autres hôtes seront signalés comme non fiables. Les alternatives possibles sont +all, -all, ?all, mais elles sont rarement utilisées.

-all signifie que les e-mails envoyés depuis des hôtes non autorisés doivent être rejetés et ne jamais atterrir dans la boîte de réception ou dans le dossier spam du destinataire.

Certaines personnes pourraient penser que ce -all sera mieux, car cela rejettera les e-mails provenant d’hôtes non fiables.

Eh bien, l’utilisation -all dans votre politique SPF peut entraîner le rejet de vos propres e-mails lorsque le destinataire dispose de deux serveurs SMTP et que le serveur SMTP principal se déconnecte, vos e-mails seront temporairement stockés sur le serveur SMTP de sauvegarde.

Lorsque le serveur SMTP principal revient en ligne, l’e-mail sera relayé du serveur SMTP de sauvegarde vers le serveur SMTP principal.

Puisque vous n’avez pas répertorié le serveur SMTP de sauvegarde du destinataire dans votre politique SPF, l’e-mail sera rejeté par le serveur SMTP principal du destinataire.

Vous devriez donc l’utiliser ~all dans votre politique SPF.

Notez que certains gestionnaires DNS exige que vous enveloppiez l’enregistrement SPF avec des guillemets comme ci-dessous.


Commande :

TXT @ "v=spf1 mx ~all"

Sur Ubuntu, vous devez installer le bind9-dnsutilspackage pour pouvoir utiliser dig la commande :

Commande :

sudo apt install bind9-dnsutils

Pour vérifier si votre enregistrement SPF est propagé sur l’Internet public, vous pouvez utiliser l’utilitaire « dig » sur votre machine Linux comme ci-dessous.

Commande :

dig osnetworking.com txt

L’option txt indique dig que nous souhaitons uniquement interroger les enregistrements TXT.

Vous pouvez également utiliser dmarcian SPF surveyor pour tester la syntaxe de votre enregistrement SPF.

Étape 2 : Configuration de l'agent de stratégie SPF

Nous devons également indiquer à notre serveur SMTP Postfix de vérifier l’enregistrement SPF des e-mails entrants.

Cela ne permet pas de garantir la livraison des e-mails sortants, mais aide à détecter les faux e-mails entrants.

Tout d’abord, installez-les packages requis :

Commande :

sudo apt install postfix-policyd-spf-python

Modifiez ensuite le fichier de configuration du processus maître Postfix.

Commande :

sudo nano /etc/postfix/master.cf

Ajoutez les lignes suivantes à la fin du fichier, qui indiquent à Postfix de démarrer le démon de politique SPF lorsqu’il démarre lui-même.

Commande :

policyd-spf unix - n n - 0 spawn user=policyd-spf argv=/usr/bin/policyd-spf

Enregistrez et fermez le fichier. Ensuite, modifiez le fichier de configuration principal de Postfix.

Commande :

sudo nano /etc/postfix/main.cf

Ajoutez les lignes suivantes à la fin du fichier. La première ligne spécifie le paramètre de délai d’expiration de l’agent de stratégie Postfix.

Les lignes suivantes imposeront une restriction sur les e-mails entrants en rejetant les e-mails non autorisés et en vérifiant l’enregistrement SPF.

Commande :

policyd-spf_time_limit = 3600

smtpd_recipient_restrictions =

permit_mynetworks,

permit_sasl_authenticated,

reject_unauth_destination,

check_policy_service unix:private/policyd-spf

Enregistrez et fermez le fichier. Redémarrez ensuite Postfix.

Commande :

sudo systemctl restart postfix

La prochaine fois, lorsque vous recevrez un e-mail provenant d’un domaine doté d’un enregistrement SPF, vous pourrez voir les résultats de la vérification SPF dans l’en-tête brut de l’e-mail.

L’en-tête suivant indique que l’expéditeur a envoyé l’e-mail à partir d’un hôte autorisé.

Commande :

Received-SPF: Pass (sender SPF authorized).

Étape 3 : Configuration de DKIM

Tout d’abord, installez OpenDKIM qui est une implémentation open source du système d’authentification de l’expéditeur DKIM.

Commande :

sudo apt install opendkim opendkim-tools

Ajoutez ensuite l’utilisateur postfix au groupe opendkim.

Commande :

sudo gpasswd -a postfix opendkim

Modifiez le fichier de configuration principal d’OpenDKIM.

Commande :

sudo nano /etc/opendkim.conf

Trouvez la ligne suivante.

Commande :

Syslog yes

Par défaut, les journaux OpenDKIM seront enregistrés dans /var/log/mail.log un fichier.

Ajoutez la ligne suivante pour qu’OpenDKIM génère des journaux plus détaillés pour le débogage.

Commande :

Logwhy yes

Localisez les lignes suivantes. ET changer le chemin

Commande :

#Domain osnetworking.com#

KeyFile /etc/opendkim/keys/osnetworking.com/default.private

#Selector default

Par défaut, ils sont commentés. Merci de ne pas les décommenter.

Ensuite, trouvez les lignes suivantes. Décommentez-les et remplacez- simple par

Commande :

relaxed/simple

#Canonicalization simple

#Mode sv

#SubDomains no

Ajoutez ensuite les lignes suivantes sous  #ADSPAction continue la ligne.

Si votre fichier n’a pas #ADSPAction continue de ligne, ajoutez-les simplement ci-dessous

Commande :

SubDomains no.

AutoRestart yes

AutoRestartRate 10/1M

Background yes

DNSTimeout 5

SignatureAlgorithm rsa-sha256

Ensuite, ajoutez les lignes suivantes à la fin de ce fichier.

(Notez que sur Ubuntu 20.04, l’ID utilisateur est déjà défini sur opendkim)

Utilisateur #OpenDKIM

# N’oubliez pas d’ajouter le suffixe utilisateur au groupe opendkim

Commande :

UserID opendkim

# Mapper les domaines dans les adresses De vers les clés utilisées pour signer les messages

Commande :

KeyTable refile:/etc/opendkim/key.table

SigningTable refile:/etc/opendkim/signing.table

# Hôtes à ignorer lors de la vérification des signatures

Commande :

ExternalIgnoreList /etc/opendkim/trusted.hosts

# Un ensemble d’hôtes internes dont le courrier doit être signé

Commande :

InternalHosts /etc/opendkim/trusted.hosts

Enregistrez et fermez le fichier.

Étape 4 : Créer une table de signature, une table de clés et un fichier d'hôtes de confiance

Créer une structure de répertoires pour OpenDKIM

Commande :

sudo mkdir /etc/opendkim

sudo mkdir /etc/opendkim/keys

Remplacez le propriétaire root par opendkim assurez-vous que seul opendkim l’utilisateur peut lire et écrire dans le répertoire des clés.

Commande :

sudo chown -R opendkim:opendkim /etc/opendkim

sudo chmod go-rw /etc/opendkim/keys

Créez la table de signature.

Commande :

sudo nano /etc/opendkim/signing.table

Ajoutez les deux lignes suivantes au fichier.

Cela indique à OpenDKIM que si un expéditeur sur votre serveur utilise une @osnetworking.com adresse, celle-ci doit alors être signée avec la clé privée identifiée par default._domainkey.osnetworking.com.

La deuxième ligne indique que vos sous-domaines seront également signés par la clé privée.

Commande :

*@osnetworking.com default._domainkey.osnetworking.com*

@*.osnetworking.com! default._domainkey.osnetworking.com

Enregistrez et fermez le fichier.

Créez ensuite la table de clés.

Commande :

sudo nano /etc/opendkim/key.table

Ajoutez la ligne suivante, qui indique l’emplacement de la clé privée.

Commande :

default._domainkey.osnetworking.com osnetworking.com:default:/etc/opendkim/keys/osnetworking.com/default.private

Enregistrez et fermez le fichier. Ensuite, créez le fichier d’hôtes de confiance.

Commande :

sudo nano /etc/opendkim/trusted.hosts

Ajoutez les lignes suivantes au fichier nouvellement créé. Cela indique à OpenDKIM que si un e-mail provient d’un hôte local ou du même domaine, OpenDKIM doit uniquement signer l’e-mail mais ne pas effectuer de vérification DKIM sur l’e-mail.

Commande :

127.0.0.1localhost

.osnetworking.com

Enregistrez et fermez le fichier.

Remarque : Vous ne devez pas ajouter un astérisque dans le nom de domaine comme ceci : *.osneworking.com.

Il ne doit y avoir qu’un point devant le nom de domaine.

Étape 5 : Générer une paire de clés privée/publique

Puisque DKIM est utilisé pour signer les messages sortants et vérifier les messages entrants, nous devons générer une clé privée pour la signature et une clé publique pour le vérificateur à distance.

La clé publique sera publiée dans le DNS.

Créez un dossier distinct pour le domaine.

Commande :

sudo mkdir /etc/opendkim/keys/osnetworking.com

Générez des clés à l’aide opendkim-genkeyde l’outil.

Commande :

sudo opendkim-genkey -b 4096 -d osnetworking.com -D /etc/opendkim/keys/osnetworking.com -s default -v

La commande ci-dessus créera des clés de 4096 bits. -d (domain)spécifie le domaine.

  • -D (directory) spécifie le répertoire où les clés seront stockées et que nous utilisons default
  • selector (-s), également connu sous le nom de nom.

Une fois la commande exécutée, la clé privée sera écrite dans default.private un fichier et la clé publique sera écrite dans default.txt un fichier.

Définissez-vous opendkim en tant que propriétaire de la clé privée.

Commande :

sudo chown opendkim:opendkim /etc/opendkim/keys/ osnetworkling.com/ default.private

Et modifiez l’autorisation, afin que seul l’utilisateur opendkim ait un accès en lecture et en écriture au fichier.

Commande :

sudo chmod 600 /etc/opendkim/keys/osnetworking.com/default.private

Étape 6 : Publiez votre clé publique dans les enregistrements DNS

Afficher la clé publique

Commande :

sudo cat /etc/opendkim/keys/osnetworking.com/default.txt

La chaîne après le p paramètre est la clé publique.

Commande :

default._domainkey IN TXT ( "v=DKIM1; h=sha256; k=rsa; "

"p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA4t8l22DzWpzn9xhTOpgZaQGlcvLlbl7UX3sjHfELCe14Vnfbmq8nTQaqj9LwMVXaZzqWbdwehcT4WDLFEXeW8+x8pJuisnD2YZ6rMelFBZKIwqxyqSGgrQ1HlTTwphLHUfDVGa6gLNdxd1GpLG7qwropMVZ+tUN/dRFkJSxSdao8IM0nGl4nWMCqfTY23F13QRTUEIRmC5rACQ"

 

"aE9UJRzI7EEayoJiS/aAktD+7/F/BDI5/0R6tF/NJ7WWtrpDKNIdQJ/KgOa3gjzTwfIeTX7SRTm/n57QOZdZ8CwXVvakdlIudjlU2XniEawhK+CD3MAFc3Q84ClYYjaebfjkRoXi/yGf1HsZFkjmq2lZVjwkc+HTkNI/UeSgJKNQd3FCBpIebX8Iloab50OXUEMVZ+yNpBdeGVFLFcfEiH+VXo3VD3lkJTCE9TNKxB/Ht71bno0jTI0UnB"

"mteQrtecxo7oI58nlTVkTLLx5UfreVj3aFEHCuT//UbtTIUZCEtRlxqeVTI5sdCCLQ+3K2cw5pndeWqO/85hVCvzKpLRT8KxOaJUvvFtKZh0pBeNhLj2lr9MqymqmnoNWkbLAzeVQRsQroWoVXjfqNSAEOG7gwS1fqo+tafcykOmdggNm/DiJl69NsPf2R9rddaw9EQwQqedaX5UXChP4SD0ZIDytcpF1sMCAwEAAQ==" ) ; ----- DKIM key default for osnetworking.com

Dans votre gestionnaire DNS, créez un enregistrement TXT, saisissez-le default._domainkey dans le champ nom.

Revenez ensuite à la fenêtre du terminal, copiez tout ce qui se trouve entre parenthèses et collez-le dans le champ de valeur de l’enregistrement DNS.

Vous devez supprimer tous les guillemets doubles et les espaces blancs dans le champ de valeur.

Commande :

v=DKIM1; h=sha256; k=rsa;

p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA4t8l22DzWpzn9xhTOpgZaQGlcvLlbl7UX3sjHfELCe14Vnfbmq8nTQaqj9LwMVXaZzqWbdwehcT4WDLFEXeW8+x8pJuisnD2YZ6rMelFBZKIwqxyqSGgrQ1HlTTwphLHUfDVGa6gLNdxd1GpLG7qwropMVZ+tUN/dRFkJSxSdao8IM0nGl4nWMCqfTY23F13QRTUEIRmC5rACQ

aE9UJRzI7EEayoJiS/aAktD+7/F/BDI5/0R6tF/NJ7WWtrpDKNIdQJ/KgOa3gjzTwfIeTX7SRTm/n57QOZdZ8CwXVvakdlIudjlU2XniEawhK+CD3MAFc3Q84ClYYjaebfjkRoXi/yGf1HsZFkjmq2lZVjwkc+HTkNI/UeSgJKNQd3FCBpIebX8Iloab50OXUEMVZ+yNpBdeGVFLFcfEiH+VXo3VD3lkJTCE9TNKxB/Ht71bno0jTI0UnB

mteQrtecxo7oI58nlTVkTLLx5UfreVj3aFEHCuT//UbtTIUZCEtRlxqeVTI5sdCCLQ+3K2cw5pndeWqO/85hVCvzKpLRT8KxOaJUvvFtKZh0pBeNhLj2lr9MqymqmnoNWkbLAzeVQRsQroWoVXjfqNSAEOG7gwS1fqo+tafcykOmdggNm/DiJl69NsPf2R9rddaw9EQwQqedaX5UXChP4SD0ZIDytcpF1sMCAwEAAQ==

Si vous ne les supprimez pas, le test de clé de l’étape suivante échouera probablement.

Comment configurer SPF et DKIM avec Postfix sur Ubuntu Server

Si vous ne les supprimez pas, le test de clé de l’étape suivante échouera probablement.

Étape 7 : tester la clé DKIM

Entrez la commande suivante sur le serveur Ubuntu pour tester votre clé.

Commande :

sudo opendkim-testkey -d osnetworking.com -s default -vvv

Si tout va bien, vous verrez Key OK dans la sortie de la commande.

Notez que votre enregistrement DKIM peut avoir besoin d’un certain temps pour se propager sur Internet. Ne pas oublier d’activer le DNSSEC de votre registrar. Selon le registraire de domaine que vous utilisez, votre enregistrement DNS peut se propager instantanément, ou cela peut prendre jusqu’à 24 heures.

Vous pouvez aller sur https://www.dmarcanalyzer.com/dkim/dkim-check/ , entrer default comme sélecteur et entrer votre nom de domaine pour vérifier la propagation des enregistrements DKIM.

Si vous voyez Clé non sécurisée dans le résultat de la commande, ne paniquez pas. En effet, DNSSEC n’est pas activé sur votre nom de domaine. DNSSEC est une norme de sécurité pour les requêtes DNS sécurisées.

La plupart des noms de domaine n’ont pas activé DNSSEC. Il n’y a absolument pas lieu de s’inquiéter du fait que la clé n’est pas sécurisée. Vous pouvez continuer à suivre ce guide.

Si vous voyez l’erreur d’expiration du délai de requête, vous devez commenter la ligne suivante dans /etc/opendkim.conf le fichier et redémarrer opendkim.service.

Commande :

TrustAnchorFile /usr/share/dns/root.key

Étape 8 : Connectez Postfix à OpenDKIM

Postfix peut communiquer avec OpenDKIM via un fichier socket Unix. Le fichier socket par défaut utilisé par OpenDKIM est /var/run/opendkim/opendkim.sock, comme indiqué dans /etc/opendkim.conf le fichier.

Mais le démon SMTP Postfix fourni avec Ubuntu s’exécute dans une prison chroot, ce qui signifie que le démon SMTP résout tous les noms de fichiers relatifs au répertoire de file d’attente Postfix (/var/spool/postfix).

Nous devons donc modifier le fichier de socket OpenDKIM Unix.

Créez un répertoire pour contenir le fichier de socket OpenDKIM et autorisez uniquement l’utilisateur opendkim et postfix le groupe à y accéder.

Commande :

sudo mkdir /var/spool/postfix/opendkim

sudo chown opendkim:postfix /var/spool/postfix/opendkim

Modifiez ensuite le fichier de configuration principal d’OpenDKIM.

Commande :

sudo nano /etc/opendkim.conf

Recherchez la ligne suivante (Ubuntu 20.04)

Commande :

Socket local:/run/opendkim/opendkim.sock

Remplacez-le par la ligne suivante. (Si vous ne trouvez pas la ligne ci-dessus, ajoutez la ligne suivante.)

Commande :

Socket local:/var/spool/postfix/opendkim/opendkim.sock

Enregistrez et fermez le fichier.

Si vous pouvez trouver la ligne suivante dans /etc/default/opendkim le fichier.

Commande :

SOCKET="local:/var/run/opendkim/opendkim.sock"

Ou

Commande :

SOCKET=local:$RUNDIR/opendkim.sock

Changez-le en

Commande :

SOCKET="local:/var/spool/postfix/opendkim/opendkim.sock"

Enregistrez et fermez le fichier.

Ensuite, nous devons éditer le fichier de configuration principal de Postfix.

Commande :

sudo nano /etc/postfix/main.cf

Ajoutez les lignes suivantes à la fin de ce fichier, afin que Postfix puisse appeler OpenDKIM via le protocole milter.

Commande :

# Milter configurationmilter_default_action = accept

milter_protocol = 6

smtpd_milters = local:opendkim/opendkim.sock

non_smtpd_milters = $smtpd_milters

Enregistrez et fermez le fichier.

Puis redémarrez opendkim et postfix effectuez l’entretien.

Commande :

sudo systemctl restart opendkim postfix

Votre titre va ici

Vous pouvez désormais envoyer un e-mail test depuis votre serveur de messagerie vers votre compte Gmail pour voir si les contrôles SPF et DKIM ont réussi.

Voici l’adresse mail check-auth@verifier.port25.com. Sur le côté droit d’un e-mail ouvert dans Gmail, si vous cliquez sur le show original bouton dans le menu déroulant, vous pouvez voir les résultats de l’authentification.

Votre serveur de messagerie effectuera également des vérifications SPF et DKIM sur le domaine de l’expéditeur.

Vous pouvez voir les résultats dans les en-têtes des e-mails.

Ce qui suit est la vérification SPF et DKIM d’un expéditeur utilisant Gmail.

Resultat

Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2607:f8b0:4864:20::c2d; helo=mail-yw1-xc2d.google.com; envelope-from=utilisateur@gmail.com; receiver=<UNKNOWN>

Authentication-Results: mail.osnetworking.com;

dkim=pass (2048-bit key; unprotected)

header.d=gmail.com header.i=@gmail.com header.b="XWMRd2co";

dkim-atps=neutral

Test du score et du placement des e-mails

Vous pouvez également vous rendre sur https://www.mail-tester.com.

Vous verrez une adresse e-mail unique. Envoyez un e-mail depuis votre domaine à cette adresse, puis vérifiez votre score.

Comme vous pouvez le constater, j’ai obtenu un score parfait.

Mail-tester.com ne peut vous montrer qu’un score d’expéditeur.

Il existe un autre service appelé GlockApps qui vous permet de vérifier si votre e-mail est placé dans la boîte de réception ou dans le dossier spam du destinataire, ou s’il est carrément rejeté.

Il prend en charge de nombreux fournisseurs de messagerie populaires tels que Gmail, Outlook, Hotmail, YahooMail, iCloud Mail, etc.

Accès à tous les cours

  • Lorem ipsum dolor sit amet
  • Donec sed finibus nisi
  • Quisque aliquet velit sit amet
  • In non pulvinar purus curabitur nisi odio vel
  • Aliquam sodales nulla dolor sed vulputate sapien
  • Curabitur non bibendum ligula
Support

FAQ

FAQ

FAQ

Toutes les questions que vous posez en cas d’une erreur qui apparaît dans votre article, je vous ai mis la solution ci-dessous en forme de FAQ.

Postfix ne parvient pas à se connecter à OpenDKIM

Si votre message n’est pas signé et que la vérification DKIM a échoué, vous pouvez consulter le journal postfix (/var/log/mail.log) pour voir ce qui ne va pas avec votre configuration.

Si vous trouvez l’erreur suivante dans le journal de messagerie Postfix (/var/log/mail.log),

connect to Milter service local:opendkim/opendkim.sock: aucun fichier ou répertoire de ce type

Vous devriez vérifier si le service opendkim systemd est réellement en cours d’exécution.

Systemctl status opendkim

Si opendkim est en cours d’exécution et que vous voyez toujours l’erreur ci-dessus, cela signifie que Postfix ne peut pas se connecter à OpenDKIM via le socket de domaine Unix (local:opendkim/opendkim.sock).

Pour corriger cette erreur, vous pouvez configurer OpenDKIM pour utiliser le socket TCP/IP au lieu du socket de domaine Unix. (Le socket de domaine Unix est généralement plus rapide que le socket TCP/IP. Si cela ne fonctionne pas sur votre serveur, vous devez utiliser le socket TCP/IP.)

sudo nano /etc/opendkim.conf

Recherchez la ligne suivante :

Socket   local:/var/spool/postfix/opendkim/opendkim.sock

Remplacez-le par

Socket     inet:8892@localhost

OpenDKIM écoutera donc sur le 127.0.0.1:8892 socket TCP/IP. Enregistrez et fermez le fichier. Modifiez ensuite le fichier de configuration principal de Postfix.

sudo nano /etc/postfix/main.cf

Recherchez la ligne suivante :

smtpd_milters = local:opendkim/opendkim.sock

Remplacez-le par :

smtpd_milters = inet:127.0.0.1:8892

Postfix se connectera donc à OpenDKIM via le socket TCP/IP. Redémarrez OpenDKIM et Postfix.

sudo systemctl restart opendkim postfix

Vérification des journaux OpenDKIM

Parfois, les journaux du journal OpenDKIM peuvent vous aider à découvrir ce qui ne va pas.

sudo journalctl -eu opendkim

Par exemple, j’ai eu une fois l’erreur suivante.

opendkim[474285]: key ‘1’: dkimf_db_get(): Connection was killedopendkim[474285]: 16F53B606: error loading key ‘1’

J’ai juste besoin de redémarrer OpenDKIM pour corriger cette erreur.

sudo systemctl restart opendkim

Erreur de configuration dans le client de messagerie

La signature DKIM peut échouer si vous n’utilisez pas les paramètres SMTP/IMAP corrects dans votre client de messagerie.

Paramètres corrects :

  • Protocole SMTP : saisissez kubapay.uk comme nom du serveur, choisissez le port 587 et STARTTLS . Choisissez normal password comme méthode d’authentification.
  • Protocole IMAP : saisissez kubapay.uk comme nom du serveur, choisissez le port 143 et STARTTLS . Choisissez normal password comme méthode d’authentification.

Ou

  • Protocole SMTP : saisissez
  • Comme nom du serveur, choisissez le port 465 et SSL/TLS. Choisissez normal password comme méthode d’authentification.
  • Protocole IMAP : saisissez mail.kubapay.uk comme nom du serveur, choisissez le port 993 et    SSL/TLS. Choisissez normal password comme méthode d’authentification.

Mauvais paramètres :

  • Utilisez le port 25 comme port SMTP dans les clients de messagerie pour soumettre les e-mails sortants.
  • Aucune méthode de cryptage n’a été sélectionnée.

Le port 25 doit être utilisé pour la communication entre serveur SMTP et serveur SMTP. Veuillez ne pas l’utiliser dans votre client de messagerie pour soumettre des e-mails sortants.

Vous devez sélectionner une méthode de cryptage (STARTTLS ou SSL/TLS) dans votre client de messagerie.

Boîtes aux lettres Microsoft

Lors de mon test, l’e-mail a atterri dans ma boîte de réception Gmail. Cependant, il est toujours considéré comme spam dans mon courrier électronique Outlook.com, bien que SPF et DKIM soient transmis.

Microsoft utilise une liste noire interne qui bloque de nombreuses adresses IP légitimes.

Vous devez utiliser un relais. Je ferai un tutoriel sur ça.

Que faire si vos e-mails sont toujours marqués comme spam ?

Les deux facteurs les plus importants sont la réputation du domaine et la réputation IP.

Vous pouvez utiliser un service d’échauffement par e-mail pour améliorer automatiquement votre réputation.