Administration Réseaux sous Linux
Brice ONDJIBOU
Administrateur Systèmes & Réseaux Linux
Pentester web et Réseaux
1
Administration Réseau
Administrateur Réseau: rôle
Assurer le fonctionnement optimal et la maintenance quotidienne des systèmes
informatiques de l’entreprise.
Veiller à la sécurité des installations de l’entreprise.
Faire évoluer les systèmes et services associés de l’entreprise.
Produire la documentation réseau.
Contribuer à la documentation partagée et au développement de la base de
connaissance techniques.
Dispenser des formations courtes.
Se tenir informé des nouveautés et des évolutions.
2
Paramétrage réseau d’un système
Deux types Paramétrages:
Dynamique: [Link] et interfaces
Statique: [Link], interfaces, hosts, [Link], …
3
Adressage Réseau
Attribuer une IP à eth1 : # ip addr add [Link] dev eth0
Vérifier une adresse IP: # ip addr show ou # ip a
Supprimer une IP: # ip addr del [Link]/24 dev eth0
Activer l'interface réseau: #ip link set eth0 up
Désactiver l'interface réseau: # ip link set eth1 down
4
Adressage Réseau
Table de routage:
# ip route show
Ajouter une route statique:
# ip route add [Link]/24 via [Link] dev eth0
Supprimer une route statique:
# ip route del [Link]/24
Ajouter une passerelle par défaut:
# ip route add default via [Link]
5
Domain Name System
Service de nom de domaine: service Internet.
Le DNS:
établit la correspondance entre les adresses IP et noms;
Aiguillage de mail.
Les Linux sont fournis avec BIND. C’est le programme le plus couramment utilisé
pour gérer un serveur de nom sur Linux.
6
Un nom de domaine
Adresse que va saisir un internaute pour accéder à un site internet :
[Link]: est un nom de domaine;
[Link]: est un nom de domaine.
Un nom de domaine est un nom facile à retenir permettant de faire le lien avec
une adresse IP.
Chaque machine connectée à internet possède une adresse IP.
7
Les différentes parties d'un nom de domaine
Un nom, qui représente la “première” partie d'un nom de domaine, par exemple
uob;
Et d'un suffixe, aussi appelé extension ou TLD, par exemple .GA;
Les deux forment un nom de domaine : [Link].
8
système hiérarchique
9
Fonctionnement
10
Fonctionnement
11
Fonctionnement
Lorsque l’on fait une requête DNS depuis un navigateur, exemple : [Link], le
browser va d’abord faire une recherche dans son propre cache. En effet, le browser a
2 caches : static et un cache dns.
Si le browser ne trouve pas adresse IP correspondant à [Link] (ni dans son
cache static, ni dans son cache DNS), la question va être posé au système
d’exploitation.
Dans le cas de Windows, pour voir information dns : msdos> ipconfig /displaydns
12
Fonctionnement
Si l’OS ne trouve pas de correspondance, dans son cache, la requête va être envoyé
vers le serveur dns du réseau. Si ce dernier ne trouve toujours pas la correspondance,
notre serveur dns va envoyer la requête vers un des 13 serveurs racine.
13
Serveurs racine
Serveurs racine sont nommés comme suit :
[Link]
[Link]
[Link]
[Link]
[Link]
[Link]
…..etc
[Link]
14
Fonctionnement du dns
Le serveur racine contacté va nous rediriger vers les serveurs qui ont autorité sur le domaine
de premier niveau : .fr
Le serveur dns qui a autorité sur fr va envoyer la réponse à notre serveur dns local (il enverra
la correspondance [Link] ---[Link]).
Notre serveur enregistre la correspondance dans son cache, puis envoie le résultat à notre OS
qui va aussi réenregistrer la correspondance dans son cache.
La requête est enfin envoyée vers notre browser.
15
Fonctionnement du dns: DNS PREFETCH
Dans le browser, il y a ce que on appelle DNS PREFETCH. Il permet au dns de faire les
recherches des correspondances de tous les liens des pages présent dans la réponse
dns précédemment effectuée.
En effet, lorsque nous sommes sur une page, le navigateur va déjà lancer en
background les requêtes dns de tous les liens présents sur la page active : cette
anticipation des requêtes dns va accélérer les futures requêtes sur cette page
16
Mise en œuvre du fonctionnement du dns
Pour voir comment marche le dns, faire le test sur kali avec la commande dns :
#dig @[Link] SOA fr
(Cette requête va demander au serveur racine [Link] de nous donner
l’enregistrement SOA, qui a autorité, sur le fr)
17
Mise en œuvre du fonctionnement du dns
18
Mise en œuvre du fonctionnement du dns
On obtient une liste de serveurs autoritaires pour .fr (ceux qui ont enregistrement
NS), par exemple : [Link]
Interrogeons ce dernier ([Link])
#dig @[Link] SOA [Link]
(Affiches nous les serveurs de nom autoritaire pour [Link])
19
Mise en œuvre du fonctionnement du dns
20
Mise en œuvre du fonctionnement du dns
Demandons ensuite à [Link] de donner @IP de [Link]
#dig @ [Link] A [Link]
21
Mise en œuvre du fonctionnement du dns
22
Mise en œuvre du fonctionnement du dns
On prend cette adresse IP : [Link] que on met dans le navigateur, on devrait
obtenir le site web : [Link]
23
TD/TP sur le fonctionnement du DNS
Nous cherchons à accéder au domaine [Link], comment trouver son adresse
IP ?
1. Demander à un des 13 serveurs racine le SOA sur [Link]
2. Sur la liste des serveurs autoritaire obtenu (NS), demandons le SOA sur [Link]
3. Demander @IP de [Link] à un des serveurs autoritaires obtenu en 2
24
Mise en œuvre
Le paquet dnsutils est très utile pour #apt-get install bind9
tester et dépanner les problèmes de
DNS # apt-get install dnsutils
#systemctl start bind9
Quelle que soit la version de bind
employée, les fichiers de #systemctl status bind9
configuration ont la même structure.
25
Fichiers de résolution
/etc/bind/[Link] ;
/etc/bind/[Link];
/etc/bind/db.192.168.10
26
Fichiers de déclaration de zone
zone "[Link]" {
type master;
file "/etc/bind/[Link]";
};
zone « [Link]" {
type master;
file "/etc/bind/db.192.168.10";
};
27
Fichiers de résolution directe
$TTL 604800
@ IN SOA [Link]. [Link]. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
IN A [Link]
@ IN NS [Link].
@ IN A [Link]
@ IN AAAA ::1
ns IN A [Link]
28
Fichiers de résolution indirecte
;
$TTL 604800
@ IN SOA [Link]. [Link]. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.
10 IN PTR [Link].
29
Ajustement de la configuration
Si pas d’adressage IPv6, alors dans /etc/bind/[Link]:
Listen-on-v6 { none } ;
Il faut ensuite forcer la résolution IPv4 dans /etc/default/bind9:
………
OPTIONS=‘‘-4 –u bind9’’
……….
30
Les variables
Serial: numéro de version de votre zone. Best pratic --AAAAMMJJXX (où XX est la
version du jour en question).
Refresh: fréquence des demandes de mise à jour des serveurs de noms secondaires et
esclaves.
Retry: temps qu'attendra le serveur slave pour recontacter un master injoignable.
Expire: temps pendant lequel le slave continuera à essayer de contacter le serveur
master.
31
TTL: temps pendant lesquelles un nom de domaine est mis en cache localement.
Les enregistrements
A : il fait correspondre un nom d'hôte à une adresse IPv4 ;
AAAA : fait correspondre un nom d'hôte à une adresse IPv6 ;
CNAME : permet de créer un alias;
NS : définit le serveur DNS du domaine ;
MX : définit le serveur de mail du domaine ;
PTR : fait correspond une IP à un nom d'hôte;
SOA : donne les infos de la zone, comme le serveur DNS principal, l'adresse mail
de l'administrateur de la zone, le numéro de série de la zone et des durées que
nous détaillerons.
32
DEPANNAGE
#dig -x [Link]
Vous devriez obtenir un résultat similaire à ce qui suit :
;; Query time: 1 msec
;; SERVER: [Link]#53([Link])
# dig –x [Link]
33
DEPANNAGE
# host –t [Link]
#nslookup
set type=MX
#nslookup [Link]
# nslookup [Link]
# nslookup -type=ns [Link]
34
Tests du DNS
Test la config du fichier de résolution directe
# named-checkzone [Link] /etc/bind/[Link]
Test la config du fichier de résolution indirecte
#named-checkzone [Link] /etc/bind/db.192.168.10
35
Sécurité du DNS
Deux Problèmes majeurs dans la sécurisation du DNS:
Comment sécurisé les échanges entre serveurs maitres et esclaves?
Comment sécuriser le cache d’un DNS?
36
Sécurité du DNS
Le meilleur moyen de palier à ce problème est de chiffrer le trafic. Il existe deux
alternatives :
L’utilisationdu protocole DNSSEC (DNS SECurity), permettant de signer
cryptographiquement les zones, à l’aide d’une clé de zone.
L’utilisation de TSIG (Transaction SIGnature) permettant d’effectuer un transfert d’un
serveur maître vers son esclave, uniquement après vérification du partage d’une clé
secrète entre les deux protagonistes.
37
Sécurité DNS: DNSSEC
Sécuriser les échanges ne pas suffit pas assurer la sécurité d’un DNS, il faut aussi
protéger le cache du DNS.
DNSSEC permet de sécuriser les données envoyées par le DNS.
DNSSEC ajoute 2 fonctions au DNS:
L'authentification de l'origine des données;
La protection de l'intégrité des données permet au résolveur de savoir que les
données n'ont pas été modifiées.
38
Sécurité DNS: TSIG
Les échanges entre 2 serveurs de noms circulent en clairs sur le réseau, pour l’éviter, il
suffit de chiffrer les échanges avec le protocole TSIG,
TSIG utilise un secret partagé ainsi qu’une fonction de hachage unidirectionnelle pour
apporter un certain niveau de sécurité et identifier chacune des extrémités d’une
connexion, autorisant la mise à jour.
L’utilisation d’un élément temporel (appelé timestamp), au sein du protocole, permet
d’éviter une attaque.
39
Les Attaques sur le DNS
Parce que le DNS est au cœur du fonctionnement d'Internet, les attaques contre BIND,
même le refus de les attaques de service peuvent être graves.
40
Les Attaques sur le DNS
On dénombre 4 catégories d’attaques directes sur les DNS.
DNS Cache Poisoning : le pirate intoxique le résolver pour forcer sa machine à être
reconnue comme valide ;
Déni de service (DOS): le pirate rend le service inactif en saturant la machine ;
DNS Spoofing : rediriger, à leur insu, des Internautes vers des sites pirates.;
Fast Flux: le pirate falsifie son adresse IP pour pas être repérer.
41