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
configuration_serveur_dns_pour_son_poste_de_travail [Le 24/08/2021, 15:05]
sefran Installation de dnsmasq
configuration_serveur_dns_pour_son_poste_de_travail [Le 10/05/2023, 11:47] (Version actuelle)
sefran Ajout fin de ligne
Ligne 67: Ligne 67:
 Éditer /​etc/​dhcp/​dhclient.conf Éditer /​etc/​dhcp/​dhclient.conf
 <​file>​ <​file>​
-prepend domaine-perso.fr 10.10.10.1 fd00::+prepend domaine-perso.fr 10.10.10.1 fd00::;
 </​file>​ </​file>​
  
Ligne 89: Ligne 89:
 </​code>​ </​code>​
  
-===== Configuration de Dnsmasq =====+===== Configuration ​serveur DNS de Dnsmasq ===== 
 +Éditer /​etc/​dnsmasq.conf 
 +<​file>​ 
 +# Ne transmet pas les requêtes ne contenant pas un nom de domaine complet 
 +domain-needed 
 +# "no such domain"​ pour des adresses IP privées non référencées dans dnsmasq 
 +bogus-priv 
 +# Corrige du spam DNS Microsoft 
 +filterwin2k 
 +# Formate les requêtes DNS suivant l’interface réseau utilisée 
 +localise-queries 
 + 
 +# Domaine dns local 
 +local = /​domaine-perso.fr/​ 
 +# Interfaces DNS 
 +interface = virtualeth0 
 +exept-interface = lo 
 +exept-interface = enp0sxx 
 +exept-interface = wlx803xxxxx 
 +exept-interface = wlox 
 +# Adresses écoutées 
 +listen-address = 127.0.0.1 
 +listen-address = 10.10.10.1 
 +listen-address = fd00:: 
 +# Toutes les interfaces réseau sont en mode serveur DNS c’est ce qui permet de démarrer le serveur DNS 
 +bind-interfaces 
 +# Ajoute le nom de domaine DNS aux entrées /​etc/​hosts 
 +expand-hosts 
 +# Non de domaine pour extensions "​expand-hosts"​ 
 +domain=domaine-perso.fr 
 +# Taille du cache DNS 
 +cache-size = 1000 
 +# Désactive le "cache négatif"​ sur réponses "no such domain"​ 
 +no-negcache 
 +</​file>​ 
 + 
 +Ajout du server DNS local à la liste des serveurs DNS de systemd-resolved. 
 +Éditer /​etc/​systemd/​resolved.conf 
 +<​file>​ 
 +DNS=10.10.10.1 fd00:: 
 +</​file>​ 
 + 
 +===== Relance de Dnsmasq ===== 
 +<code bash> 
 +$ systemctl restart dnsmasq.service 
 +$ systemctl enable dnsmasq.service 
 +$ systemctl restart systemd-resolved.service 
 +$ nmcli general reload 
 +</​code>​ 
 + 
 +===== Ouvrir avec le pare feu les ports DNS pour les rendre accessibles depuis le réseau lan ===== 
 +Ouvrir le port DNS sur l'​interface d'ip xxx.xxx.xxx.xxx avec UFW. Si UFW est activé, ouvrez le port DNS 53, UDP. 
 +<code bash> 
 +$ sudo ufw allow from xxx.xxx.0.0/​16 to any port 53 proto udp 
 +</​code>​ 
 + 
 +===== Tests du serveur DNS ===== 
 +Vérifier que le port 53 est utilisé par Dnsmasq 
 +<code bash> 
 +$ sudo lsof -i:53 
 +COMMAND ​    ​PID ​           USER   ​FD ​  TYPE DEVICE SIZE/OFF NODE NAME 
 +systemd-r 53916 systemd-resolve ​  ​12u ​ IPv4  99537      0t0  UDP localhost:​domain 
 +systemd-r 53916 systemd-resolve ​  ​13u ​ IPv4  99538      0t0  TCP localhost:​domain (LISTEN) 
 +dnsmasq ​  ​53732 ​        ​dnsmasq ​   4u  IPv4  95141      0t0  UDP MachineUbuntu:​domain 
 +dnsmasq ​  ​53732 ​        ​dnsmasq ​   5u  IPv4  95142      0t0  TCP MachineUbuntu:​domain (LISTEN) 
 +dnsmasq ​  ​53732 ​        ​dnsmasq ​   6u  IPv4  95151      0t0  UDP localhost:​domain 
 +dnsmasq ​  ​53732 ​        ​dnsmasq ​   7u  IPv4  95152      0t0  TCP localhost:​domain (LISTEN) 
 +dnsmasq ​  ​53732 ​        ​dnsmasq ​   8u  IPv6  95153      0t0  UDP MachineUbuntu:​domain 
 +dnsmasq ​  ​53732 ​        ​dnsmasq ​   9u  IPv6  95154      0t0  TCP MachineUbuntu:​domain (LISTEN) 
 +dnsmasq ​  ​53732 ​        ​dnsmasq ​  ​10u ​ IPv6  95155      0t0  UDP MachineUbuntu:​domain 
 +dnsmasq ​  ​53732 ​        ​dnsmasq ​  ​11u ​ IPv6  95156      0t0  TCP MachineUbuntu:​domain (LISTEN) 
 +</​code>​ 
 + 
 +Vérifier que Dnsmasq écoute les requettes DNS sur les bonnes interfaces 
 +<code bash> 
 +$ sudo netstat -alnp | grep -i :53 
 +tcp        0      0 127.0.0.53:​53 ​          ​0.0.0.0:​* ​              ​LISTEN ​     53916/​systemd-resol 
 +tcp        0      0 127.0.0.1:​53 ​           0.0.0.0:​* ​              ​LISTEN ​     53732/​dnsmasq 
 +tcp        0      0 10.10.10.1:​53 ​          ​0.0.0.0:​* ​              ​LISTEN ​     53732/​dnsmasq 
 +tcp6       ​0 ​     0 fd00:::​53 ​              :::​* ​                   LISTEN ​     53732/​dnsmasq 
 +tcp6       ​0 ​     0 fe80::​b817:​faff:​fe21:​53 :::*                    LISTEN ​     53732/​dnsmasq 
 +udp        0      0 127.0.0.53:​53 ​          ​0.0.0.0:​* ​                          ​53916/​systemd-resol 
 +udp        0      0 127.0.0.1:​53 ​           0.0.0.0:​* ​                          ​53732/​dnsmasq 
 +udp        0      0 10.10.10.1:​53 ​          ​0.0.0.0:​* ​                          ​53732/​dnsmasq 
 +udp        0      0 0.0.0.0:​5353 ​           0.0.0.0:​* ​                          ​772/​avahi-daemon:​ r 
 +udp6       ​0 ​     0 fd00:::​53 ​              :::​* ​                               53732/​dnsmasq 
 +udp6       ​0 ​     0 fe80::​b817:​faff:​fe21:​53 :::*                                53732/​dnsmasq 
 +udp6       ​0 ​     0 :::​5353 ​                :::​* ​                               772/​avahi-daemon:​ r 
 +</​code>​ 
 + 
 +Vérifier que le poste de travail écoute les résolution DNS de Dnsmasq 
 +<code bash> 
 +$ resolvectl dns 
 +Global: 10.10.10.1 fd00:: 
 +Link 2 (enp0sxx): yyyy:​yyyy:​yyyy::​yyyy yyy.yyy.yyy.yyy 
 +Link 3 (virtualeth0):​ 
 +Link 4 (wlx803xxxxx):​ yyyy:​yyyy:​yyyy::​yyyy yyyy:​yyyy:​yyyy::​yyyy yyyy:​yyyy:​yyyy::​yyyy yyy.yyy.yyy.yyy 
 +Link 5 (wlox): yyy.yyy.yyy.yyy 
 +</​code>​ 
 + 
 +Vérifier la résolution DNS 
 +<code bash> 
 +$ dig MachineUbuntu +noall +answer 
 +MachineUbuntu. ​                 0       ​IN ​     A       ​127.0.1.1 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig MachineUbuntu.domaine-perso.fr +noall +answer 
 +MachineUbuntu.domaine-perso.fr. 0       ​IN ​     A       ​127.0.1.1 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig bidon.domaine-perso.fr +noall +answer 
 + 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig bidon +noall +answer 
 + 
 +</​code>​ 
 + 
 +Éditer /etc/hosts pour définir les alias DNS 
 +<​file>​ 
 +127.0.0.1 localhost 
 +127.0.1.1 MachineUbuntu 
 +… 
 +# Alias DNS 
 +10.10.10.5 courriel 
 +10.10.10.10 serveur 
 +10.10.10.20 documentation 
 +</​file>​ 
 + 
 +Vérifier la résolution DNS ([[configuration_serveur_dns_pour_son_poste_de_travail#​relance_de_dnsmasq|relancer Dnsmasq si nécessaire]]) 
 +<code bash> 
 +$ dig courriel.domaine-perso.fr +noall +answer 
 +courriel.domaine-perso.fr. 0     ​IN ​    ​A ​    ​10.10.10.5 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig courriel +noall +answer 
 +courriel. ​                 0     ​IN ​    ​A ​    ​10.10.10.5 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig serveur.domaine-perso.fr +noall +answer 
 +serveur.domaine-perso.fr. 0     ​IN ​    ​A ​    ​10.10.10.10 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig serveur +noall +answer 
 +serveur. ​                 0     ​IN ​    ​A ​    ​10.10.10.10 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig documentation.domaine-perso.fr +noall +answer 
 +documentation.domaine-perso.fr. 0     ​IN ​    ​A ​    ​10.10.10.20 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig documentation +noall +answer 
 +documentation. ​                 0     ​IN ​    ​A ​    ​10.10.10.20 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig bidon.domaine-perso.fr +noall +answer 
 + 
 +</​code>​ 
 + 
 +<code bash> 
 +$ dig bidon +noall +answer 
 + 
 +</​code>​ 
 + 
 +Résolution DNS externe :​ 
 +<code bash> 
 +$ dig google.com +noall +answer 
 +google.com. ​             16    IN     ​A ​    ​216.58.223.110 
 +</​code>​
  
  • configuration_serveur_dns_pour_son_poste_de_travail.1629810316.txt.gz
  • Dernière modification: Le 24/08/2021, 15:05
  • par sefran