abonnel-siteweb/data/pages/informatique/divers/installer-configurer-dns-ca...

287 lines
7.4 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

====== Cache DNS : installer et configurer ======
OS testé : **Fedora 24**\\
Date de test : **12 novembre 2016**
===== Installer ''bind'' =====
Lancer l'installation de ''bind'' et ''bind-utils'' en utilisant le programme ''dnf''.
''bind-utils'' inclus les programmes ''nslookup'', ''dig'' and ''host''.
<code bash>
sudo dnf install bind bind-utils
</code>
Le résultat est le suivant :
<code>
Vérification de l'expiration des métadonnées effectuée il y a 1:07:23 sur Fri Nov 11 20:10:48 2016.
Le paquet bind-utils-32:9.10.4-2.P3.fc24.x86_64 est déjà installé, ignorer
Dépendances résolues.
====================================================================================================
Package Architecture Version Dépôt Taille
====================================================================================================
Installation de:
bind x86_64 32:9.10.4-2.P3.fc24 updates 1.9 M
Résumé de la transaction
====================================================================================================
Installation 1 Paquet
Taille totale des téléchargements : 1.9 M
Taille d'installation : 4.0 M
Est-ce correct [o/N] : o
Téléchargement des paquets :
bind-9.10.4-2.P3.fc24.x86_64.rpm 555 kB/s | 1.9 MB 00:03
----------------------------------------------------------------------------------------------------
Total 382 kB/s | 1.9 MB 00:05
Test de la transaction en cours
La vérification de la transaction a réussi.
Lancement de la transaction de test
Transaction de test réussie.
Exécution de la transaction
Installation de : bind-32:9.10.4-2.P3.fc24.x86_64 1/1
Vérification : bind-32:9.10.4-2.P3.fc24.x86_64 1/1
Installé:
bind.x86_64 32:9.10.4-2.P3.fc24
Terminé !
</code>
Les programmes ''bind'' et ''bind-utils'' sont installés.
===== Editer ''named.conf'' =====
**1.** Modifier le fichier de configuration ''/etc/named.conf''
<code bash>
sudo vim /etc/named.conf
</code>
**2.** Remplacer la ligne suivante (~11)
<code ini>
listen-on port 53 { 127.0.0.1; };
</code>
par le bloc suivant
<code ini>
listen-on port 53 { goodclients; };
allow-query { goodclients; };
allow-query-cache { goodclients; };
recursion yes;
</code>
**3.** Supprimer la ligne suivante
<code ini>
allow-query { localhost;};
</code>
Voilà a quoi pourrait correspondre le fichier de configuration ''named.conf''
<code ini>
acl goodclients {
192.168.100.0/24;
127.0.0.1;
localhost;
};
options {
listen-on port 53 { goodclients; };
allow-query { goodclients; };
allow-query-cache { goodclients; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
</code>
===== Redémarrer le service ''named'' =====
<code bash>
systemctl restart named
</code>
# systemctl enable named
# systemctl status named
===== Modifier le paramétrage DNS =====
<code bash>
sudo vim /etc/resolv.conf
</code>
<code ini>
nameserver 127.0.0.1
</code>
===== Tester l'interrogation DNS =====
Executer le code suivant
<code bash>
dig google.com
</code>
<code>
; <<>> DiG 9.10.4-P3-RedHat-9.10.4-2.P3.fc24 <<>> google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15768
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 5
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;google.com. IN A
;; ANSWER SECTION:
google.com. 300 IN A 172.217.18.238
;; AUTHORITY SECTION:
google.com. 171791 IN NS ns1.google.com.
google.com. 171791 IN NS ns2.google.com.
google.com. 171791 IN NS ns4.google.com.
google.com. 171791 IN NS ns3.google.com.
;; ADDITIONAL SECTION:
ns2.google.com. 171791 IN A 216.239.34.10
ns1.google.com. 171791 IN A 216.239.32.10
ns3.google.com. 171791 IN A 216.239.36.10
ns4.google.com. 171791 IN A 216.239.38.10
;; Query time: 116 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: ven. nov. 11 21:47:14 CET 2016
;; MSG SIZE rcvd: 191
</code>
<code>
; <<>> DiG 9.10.4-P3-RedHat-9.10.4-2.P3.fc24 <<>> google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64308
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 5
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;google.com. IN A
;; ANSWER SECTION:
google.com. 248 IN A 172.217.18.238
;; AUTHORITY SECTION:
google.com. 171739 IN NS ns4.google.com.
google.com. 171739 IN NS ns3.google.com.
google.com. 171739 IN NS ns1.google.com.
google.com. 171739 IN NS ns2.google.com.
;; ADDITIONAL SECTION:
ns2.google.com. 171739 IN A 216.239.34.10
ns1.google.com. 171739 IN A 216.239.32.10
ns3.google.com. 171739 IN A 216.239.36.10
ns4.google.com. 171739 IN A 216.239.38.10
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: ven. nov. 11 21:48:06 CET 2016
;; MSG SIZE rcvd: 191
</code>
===== Activer le service au démarrage de l'OS =====
**1.** Vérifier le status
<code bash>
systemctl list-unit-files|grep named
</code>
Résultat
<code bash>
named-setup-rndc.service static
named.service disabled
systemd-hostnamed.service static
</code>
**2.** Activer le démarrage du service
<code bash>
sudo systemctl enable named
</code>
Résultat
<code bash>
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.
</code>
**3.** Vérifier
<code bash>
systemctl list-unit-files|grep named
</code>
<code bash>
named-setup-rndc.service static
named.service enabled
systemd-hostnamed.service static
</code>
===== Modifier le parefeu =====
**1.** Activer le port
Si vous voulez utiliser le cache mis en place par d'autres machines du réseau, il sera nécessaire de lever les restrictions du parefeu.
<code>
sudo iptables -A INPUT -p tcp -m tcp --dport 53 -m conntrack --ctstate NEW -j ACCEPT
sudo service iptables save
</code>
**2.** Vérifier les règles mises en place
<code bash>
sudo iptables -L|grep domain
</code>
Résultat
<code bash>
ACCEPT tcp -- anywhere anywhere tcp dpt:domain ctstate NEW
</code>
**3.** Vérifier l'accessbilité depuis un autre poste
Depuis un autre poste, effectuer une commande **nmap** sur l'adresse du serveur (192.168.100.1 dans notre cas).
<code bash>
nmap -v 192.168.100.1
</code>
Résultat
<code bash>
Starting Nmap 7.12 ( https://nmap.org ) at 2016-11-12 09:49 CET
Initiating Ping Scan at 09:49
Scanning 192.168.100.1 [2 ports]
Completed Ping Scan at 09:49, 0.00s elapsed (1 total hosts)
Initiating Connect Scan at 09:49
Scanning srv-prod (192.168.100.1) [1000 ports]
Discovered open port 53/tcp on 192.168.100.1
Completed Connect Scan at 09:49, 0.04s elapsed (1000 total ports)
Nmap scan report for srv-prod (192.168.100.1)
Host is up (0.00025s latency).
Not shown: 999 closed ports
PORT STATE SERVICE
53/tcp open domain
</code>