Or jusqu'à il y a peu de temps, Gandi offre enfin la possibilité d'annoncer ses clefs en amont, et d'avoir ainsi "the real thing". Ce n'est pas trop compliqué a faire.
D'abord, vérifier que net-dns/bind et net-dns/bind-tools sont a jour. (9.7 était problématique chez moi)
Créer un répertoire pour les clefs, puis générer deux clefs pour chaque zone (une ZSK et une KSK):
mkdir /etc/bind/keys dnssec-keygen -K /etc/bind/keys -a RSASHA256 -b 2048 -f KSK xolus.net dnssec-keygen -K /etc/bind/keys -a RSASHA256 -b 2048 xolus.net
On se retrouve avec quatre nouveaux fichiers, les parties privées (.private) et publiques (.key) de la ZSK et de la KSK. Les fichiers .key sont au format standard RR de BIND. La KSK est celle ayant un enregistrement de type DNSKEY 257.
On ajoute les deux clefs à la zone:
cat /etc/bind/keys/Kxolus.net*.key >>/etc/bind/pri/xolus.net.zone
Par la suite, et a chaque modification de la zone, il faudra la resigner avec
cd /etc/bind dnssec-signzone -K keys -o xolus.net pri/xolus.net.zone
Ceci crée un nouveau fichier de zone, xolus.net.zone.signed, qui inclut une signature pour chaque record de la zone. Reste a éditer /etc/bind/named.conf pour utiliser le fichier ".signed" à la place. On recharge ensuite BIND avec
rndc reload
puis on valide la signature d'une entrée au hasard, avec dig:
dig +sigchase +trusted-key=<(grep -v ';' /etc/bind/keys/Kxolus.net.+008+28711.key) -t aaaa xolus.netIci on a utilisé la KSK comme racine de confiance. dig est pénible et s'étrangle sur les commentaires placés par défaut dans les fichiers par dnssec-keygen. Si cela fonctionne, vous pouvez maintenant envoyer votre KSK à votre registrar qui se chargera d'ajouterles DS correspondants à la zone. Pour la vraie vérification, commençons par récupérer la clef racine:
dig -t DNSKEY . |grep " 257 " >>/etc/trusted-key.keyCette récupération est insécure, mais vous pouvez vérifier que la clef correspond à
. IN DNSKEY 257 3 8 AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF FVQUTf6v58fLjwBd0YI0Ez rAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq QxA+Uk1ihz0=Au demeurant, elle devrait déja être présente en dur dans /etc/bind/bind.keys, alors vérifiez que ça correspond. Une fois la clef racine dans /etc/trusted-key.key, un
dig +sigchase -t AAAA xolus.netDevrait réussir si la validation en amont a fonctionné. La zone est maintenant DNSSEC-enabled. Reste maintenant a activer DNSSEC du côté du resolver local. Avec BIND on ajoute simplement
dnssec-validation auto;
dans named.conf.
Reste encore a couvrir les zones dynamiques, et le mécanisme d'auto-signature intégré a BIND.
Aucun commentaire:
Enregistrer un commentaire