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

Prochaine révision
Révision précédente
Dernière révision Les deux révisions suivantes
dns [2020/03/24 12:34]
luc créée
dns [2023/09/20 06:12]
luc
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?450|Authoritave-server }} {{:wiki:recursive-server.png?450|Recursive-server}}
  
 ===== Et PowerDNS dans tout ça ? ===== ===== Et PowerDNS dans tout ça ? =====
  
-PowerDNS est une suite logicielle comprenant entre autres pdns-server qui +PowerDNS est une suite logicielle comprenant entre autres 
 +  * ''pdns-server'' qui est un serveur authoritative 
 +  * ''pdns-recursor'' qui est un serveur recursif 
 +  * ''pdnsutil'' un utilitaire en cli pour configurer ''pdns-server'' 
 + 
 +''pdns-server'' et ''pdns-recursor'' peuvent fonctionner en même temps sur une même machine pour servir un domaine privé et adresser le grand internet. 
 + 
 +===== Config mise en place ===== 
 + 
 +Nous allons mettre en place une config pour un lan, avec des ressources locales (non-accessibles depuis internet), et en donnant un accès internet. 
 +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?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> 
 + 
 +==== 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.txt · Dernière modification: 2023/11/30 17:33 de luc