Outils pour utilisateurs

Outils du site


dns

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
dns [2020/03/24 12:56]
luc
dns [2023/11/30 17:33] (Version actuelle)
luc [Installation et configuration Authoritative server : ''pdns-server'']
Ligne 9: Ligne 9:
 Il existe les serveur de type Authoritative, c'est à dire qu'ils ont l'autorité pour répondre sur un domaine défini, et les serveurs Recursive dont le rôle est de retransmettre à d'autres serveurs les requêtes. Il existe les serveur de type Authoritative, c'est à dire qu'ils ont l'autorité pour répondre sur un domaine défini, et les serveurs Recursive dont le rôle est de retransmettre à d'autres serveurs les requêtes.
  
-{{:wiki:authoritative-server.png?400|Authoritave-server}} {{:wiki:recursive-server.png?400|Recursive-server}}+{{:wiki:authoritative-server.png?450|Authoritave-server }} {{:wiki:recursive-server.png?450|Recursive-server}}
  
 ===== Et PowerDNS dans tout ça ? ===== ===== Et PowerDNS dans tout ça ? =====
Ligne 25: Ligne 25:
 Un peu comme expliqué [[https://doc.powerdns.com/authoritative/guides/recursion.html#scenario-1-authoritative-server-as-recursor-with-private-zones|ici]]. Un peu comme expliqué [[https://doc.powerdns.com/authoritative/guides/recursion.html#scenario-1-authoritative-server-as-recursor-with-private-zones|ici]].
  
-{{:wiki:dns-scenario.png?400|scenario}}+{{:wiki:dns-scenario.png?800|scenario}}
  
  
 +==== Installation et configuration Authoritative server : ''pdns-server'' =====
 +
 +Dispo dans les paquets debian ''apt install pdns-server pdns-backend-sqlite3''
 +
 +On édite le fichier de conf, étant donné la taille réduite, on va utiliser le backend sqlite3 (parce que le BIND de base ne marche pas chez moi, pkoi ?)
 +
 +''vim /etc/powerdns/pdns.conf''
 +<code>
 +# ne répondre qu'aux requêtes locales et sur un port custom :
 +local-address=127.0.0.1
 +local-port=5300
 +
 +launch=gsqlite3
 +gsqlite3-database=/etc/powerdns/powerdns.sqlite3
 +</code>
 +
 +Ensuite, on initialise la database :
 +<code bash>
 +sqlite3 /etc/powerdns/powerdns.sqlite3 < /usr/share/doc/pdns-backend-sqlite3/schema.sqlite3.sql
 +</code>
 +
 +>> NOTE : sur certaines machines, par exemple Alpine Linux, il convient que le dossier contenant la bdd sqlite soit accessible en écriture par le uid du serveur pdns. En conséquence, il peut être nécessaire de placer le fichier dans un dossier spécifique, par exemple ''/var/lib/pdns/'' et rendre ce dossier en rw à l'user pdns via un ''chown'' par exemple
 +==== Ajouter les entrées dns des ressources locales : ''pdnsutil'' ====
 +
 +On va maintenant ajouter des entrées dns correspondant à des ressources locales [[https://blog.powerdns.com/2016/02/02/powerdns-authoritative-the-new-old-way-to-manage-domains/|source]]:
 +
 +<code bash>
 +# On commence par créer une zone dns, c'est à dire un espace pour lequel ce serveur aura autorité 
 +pdnsutil create-zone example.com
 +
 +# Ensuite, on ajoute les entrées une à une
 +pdnsutil add-record example.com serveur1 A 192.168.1.2
 +
 +# Pour vérifier ce qui est enregistré, on a 2 commandes :
 +pdnsutil list-all-zones
 +pdnsutil list-zone example.com
 +</code>
 +
 +Les gens recommandent d'avoir un nom de domaine à soi, comme ça on est sur qu'il n'y a pas de conflit avec les recherches sur internet, notamment quand on est plus dans le LAN.\\
 +Sinon, on peut utiliser ''.local'' ou ''.lan''.\\
 +Problème avec ''.local'', c'est utilisé par un autre système de résolution de noms sans serveur, [[https://en.wikipedia.org/wiki/.local|mdns]].
 +
 +Pour valider toute la config, ne pas oublier de relancer le serveur ''systemctl restart pdns.service''
 +
 +==== Installer et configurer le serveur recursif : ''pdns-recursor'' ====
 +
 +Ce sera lui en interface principale, il utilisera donc le port dédié 53.\\
 +Sur la même machine, installer le paquet ''apt install pdns-recursor''\\
 +Editer le fichier de conf ''vim /etc/powerdns/recursor.conf''
 +
 +<code>
 +# pour autoriser tout le monde à faire des requêtes (je sais, c'est pas secure mais on est dans un LAN inaccessible depuis l'extérieur)
 +local-address=0.0.0.0
 +local-port=53
 +
 +# rediriger vers notre serveur Authoritative pour nos ressources locales, il faut renseigner l'espace défini précédemment
 +forward-zones=example.com=127.0.0.1:5300, autreexemple.com=127.0.0.1:5300
 +
 +# rediriger toutes les autres requetes vers un autre serveur recursif (la box par exemple)
 +forward-zones-recurse=.=192.168.0.1
 +</code>
 +
 +Ne pas oublier de redémarrer le service pour prendre en compte la config ''systemctl restart pdns-recursor''
 +
 +Et voilà =)
 +
 +==== Config des clients ====
 +
 +Il y a 2 choses à configurer :
 +  * le serveur DNS : diriger vers cette machine
 +  * la gateway : renseigner l'ip du routeur/box
dns.1585054597.txt.gz · Dernière modification: 2020/03/24 12:56 de luc