La signature numérique de domaine (DKIM) vous permet en outre de confirmer le propriétaire du domaine en ajoutant une clé à l'en-tête du message, qui à son tour est vérifiée par le serveur du destinataire par rapport à la clé publique spécifiée dans l'enregistrement DNS TXT du domaine de l'expéditeur. Ce paramètre est facultatif, mais il réduit considérablement le risque qu'un message soit classé comme spam et rend le message plus fiable de la part du destinataire.
1. Installez les packages nécessaires:
apt-get install opendkim opendkim-tools
2. Configuration et activation.
Supprimons les paramètres par défaut existants et apportons le fichier au formulaire:
nano /etc/opendkim.conf
AutoRestart Yes
AutoRestartRate 10/1h
UMask 002
Syslog yes
SyslogSuccess Yes
LogWhy Yes
Canonicalization relaxed/simple
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
KeyTable refile:/etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
Mode sv
PidFile /var/run/opendkim/opendkim.pid
SignatureAlgorithm rsa-sha256
UserID opendkim:opendkim
Socket inet:12301@localhost
Commentez la ligne par défaut et remplacez-la par ce qui suit:
nano /etc/default/opendkim
SOCKET="inet:12301@localhost"
Ajoutons des paramètres à postfix:
nano /etc/postfix/main.cf
milter_protocol = 2
milter_default_action = accept
smtpd_milters = inet:localhost:12301
non_smtpd_milters = inet:localhost:12301
Créons des répertoires pour stocker les données clés et les tables de mappage de domaine de messagerie:
mkdir /etc/opendkim
mkdir /etc/opendkim/keys
Créez un fichier d'hôtes et de domaines de confiance:
nano /etc/opendkim/TrustedHosts
127.0.0.1
localhost
192.168.0.1/24
*.
#.my-domain.net
#.my-domain.org
Créons un fichier de mappage de clé de domaine secret:
nano /etc/opendkim/KeyTable
mail._domainkey. :mail:/etc/opendkim/keys//mail.private
#mail._domainkey.my-domain.net my-domain.net:mail:/etc/opendkim/keys/my-domain.net/mail.private
#mail._domainkey.my-domain.org my-domain.org:mail:/etc/opendkim/keys/my-domain.org/mail.private
Créons un fichier qui contiendra les paramètres qui déterminent quelle adresse à quelle clé ajouter:
nano /etc/opendkim/SigningTable
*@ mail._domainkey.
#@my-domain.net mail._domainkey.my-domain.net
#@my-domain.org mail._domainkey.my-domain.org
Créons un répertoire et les fichiers clés eux-mêmes pour notre domaine:
cd /etc/opendkim/keys
mkdir
cd
opendkim-genkey -s mail -d
chown opendkim:opendkim mail.private
-s spécifie un sélecteur -d spécifie un domaine. La commande créera deux fichiers où mail.private contient la clé privée et mail.txt contient la clé publique.
Nous allons utiliser cette clé dans DNS:
nano -$ mail.txt
mail._domainkey IN TXT ( "v=DKIM1; h=sha256; k=rsa; "
"p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3Ru/oMs+d2y93gZVq81J7hZfe31GR3177XQ5dI0r8zFqh86K1pgcdvCbpaAzXw9x25
/9BUe2ot9gpxjnt5SD+dDyereVKdkIQdkJBTl21Ei8ShJf+iIyYn5/skzLYS5RzlreBGoSGT6mtfnhzRX1A18X52oZrAfUJIXqAX14LYFq
/B5Wkw8vcUiU1CrR7lteH1vCu0JQtE16CK"
"vj86V06SxtKNEiRDqHZXo5+SqjzB2qHeteTGTyxA1dBmyKGCP6cVTkU3P0unOtsDLO+47YTUC55db34DKjjr18Lny0gf0d6oT0OvCZU5m5O3v
QunxQtSPD4+Hb75xrMJqqSlXtswIDAQAB" )
Ramenons cet enregistrement à sa forme normale en supprimant les guillemets, et pour que la clé soit sur une seule ligne, après quoi nous ajoutons cet enregistrement TXT au DNS de notre domaine:
mail._domainkey IN TXT "v=DKIM1; k=rsa; p=MIIBI...IDAQAB"
Vous pouvez vérifier l'entrée avec la commande:
nslookup -q=TXT mail._domainkey. 8.8.8.8
Pour appliquer les paramètres, redémarrez les services:
service postfix restart
service opendkim restart
La configuration de DKIM est terminée, vous pouvez vérifier son fonctionnement en envoyant un e-mail à: check-auth@verifier.port25.com
Si tout est correctement configuré, vous recevrez un rapport contenant la ligne : DKIM check: pass.