Linux Master 1 Cybersécurité Séance 10 19 février 2019 Plan de la séance Reprise pour les nouveaux • Contrôle des devoirs de maison • DNS • Résolution directe • Résolution inverse • Serveur secondaire 2 DNS → Principes • Nom_de_machine <==> adresse_IP • Nom de machine facile à retenir pour les humains • Adresse IP utilisée par les machines • Le fichier hosts était téléchargé à intervalles réguliers • Zones DNS : chaque niveau d'une hiérarchie • Domaine : chaque arborescence • Illustration du mécanisme de résolution : m1.lcit.edge.sn • Enregistrements : A (address), CNAME (alias), MX (Mail Exchange), NS (Name Server) 3 DNS → Configuration de base 1/x • Serveur BIND9 : # apt-get install bind9 • Fichiers : • /etc/bind/named.conf • /etc/bind/named.conf.options • /etc/bind/named.conf.local 4 DNS → Configuration de base 2/x RESOLUTION DIRECTE • Configuration d'un serveur maître • Editer, en tant que root, le fichier named.conf.local pour y inclure la zone zone "edge.sn" IN { type master; file "/etc/bind/db.edge.sn"; }; 5 DNS → Configuration de base 3/x RESOLUTION DIRECTE • Configuration d'un serveur maître • Copier un fichier de zone local : # cp /etc/bind/db.local /etc/bind/db.edge.sn • Editer le fichier db.edge.sn @ IN ; @ ns lcit iss IN IN IN IN SOA ns.edge.sn. admin.edge.sn. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL NS ns.edge.sn. A 192.168.1.22 A 192.168.1.10 CNAME lcit.edge.sn. 6 DNS → Configuration de base 4/x RESOLUTION DIRECTE • Redémarrer le serveur BIND : # service bind9 restart • Vérifier que le redémarrage s'est bien effectué $ tail /var/log/syslog ou # service bind9 status • Editer, sur le client, le fichier /etc/resolv.conf pour inclure l'adresse IP du serveur DNS 7 DNS → Configuration de base 5/x RESOLUTION DIRECTE Tester (sur le client) : $ nslookup > set type=any > edge.sn > iss.edge.sn > lcit.edge.sn $ dig [@IP_SERVEUR_DNS] nom_de_domaine $ dig @192.168.1.22 iss.edge.sn $ dig lcit.edge.sn 8 DNS → Configuration de base 6/x RESOLUTION INVERSE • Configuration d'un serveur maître • Editer en tant que root le fichier named.conf.local pour y inclure la zone zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/db.192.168.1"; }; 9 DNS → Configuration de base 7/x RESOLUTION INVERSE • Configuration d'un serveur maître • Copier un fichier de zone local : # sudo cp /etc/bind/db.127 /etc/bind/db.192.168.1 • Editer le fichier db.192.168.1 @ IN SOA ns.edge.sn. admin.edge.sn. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ 22 10 IN IN IN NS ns.edge.sn. PTR ns.edge.sn. PTR lcit.edge.sn. 10 DNS → Configuration de base 8/x RESOLUTION INVERSE • Redémarrer le serveur BIND : # service bind9 restart • Vérifier que le redémarrage s'est bien effectué $ tail /var/log/syslog ou # service bind9 status 11 DNS → Configuration de base 9/x RESOLUTION INVERSE Tester (sur le client) : $ nslookup > set type=any > 192.168.1.10 $ dig -x 192.168.1.10 12 DNS → Serveur secondaire (esclave) • Eviter les pannes de résolution en cas de d'indisponibilité du serveur principal • Les zones "esclaves" sont identiques au zones du serveur maître • Les zones "esclaves" sont synchronisées, à intervalle régulier, avec les zones du serveur maître 13 DNS → Serveur secondaire (esclave) • Editer, sur le serveur principal, le fichier named.conf.local pour les zones (directe et/ou inverse) à exporter : zone "edge.sn" IN { type master; notify yes; file "/etc/bind/db.edge.sn"; }; • Exercice : exportez la zone inverse 14 DNS → Serveur secondaire (esclave) Ajouter, sur le serveur principal, un enregistrement NS et un enregistrement A (et/ou PTR pour la zone inverse) pour le serveur secondaire (ici ns2), dans le fichier de chaque zone à exporter : Zone directe : db.edge.sn @ IN NS ns2.edge.sn. ns2 IN A 192.168.1.23 Zone inverse : db.192.168.1 @ IN NS ns2.edge.sn. 23 IN PTR ns2.edge.sn. 15 DNS → Serveur secondaire (esclave) • Editer, sur le serveur principal, le fichier named.conf.options pour autoriser le serveur principal à tranférer des données vers le serveur secondaire allow-transfer { 192.168.1.23; }; • Redémarrer le serveur principal et vérifier qu'il a bien démarré 16 DNS → Serveur secondaire (esclave) • Installer BIND sur un deuxième serveur, le serveur esclave # apt-get install bind9 17 DNS → Serveur secondaire (esclave) • Editer, sur le serveur esclave, le fichier named.conf.local pour y inclure les zones transférées zone "edge.sn" IN { type slave; file "/etc/bind/db.edge.sn"; masters { 192.168.1.22; }; }; zone "1.168.192.in-addr.arpa" IN { type slave; file "/etc/bind/db.192.168.1"; masters { 192.168.1.22; }; }; 18 DNS → Serveur secondaire (esclave) • Redémarrer le serveur secondaire et vérifier qu'il a bien redémarré Tests • dig @192.168.1.23 iss.edge.sn • dig @192.168.1.23 lcit.edge.sn • dig @192.168.1.23 -x 192.168.1.10 NB : remplacer 192.168.1.23 par l'adresse de votre serveur secondaire 19 Devoir de maison noté 1/2 • DNS • Configurer un serveur DNS pour la zone lcit.com • • • • toto.lcit.com 192.168.1.200 tata.lcit.com 192.168.1.201 titi.lcit.com comme alias de toto.lcit.com NB : • il faut configurer la résolution directe et la résolution inverse • le serveur DNS faisant autorité : name.lcit.com 21 Devoir de maison noté 2/2 DNS Secondaire •Configurez le s er veu r DNS s ec o n d a i r e votre-prenom.lcit.com NB : Au besoin cloner la machine virtuelle 22