Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
pdns [Le 08/03/2016, 19:02] – Ajout d'un lien APT pour faciliter l'installation des paquets. 90.36.157.161 | pdns [Le 04/02/2019, 11:17] (Version actuelle) – Correction du lien mysql 178.20.241.170 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag> | ||
+ | ---- | ||
+ | |||
+ | ====== Serveur DNS : PowerDNS ====== | ||
+ | |||
+ | Cet article a pour but de vous présenter comment installer et configurer un serveur DNS en utilisant l' | ||
+ | |||
+ | PowerDNS est un serveur de nom qui peut utiliser de nombreux // | ||
+ | |||
+ | Si vous utilisez des bases de données, il y a plusieurs avantages très importants : | ||
+ | * Qui dit "// | ||
+ | * Vous n'avez pas besoin de recharger le serveur à l' | ||
+ | * En cas de crash système, et pour peu que vous ayez logé votre serveur de bases de données sur un point de montage séparé, vous ne perdrez pas vos données si vous réinstallez complètement votre système. | ||
+ | |||
+ | <note tip> | ||
+ | |||
+ | ===== Pré-requis ===== | ||
+ | |||
+ | * Vous devez maîtriser les bases de TCP/IP. | ||
+ | * Vous devez avoir une connexion internet (ou intranet si vous voulez juste adresser votre [[wpfr> | ||
+ | |||
+ | ===== Installation ===== | ||
+ | |||
+ | Pour installer // | ||
+ | |||
+ | ===== Configuration ===== | ||
+ | |||
+ | Considérons les aspects suivants : | ||
+ | * Le réseau local est '' | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | * La machine serveur DNS est aussi le serveur de mail et porte l'IP '' | ||
+ | * Il y a 3 autres machines sur le réseau : '' | ||
+ | |||
+ | Voyons comment configurer le serveur PowerDNS avec ce petit réseau. | ||
+ | |||
+ | ==== Configuration de base du serveur ==== | ||
+ | |||
+ | Le serveur comporte deux parties distinctes, le serveur de noms lui-même et le recurseur. Ces deux services sont séparés dans le système. Chacun a un démon. Lorsque vous contactez le serveur, celui-ci interroge le recurseur via une connection reseau sur une adresse localhost (ou autre à la limite !) et un port logiciel s'il ne peut trouver les informations dans ses backends. | ||
+ | |||
+ | La syntaxe des données dans les backends est la même, que pour Bind. | ||
+ | |||
+ | === Le fichier de configuration générale === | ||
+ | |||
+ | La configuration principale de PowerDNS se fait dans le fichier ''/ | ||
+ | |||
+ | <file / | ||
+ | allow-axfr-ips=217.70.177.40 | ||
+ | allow-recursion=127.0.0.1 | ||
+ | disable-axfr=no | ||
+ | cache-ttl=300 | ||
+ | launch=gmysql | ||
+ | logging-facility=0 | ||
+ | out-of-zone-additional-processing=yes | ||
+ | query-cache-ttl=300 | ||
+ | recursive-cache-ttl=150 | ||
+ | recursor=127.0.0.1: | ||
+ | </ | ||
+ | |||
+ | Ces paramètres sont à adapter suivant votre cas. | ||
+ | |||
+ | === Le recurseur === | ||
+ | |||
+ | < | ||
+ | allow-from=127.0.0.1 | ||
+ | local-address=127.0.0.1 | ||
+ | local-port=54 | ||
+ | logging-facility=1 | ||
+ | </ | ||
+ | |||
+ | === Les backends === | ||
+ | |||
+ | == Mysql == | ||
+ | |||
+ | Si vous utilisez mysql, vous devez avoir un serveur [[:mysql]] fonctionnel et ajouter les paramètres dans ''/ | ||
+ | |||
+ | < | ||
+ | launch=gmysql | ||
+ | gmysql-host=localhost | ||
+ | gmysql-user=powerdns | ||
+ | gmysql-password=############## | ||
+ | gmysql-dbname=powerdns | ||
+ | </ | ||
+ | |||
+ | Adaptez vos paramètres à ceux de votre base de données. | ||
+ | |||
+ | <note warning> | ||
+ | |||
+ | == Ldap == | ||
+ | FIXME | ||
+ | == Postgresql == | ||
+ | FIXME | ||
+ | === Interfaces web === | ||
+ | |||
+ | Il existe de nombreuses interfaces web pour PowerDNS : | ||
+ | [[http:// | ||
+ | |||
+ | Une liste non-exhaustive est disponible ici : | ||
+ | [[http:// | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | Vous pouvez mettre en place une restriction d' | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | Order allow,deny | ||
+ | Deny from all | ||
+ | Allow from 192.168.0.0/ | ||
+ | Allow from .*22decembre\.eu.* | ||
+ | Allow from 2a01: | ||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | Ici, 192.168.0.0/ | ||
+ | </ | ||
+ | |||
+ | === Enregistrements === | ||
+ | |||
+ | Les **enregistrements**, | ||
+ | |||
+ | === Vérification de la configuration === | ||
+ | |||
+ | Pour vérifier le fonctionnement de notre serveur DNS, nous allons lui adresser des requêtes directement via l' | ||
+ | |||
+ | <note tip> | ||
+ | |||
+ | On doit lui indiquer le serveur DNS à vérifier via le mot clé '' | ||
+ | |||
+ | **Voici la petite session de test que j'ai fait chez moi** : | ||
+ | |||
+ | On commence par dire à nslookup quel serveur il doit interroger : | ||
+ | < | ||
+ | nslookup | ||
+ | > server 127.0.0.1 | ||
+ | Default server: 127.0.0.1 | ||
+ | Address: 127.0.0.1# | ||
+ | </ | ||
+ | Puis on l' | ||
+ | < | ||
+ | > mail2.bureau.lan | ||
+ | Server: | ||
+ | Address: | ||
+ | |||
+ | Name: | ||
+ | Address: 192.168.251.202 | ||
+ | > 192.168.251.201 | ||
+ | Server: | ||
+ | Address: | ||
+ | |||
+ | 201.251.168.192.in-addr.arpa | ||
+ | > set q=mx | ||
+ | > bureau.lan | ||
+ | Server: | ||
+ | Address: | ||
+ | bureau.lan | ||
+ | > exit | ||
+ | </ | ||
+ | |||
+ | Si tout se déroule normalement, | ||
+ | |||
+ | |||
+ | ==== Erreurs possibles ==== | ||
+ | |||
+ | FIXME | ||
+ | ===== Configuration des clients ===== | ||
+ | |||
+ | <note tip>Ces méthodes de configuration, | ||
+ | |||
+ | La configuration de la résolution de nom pour les machines Linux se fait dans le fichier ''/ | ||
+ | |||
+ | < | ||
+ | search bureau.lan | ||
+ | </ | ||
+ | |||
+ | Et ensuite, les adresses de vos serveurs de noms (primaire interne, autres internes, puis ceux de votre fournisseur d' | ||
+ | |||
+ | < | ||
+ | nameserver 192.168.251.202 | ||
+ | </ | ||
+ | |||
+ | L' | ||
+ | |||
+ | < | ||
+ | search bureau.lan | ||
+ | nameserver 192.168.251.202 | ||
+ | nameserver 192.168.251.212 | ||
+ | nameserver 193.121.171.135 | ||
+ | nameserver 193.74.208.65 | ||
+ | </ | ||
+ | |||
+ | Linux va essayer de résoudre un nom de la manière suivante (si une étape ne fonctionne pas, il essaye la suivante) : | ||
+ | * recherche du serveur de nom de '' | ||
+ | * interrogation du serveur DNS '' | ||
+ | * interrogation du serveur DNS '' | ||
+ | * interrogation du serveur DNS '' | ||
+ | * interrogation du serveur DNS '' | ||
+ | |||
+ | ==== Configuration DHCP équivalente ==== | ||
+ | |||
+ | Si le fichier / | ||
+ | |||
+ | < | ||
+ | prepend domain-name-servers 192.168.251.202, | ||
+ | append domain-name " | ||
+ | </ | ||
+ | |||
+ | ==== Configuration des clients Windows ==== | ||
+ | Sans entrer dans les détails (ce n'est pas le but du site), il vous suffit d' | ||
+ | ===== Voir aussi ===== | ||
+ | |||
+ | Site web : [[http:// | ||
+ | Documentation officielle : [[http:// | ||
+ | |||
+ | Cet article est inspiré, au moins partiellement, | ||
+ | [[http:// | ||
+ | [[http:// | ||
+ | ---- | ||
+ | |||
+ | // |