Magazine

Signature DKIM et amavis

Publié le 03 janvier 2011 par Lmns972 @guestblog

Comme vous avez peut être constaté mes derniers billets parlent de DKIM. J'ai essayé différente solution sur le marché dkim , dkimproxy. L'inconvénient majeur que j'ai pu constaté c'est qu'avec ce genre de configuration mais mail ne passait plus par amavis mais que par ces outils (sauf erreur de ma part.)
La j'en ai un peu marre je me dis et pourquoi doit-on ajouter une couche supplémentaire à notre serveur de mail qui est déjà assez chargé. Après quelques recherches on peut voir que amavisd-new propose dans c'est release la signature DKIM depuis la version 2.6 . Biensur la je suis chaud et tout exité.

  1. /*
  2. dpkg -l |grep amavis
  3. ii amavis-stats 0.1.12-10 Virus statistics RRDtool frontend for Amavis
  4. ii amavisd-new 1:2.6.1.dfsg-1 Interface between MTA and virus scanner/cont
  5. */

Jackpot je suis en 2.6.1

:)
on va pouvoir commencer à bosser. Passons maintenant à la configuration.

  1. /*
  2. /etc/amavis/
  3. mkdir -p keys/{domain1.com,domain2.com}
  4. cd keys/domain1.com
  5. amavisd-new genrsa domain1.com 1024 // A réediter pour l'ensemble de vos domaines.
  6. */

On modifie notre fichier 50-user (pour ceux qui sont sur debian)

  1. /*
  2. $inet_socket_port = [10024,10026] #Variable présente dans le fichier 20-debian_defaults mais si cette ligne est présente dans le 50-user cela va surcharger les valeurs précédentes. On indique ici que amavisd-new écoute sur les 2 ports
  3. $enable_dkim_verification = 1;
  4. $enable_dkim_signing = 1;
  5. dkim_key('domain1', 'domain1', '/etc/amavis/keys/domain1/domain1.com.pem');
  6. dkim_key('domain2', 'domain2', '/etc/amavis/keys//domain2/domain2.com.pem');
  7. @dkim_signature_options_bysender_maps = (
  8. { '.' => { ttl => 21*24*3600, c => 'relaxed/simple' } } );
  9. #@mynetworks = qw(127.0.0.0/8 10.0.0.0/8 ); # list your internal networks
  10. #$interface_policy{'10024'} = 'DKIM_ALWAYS';
  11. ##$policy_bank{'DKIM_ALWAYS'} = { originating => 1, };
  12. $interface_policy{'10026'} = 'ORIGINATING';
  13. $policy_bank{'ORIGINATING'} = { originating => 1, };
  14.  
  15. */

Passons maintenant à la configuration du master.cf , on ajoute les lignes suivantes :

  1. /*
  2. submission inet n - - - - smtpd #Le port utilisé ne sera plus le 25 ou le 465 mais le 587.
  3. -o smtpd_enforce_tls=yes
  4. -o smtpd_sasl_auth_enable=yes
  5. -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  6. -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
  7. -o content_filter=smtp-amavis:[127.0.0.1]:10026 #Les mails qui seront authentifiés par le port 587 seront envoyés par le port 10026 vers amavis et sera utilisé par la variable $interface_policy{'10026'} vu plus haut.
  8. */

Biensur pour que tout ceci fonctionne postfix doit être configuré avec du TLS.

Maintenant il faut renseigner notre clé dans notre configuration DNS.

  1. /*
  2. amavisd-new showkeys domain1 "Coller le résultat à la fin de votre fichier de conf DNS"
  3. rndc reload votre_zone_dns
  4. */

Vous pouvez vérifier que la signature DKIM fonctionne correctement en envoyant tout simplement un mail à cette addresse "[email protected]" .


Retour à La Une de Logo Paperblog

A propos de l’auteur


Lmns972 3 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte