Ceci est une ancienne révision du document !


Sécuriser ses transferts de zone DNS avec TSIG

Nous allons voir comment sécuriser ses transferts de zone DNS avec TSIG.

Comme d'habitude cette configuration se fera sur une debian stable à jour (wheezy a l'heure actuelle), mais doit être adaptée facilement à n'importe quelle distribution

Prérequis

  • des serveurs DNS deja configurés ;-) : un maître et un ou plusieurs esclaves pour une zone donnée
  • pour éviter les attaques par rejeu, ces serveurs doivent être a la même heure : utilisation de ntpdate ou mieux d'un démon NTP sur chacun

Sur le serveur maître

Générer la clef partagée

dans l'exemple suivant on utilise le domaine factice “domain.com” : adaptez a vos besoins
  • Création du repertoire servant a contenir la clef :
    mkdir /etc/bind/keys ; cd /etc/bind/keys
  • Génération de la clef :
    dnssec-keygen -a HMAC-SHA512 -b 512 -n HOST -r /dev/random transfer-domain-com

    Apres un court instant vous devriez voir quelque chose comme :

    masterdns:/etc/bind/keys# dnssec-keygen -a HMAC-SHA512 -b 512 -n HOST -r /dev/random transfer-domain-com
    Ktransfer-domain-com.+165+52920

    Un rapide ls -l nous montre bien la création des 2 fichiers de clef privée (.fichier .private) et publique (fichier .key):

    masterdns:/etc/bind/keys# ls -l
    total 8
    -rw-r--r-- 1 root bind 127 oct.  18 18:51 Ktransfer-domain-com.+165+52920.key
    -rw------- 1 root bind 232 oct.  18 18:51 Ktransfer-domain-com.+165+52920.private
  • Recopier cette clef dans notre configuration Bind :
    • Deja pour voir a quoi ressemble cette clef :
      # cat Ktransfer-domain-com.*.private

      qui devrait donner un résultat semblable à :

      # cat Ktransfer-domain-com.*.private
      Private-key-format: v1.3
      Algorithm: 165 (HMAC_SHA512)
      Key: dmomqcrOT7otZJdoyKRbDMhkii1a3ZdD4SvTdlMUSRga5O8WHeyW0nO1f1HnPDYuf8xV3rc8rBLs/sIvxoor8Q==
      Bits: AAA=
      Created: 20141018165729
      Publish: 20141018165729
      Activate: 20141018165729
    • Recopier cette clef dans notre fichier de clefs (que l'on peut créer par la même occasion s'il nexiste pas deja) :
      • vi /etc/bind/named.conf.tsigkeys
      • Puis ajouter ce contenu :
        key "tsig-domain-com" {
         algorithm HMAC-SHA512;
         secret "dmomqcrOT7otZJdoyKRbDMhkii1a3ZdD4SvTdlMUSRga5O8WHeyW0nO1f1HnPDYuf8xV3rc8rBLs/sIvxoor8Q==";
        };

        ou vous remplacez “dmomqcrOT7otZJdoyKRbDMhkii1a3ZdD4SvTdlMUSRga5O8WHeyW0nO1f1HnPDYuf8xV3rc8rBLs/sIvxoor8Q==” par votre clef. bien sur vous pourrez ajouter vos futures clefs dans ce même fichier en utilisant un nom différent pour chaque

  • Dire a bind d'utiliser ce fichier de clefs :<code>
  • # cat « EOF » /etc/bind/named.conf

include “/etc/bind/named.conf.tsigkeys”; EOF

sysadmin/tsig.1413652650.txt.gz · Dernière modification: 2014/10/18 19:17 par james
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0