Par Bineli Manga, auteur du blog Alibaba Cloud Community.
Le protocole DHCP (Dynamic Host Configuration Protocol) est un protocole de communication que les ordinateurs utilisent pour attribuer automatiquement des adresses IP aux périphériques connectés à un réseau local ou sur Internet. Avant l’invention du protocole DHCP, l’ajout de tout nouvel ordinateur à un réseau nécessitait une action manuelle pour ajouter son adresse Mac à une adresse IP. La gestion du réseau était compliquée en cas de grand nombre d’hôtes sur un réseau. Cependant, lorsque le DHCP est installé et configuré sur un réseau local, tout ordinateur accepté dans le réseau reçoit automatiquement une adresse IP associée à son adresse Mac. Un serveur de noms de domaine (DNS) gère la génération d’adresses IP et un serveur DHCP distribue automatiquement la configuration entre les hôtes.
Ce tutoriel illustre comment vous pouvez installer et configurer un serveur DHCP sur un réseau local pour obtenir une configuration réseau entièrement automatique. Ce tutoriel montrera également comment gérer un petit réseau comme celui généralement disponible à la maison et aidera également à connecter des ordinateurs à d’autres appareils locaux de l’Internet des objets (IoT) tels que des lumières, des climatiseurs et des réfrigérateurs.
- Prérequis
- Installation du serveur DHCP
- Configuration d’un serveur DHCP
- 2.1. Définition d’un sous-réseau à utiliser
- 2.2. Configurations globales DHCP
- Gérer les périphériques DHCP
- 3.1. Configuration du client DHCP
- 3.2. Listez les adresses louées
- Sécurisation de la configuration DHCP
- 4.1. Attaques de sécurité DHCP
- Conclusion
Prérequis
Pour commencer avec ce tutoriel, vous aurez besoin d’une machine virtuelle Linux (de préférence une machine virtuelle Ubuntu) avec accès à Internet. Pour cela, vous pouvez acheter une instance Alibaba Cloud Elastic Compute Service (ECS) et choisir Ubuntu comme système d’exploitation.
Installation du serveur DHCP
Pour installer le serveur DHCP sur la machine virtuelle Linux, vous devez d’abord mettre à jour le référentiel de paquets en exécutant la commande suivante.
$ sudo apt-get update
Après avoir mis à jour la liste des paquets, installez le paquet DHCP à l’aide de la commande suivante.
$ sudo apt-get install isc-dhcp-server -y
Configuration d’un serveur DHCP
Après l’installation du serveur DHCP, vous voudrez obtenir l’adresse IP du serveur DHCP à l’aide de la commande ifconfig. L’exécution de cette commande donnera l’adresse IP (192.168.110.1).
Le fichier de configuration DHCP se trouve à /etc/dhcp/dhcpd.conf.
Exécutez la commande suivante pour ouvrir le fichier.
$ sudo nano /etc/dhcp/dhcpd.conf
2.1. Définition d’un sous-réseau à utiliser
Ajoutez les lignes suivantes dans le fichier de configuration pour définir le sous-réseau, la plage d’adresses IP, le domaine et les serveurs de noms de domaine.
subnet 192.168.110.0 netmask 255.255.255.0 {
Lors de la définition des informations de sous-réseau (plage, passerelle par défaut, serveur de noms de domaine), veillez à terminer les lignes par un point-virgule (;)
et à les placer entre accolades { }
. La plage définit l’ensemble du pool d’adresses IP, à partir duquel les adresses IP sont allouées aux clients DHCP. Pour spécifier la plage d’adresses louées, ajoutez la ligne suivante.
range 192.168.110.5 192.168.1.10;
Ensuite, pour spécifier la passerelle par défaut, ajoutez la ligne suivante.
option routers 192.168.110.1;
Pour spécifier les serveurs de noms de domaine, ajoutez la ligne suivante.
option domain-name-servers 8.8.8.8, 8.8.4.4;
2.2. Configurations globales DHCP
Pour configurer un serveur DHCP, exécutez les étapes suivantes pour configurer les paramètres globaux.
Étape 1: Pour spécifier la durée de location par défaut et maximale, recherchez les paramètres default-lease-time et max-lease-time dans le fichier de configuration et modifiez leurs valeurs comme indiqué ci-dessous.
default-lease-time 600;max-lease-time 7200;
Étape 2: En cas d’interfaces multiples, définissez l’interface que le serveur DHCP doit utiliser pour répondre aux demandes DHCP. Dans le fichier de configuration, recherchez et modifiez la valeur d’INTERFACESv4 pour la mettre à jour avec l’interface préférée pour répondre aux demandes.
INTERFACESv4="eth0"
Étape 3: Pour faire du serveur DHCP le serveur DHCP officiel pour les clients, décommentez la ligne suivante dans le fichier de configuration en supprimant le caractère #
comme indiqué ci-dessous.
$ authoritative;
Après avoir implémenté la configuration de base précédente, vous devrez enregistrer et fermer le fichier de configuration.
Gérer les périphériques DHCP
Maintenant, utilisez les commandes suivantes pour gérer le serveur DHCP.
Pour vérifier si le service fonctionne correctement, vérifiez l’état du service DHCP en exécutant la commande suivante dans une fenêtre de terminal.
$ sudo systemctl status isc-dhcp-server.service
Pour démarrer le service DHCP, exécutez la commande suivante dans une fenêtre de terminal.
$ sudo systemctl start isc-dhcp-server.service
Pour arrêter le service DHCP, exécutez la commande suivante dans une fenêtre de terminal.
$ sudo systemctl stop isc-dhcp-server.service
Pour redémarrer le service DHCP, exécutez la commande suivante dans une fenêtre de terminal.
$ sudo systemctl restart isc-dhcp-server.service
3.1. Configuration du client DHCP
Ensuite, il est nécessaire de configurer les paramètres réseau sur l’ordinateur client pour obtenir une adresse IP à partir d’un serveur DHCP. Ici, utilisons un autre Ubuntu 18.04 LTS comme ordinateur client. Dans l’ordinateur client, ouvrez l’application Paramètres à partir du menu Dash d’Ubuntu.
Sélectionnez l’onglet Réseau dans le volet gauche de l’application Paramètres, puis ouvrez les paramètres de l’adaptateur en cliquant sur l’icône de rouage en face de celui-ci. Assurez-vous qu’il est allumé. Il ouvrira la fenêtre des paramètres de l’adaptateur. Maintenant, sélectionnez l’onglet IPv4 dans le menu supérieur, puis sélectionnez l’option automatique (DHCP).
Cliquez sur Appliquer pour enregistrer les modifications et redémarrer les services réseau en exécutant la commande suivante dans le terminal.
$ sudo systemctl restart NetworkManager.service
Maintenant, lancez le terminal et tapez la commande suivante pour trouver l’adresse IP du système.
$ ip a
La commande ci-dessus donnera une adresse IP qui sera de la plage définie dans la configuration du serveur DHCP. Si le client n’obtient toujours pas d’adresse IP du serveur DHCP, redémarrez le système.
3.2. Listez les adresses louées
Pour savoir quelles adresses ont été attribuées aux clients par le serveur DHCP, ouvrez la machine configurée en tant que serveur DHCP et tapez la commande suivante dans Terminal.
$ dhcp-lease-list
Le bail est la durée pendant laquelle une adresse IP est attribuée à un ordinateur. Dans cette liste, vérifiez si le client DHCP avec le MAC: 00:0c:29:d4:cf:69
est fourni avec l’adresse IP 192.168.110.5 du serveur DHCP.
Avec cela, la configuration est terminée et le serveur DHCP est opérationnel. Maintenant, utilisez ce serveur DHCP pour attribuer des adresses IP.
Sécurisation de la configuration DHCP
4.1. Attaques de sécurité DHCP
Un serveur DHCP est vulnérable à différents types d’attaques. Jetons un coup d’œil à certains types d’attaques et à des conseils sur la façon de prévenir ou d’atténuer ces risques.
- Déni de service
Étant donné que le protocole DHCP ne nécessite pas d’authentification du client pour fournir des configurations réseau, tout utilisateur ayant accès au réseau peut obtenir un bail d’adresse IP. Les données envoyées par le serveur DHCP peuvent révéler des informations sur les serveurs DNS IPs, qui peuvent comprendre la sécurité du réseau. Les utilisateurs malveillants qui ont accès à un réseau compatible DHCP peuvent créer une attaque par déni de service sur les serveurs DHCP en inondant le serveur d’un nombre élevé de demandes de location, réduisant ainsi le nombre de locations disponibles pour d’autres clients DHCP.
- Attaque de famine DHCP
L’attaque de famine DHCP est une attaque par laquelle le pirate épuise l’espace d’adressage disponible pour les serveurs DHCP pendant une période donnée. Ce type d’attaque est effectué en diffusant des requêtes DHCP avec des adresses MAC usurpées. De plus, pour accéder au réseau, les attaquants exploitent l’espionnage DHCP, un mécanisme utilisé pour assurer la sécurité du réseau en filtrant les messages DHCP non approuvés et en créant et en maintenant une base de données de liaison d’espionnage DHCP.
- Serveur DHCP escroc
Un pirate informatique peut configurer un faux serveur DHCP sur le réseau attaqué, afin de provoquer des attaques d’homme du milieu, de reniflement et de reconnaissance. Ce faux serveur est appelé un serveur malveillant, et l’attaquant l’utilise pour fournir aux clients de fausses adresses et d’autres informations réseau pour fouiner dans les paquets de données. Le serveur malveillant fournit ensuite ses propres serveurs DNS et passerelles réseau, qui redirigent les clients vers des sites Web malveillants où ils effectuent des attaques de phishing pour obtenir leurs informations confidentielles telles que les numéros de carte de crédit et les mots de passe.
- Conseils de sécurité
Le maintien de protocoles de sécurité physiques appropriés pour les composants matériels tels que les serveurs, les commutateurs et les routeurs limite l’accès non autorisé au système serveur. La restriction de l’accès sans fil pour les individus illicites à l’intérieur ou à l’extérieur du système en maintenant les politiques d’accès des utilisateurs annulent également le périmètre de sécurité.
La journalisation d’audit pour chaque serveur DHCP sur le réseau doit être activée tout en conservant un onglet sur les fichiers journaux. Ces fichiers journaux assurent la sécurité lorsque le serveur DHCP reçoit un nombre inhabituellement élevé de demandes de location de la part des clients. Un fichier journal d’audit contient les informations nécessaires pour suivre la source des attaques effectuées contre le serveur DHCP. Le journal des événements système doit également être analysé pour obtenir des informations explicatives sur le service du serveur DHCP. Alors que dans les cas où les clients exécutent le système d’exploitation Microsoft avec des commutateurs activés 802.1, l’authentification se produit avant le serveur DHCP pour attribuer un bail, offrant une meilleure sécurité.
De plus, l’accès administratif au DHCP devrait être limité à un nombre limité de personnes. Seul un membre du groupe Administrateurs ou du groupe administrateurs DHCP doit être autorisé à administrer des serveurs DHCP à l’aide de la console DHCP ou des commandes Netsh pour DHCP. Assurez-vous que la catégorie d’utilisateurs qui ont besoin d’un accès en lecture seule à la console DHCP est ajoutée au groupe Utilisateurs DHCP au lieu du groupe administrateurs DHCP. Même si rien n’est complètement sécurisé dans le cyber-monde, peu de mesures de sécurité incluses dans la politique de sécurité peuvent sauver une organisation des cybermenaces.
Conclusion
Pour résumer, ce tutoriel a pour but d’aider les utilisateurs à installer et configurer eux-mêmes un serveur DHCP. Il se concentre sur la façon de configurer un serveur DHCP pour répondre à des besoins spécifiques. Il répertorie également diverses attaques auxquelles un serveur DHCP peut être confronté et suggère enfin comment le protéger de ces attaques.