Compilation Installation et Configuration d'Opendkim
Une alternative à Dkim-milter.
Pré-requis :
Avoir la main sur le serveur gèrent votre domaine, si c'est vous qui le gérez avec Bind9 (ou autre je suis pas sectaire), mh... si je suis sectaire mais pas pour ça :p
Pour utiliser Opendkim vous aurez besoin de la Libmilter le souci c'est que Postfix ne connaît pas cette bestiole !
La solution :
- Télécharger les sources de sendmail
ou
- Télécharger les sources de cette librairie http://j-chkmail.ensmp.fr/libmilter/libmilter-workers-8.14.3-1.tgz
J'ai choisi la deuxième solution :
Il n'y a pas de risque de télécharger une sal**erie puisque ce site est visiblement connu : https://www.milter.org/milters
Installation de Libmilter :
cd /opt/SOURCES wget http://j-chkmail.ensmp.fr/libmilter/libmilter-workers-8.14.3-1.tgz tar xvzf libmilter-workers-8.14.3-1.tgz cd libmilter-workers-8.14.3-1 Build -c Build install
Téléchargement :
Url : http://sourceforge.net/projects/opendkim/
cd /opt/SOURCES wget http://sourceforge.net/projects/opendkim/files/opendkim-2.0.1.tar.gz/download tar xvzf opendkim-2.0.1.tar.gz cd opendkim-2.0.1 mkdir /opt/opendkim201 mkdir /opt/opendkim/etc mv opendkim/opendkim.conf.sample /opt/opendkim/etc/opendkim.conf ln -s /opt/opendkim201 /opt/opendkim
Compilation et Installation :
Pensez à faire un petit ./configure --help pour visualiser les différentes options disponibles.
./configure --prefix=/opt/opendkim --with-openssl --with-db --with-milter --enable-query_cache make make install
Création de la clef privée et de la clef public :
cd /opt/opendkim/sbin
Editez le script sh : opendkim-genkey.sh et modifiez ces deux variables :
domain="votredomaine.fr" selector="dkim-key-votredomain.fr"
Ensuite exécutez le :
./opendkim-genkey.sh
Normalement vous devriez avoir deux nouveau fichier :
- dkim-key-votredomaine.fr.private
- dkim-key-votredomaine.fr.txt
Configuration :
Maintenant il nous faut modifier la configuration de Postfix.
vi /etc/postfix/main.cf
et ajoutez y ceci :
smtpd_milters = inet:127.0.0.1:8891
Puis la configuration de votre serveur DNS (exemple avec Bind9) :
Éditez le fichier de zone de votre domaine :
vi db.votredomaine.fr
Et ajoutez y votre clef publique :
;** DKIM pour la signature de mails _domainkey.votredomaine.fr. TXT "k=rsa; t=s; o=-;" dkim-key-votredomaine-fr._domainkey.votredomaine.fr. TXT "k=rsa; t=y; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDH25ICRG9ULctne9TZ5rm6TtDXva5GvpRTQDC8VZbn01h1wxrYYLWZBvTfQgLPh0juu+ugRLnP0cqUQC2xCZqQao5jOic19uMDnGuhwalMNsue6JRitmwv7laArvc8OaoHLDYpSveA0NkUbgvETCsLHMlMx+FVBKBINQIDAQAB;"
Si votre domaine est example.com et votre selector test, les vérificateurs DKIM s'attendent à trouver votre clé publique sous la forme test._domainkey.example.com
N'oubliez pas d'incrémenter le numéro de série.
Et testez avec dig si votre nouvel enregistrement fonctionne bien :
dig +short votredomaine-dkim._domainkey.votredomaine.fr txt localhost
Reste à modifier le fichier : /opt/opendkim/etc/opendkim.conf à votre convenance.
Personnellement j'ai modifié ceci :
Domain votredomaine.fr KeyFile /chemin-juqua/dkim-key-votredomain.fr.priv Selector dkim-key-votredomaine.fr Socket inet:8891@localhost
Chose sérieuse ! :
Arrivé la, démarrez Opendkim et redémarrez Postfix et Bind, un petit coup d'œil dans les logs n'est pas du luxe
Vous avez la possibilité de lancer Opendkim à la main sans fichier de configuration :
cd /opt/opendkim/sbin ./opendkim --help ./opendkim -l -p PORT -d DOMAIN -k KEYPATH -s SELECTOR
Avec fichier de configuration :
./opendkim -x ../etc/opendkim.conf
Tester le fonctionnement de votre nouvelle installation :
Il vous suffit d'envoyer un mail à cette adresse : autorespond+dkim@dk.elandsys.com
Vous devriez recevoir un mail en retour qui vous dira si votre système Dkim fonctionne correctement.
N'oubliez pas : l'Enregistrement ADSP dans votre dns.