DNS FTP WEB DHCP : Maîtriser les Serveurs sous Linux
DNS, FTP, WEB et DHCP sous Linux. Le DNS (Domain Name System), FTP (File Transfer Protocol), WEB (serveurs web) et DHCP (Dynamic Host Configuration Protocol) sont des protocoles essentiels pour la gestion des réseaux informatiques sous Linux. Ce document s'appuie sur le modèle TCP/IP et sur des procédures opérationnelles pour déployer et diagnostiquer des services courants comme BIND et Apache HTTP Server.
Auteur : Eric BOUTIN. Contenu structuré selon des bonnes pratiques opérationnelles et procédures testées en laboratoire pour l'administration système Linux et les services réseau. Les procédures suivent les recommandations Debian/Ubuntu et les guides officiels des projets BIND et Apache, garantissant une approche conforme aux standards.
🎯 Mise en œuvre de serveurs DNS, FTP, WEB et DHCP — Ce que vous allez apprendre
- Serveur DNS : préparation de l'environnement, installation et configuration de BIND, gestion des fichiers de zone et résolution de problèmes courants.
- Serveur FTP : installation d'un service FTP sécurisé, gestion des comptes et des permissions, et configuration des répertoires partagés.
- Serveur WEB : configuration d'Apache HTTP Server, virtualhosts, gestion des certificats TLS et règles d'authentification.
- Serveur DHCP : installation et configuration d'un serveur DHCP, plan d'adressage, réservations et prévention des conflits d'adresses IP.
- Rappels Linux : gestion des droits, édition de fichiers de configuration avec
viounano, et commandes système essentielles pour l'administration.
Plan du cours PDF : Administration Serveurs Linux
- Cahier des charges
- Configuration du réseau
- Rappels Linux
- MISE EN ŒUVRE D’UN SERVEUR DNS
- MISE EN ŒUVRE D’UN SERVEUR FTP
- MISE EN ŒUVRE D’UN SERVEUR WEB
- MISE EN ŒUVRE D’UN SERVEUR DHCP
- SITE INTERNET AXIUS
Architecture réseau et modèle OSI
La compréhension du modèle OSI et du positionnement des protocoles dans la pile TCP/IP facilite l'administration système linux et la résolution d'incidents. Le DNS et le protocole HTTP/HTTPS sont des protocoles applicatifs (couche 7 du modèle OSI) qui reposent sur le transport TCP ou UDP selon le cas. Le FTP est également un protocole applicatif (couche 7) utilisant TCP pour le contrôle et les données. DHCP est un protocole applicatif qui échange des messages via UDP (transport, couche 4) ; on le présente donc comme relevant de la couche application tout en s'appuyant sur la couche transport pour l'échange de paquets. Cette cartographie aide à diagnostiquer les problèmes entre couches et à appliquer des règles de filtrage adaptées.
Relation avec le modèle OSI
DNS et HTTP fonctionnent en couche application (7) et utilisent respectivement UDP/TCP selon l'opération. DHCP est un service applicatif dont les messages transitent via UDP (couche 4), ce qui explique les vérifications port/UDP lors des diagnostics. FTP utilise TCP (couche 4) pour établir des connexions fiables entre client et serveur. La lecture conjointe du modèle OSI et du protocole tcp/ip clarifie les responsabilités à chaque niveau (résolution de noms, transport, routage).
Sécurisation des services réseau
Le durcissement des services et la sécurisation réseau sont indispensables en production. Au-delà des configurations applicatives, il convient d'appliquer des mesures système et réseau pour limiter la surface d'attaque et assurer la conformité aux exigences du cahier des charges.
- SSH : restreindre les accès par clés, désactiver l'authentification par mot de passe pour les comptes d'administration, configurer
/etc/ssh/sshd_configavec une politique de cipher et d'algorithmes à jour. - fail2ban : protéger les services exposés (SSH, FTP, Apache) en bloquant automatiquement les IPs suspectes via des règles de filtrage et journaux.
- Permissions et ownership : appliquer
chmodetchownappropriés sur les fichiers de configuration et les répertoires web/ftp pour empêcher les escalades et fuites de données. - TLS et certificats : usage de certificats valides pour Apache (serveur apache2) et forcer TLS pour les services supportant le chiffrement.
- Journalisation et monitoring : centraliser les logs, configurer l'alerting et vérifier régulièrement les baux DHCP, les fichiers de zone BIND et les accès Apache.
Cahier des charges : Déploiement du réseau Axius
- Plan d'adressage IP privé et segmentation VLAN pour isoler les services.
- Noms de domaine et zones DNS à créer, délégations et enregistrements requis (A, AAAA, PTR, MX, CNAME).
- Disponibilité et redondance : configurations primaires/secondaires pour BIND et stratégies de sauvegarde.
- Sécurité : règles de pare-feu, restrictions d'accès, usage de TLS pour Apache, et gestion d'authentification pour FTP.
- Monitoring et journalisation : collecte des logs, alerting et supervision des baux DHCP.
Mise en œuvre pratique des services réseau sous Linux
Les chapitres pratiques détaillent l'installation et la configuration des paquets courants (configuration bind9, isc-dhcp-server, vsftpd, serveur apache2), l'édition des fichiers de configuration et les vérifications post-déploiement. Les procédures incluent des exemples de fichiers de zone, des extraits de configuration et des commandes pour reproduire les étapes en laboratoire, en cohérence avec les besoins d'administration système linux et les contraintes de sécurité réseau.
# Exemple d'installation (Debian/Ubuntu) : paquets serveur
sudo apt update
sudo apt install bind9 isc-dhcp-server apache2 vsftpd
# Installation du client DHCP (aspect client)
sudo apt install isc-dhcp-client
Configuration du client DHCP et DNS
dhclient— demande un bail DHCP et met à jour la configuration réseau du client; utile pour valider l'attribution d'adresse.nmcli— gestion NetworkManager pour activer/désactiver les interfaces et renouveler des baux DHCP dans des environnements desktop ou VM.- Modification du fichier
/etc/resolv.conf— définir les serveurs DNS côté client ou via un résolveur local lorsque la configuration bind9 est utilisée en cache.
Pour valider un serveur DHCP depuis un poste client : lancer sudo dhclient -v eth0 pour obtenir un bail et vérifier l'adresse avec ip addr show eth0. Vérifier la résolution DNS en consultant /etc/resolv.conf puis en testant dig ou nslookup.
Validation et tests de connectivité client-serveur
La validation combine outils de requêtes DNS et vérifications réseau : nslookup, dig et host permettent d'interroger un serveur DNS et d'interpréter les réponses. Pour DHCP, consulter les journaux système et le fichier des baux permet d'identifier les attributions et les conflits. Les procédures incluent des scénarios de renouvellement de bail, vérification de propagation DNS et isolation d'un service à l'aide d'outils réseau standard.
# Tests DNS
dig @127.0.0.1 example.com A
nslookup example.com 127.0.0.1
# Renouvellement DHCP côté client
sudo dhclient -r eth0
sudo dhclient -v eth0
Le fichier /var/lib/dhcp/dhcpd.leases contient l'historique et l'état actuel des baux délivrés par le serveur DHCP. Sa consultation est essentielle pour le suivi, le diagnostic d'un conflit d'adresses et la vérification des réservations configurées dans le cahier des charges.
Fichiers de configuration clés
/etc/bind/named.conf: fichier principal de configuration de BIND, incluant les directives globales et les inclusions de zones./etc/dhcp/dhcpd.conf: paramètres globaux et déclarations de sous-réseaux pour le serveur DHCP./var/lib/dhcp/dhcpd.leases: registre des baux DHCP, utile pour le monitoring et le dépannage./etc/apache2/sites-available/000-default.conf: configuration d'un virtualhost Apache par défaut (serveur web)./etc/vsftpd.conf: paramètres de sécurité et de comportement pour le serveur FTP vsftpd./etc/resolv.conf: configuration de la résolution côté client (serveurs DNS).
Outils et commandes abordés
nslookup— interrogation simple d'un résolveur DNS pour vérifier la résolution d'un nom.dig— outil complet pour interroger les serveurs DNS et analyser les en-têtes et sections des réponses.host— utilitaire léger pour traduire noms et adresses IP et vérifier les enregistrements.dhclient— client DHCP pour obtenir, renouveler ou relâcher un bail; utile pour tester la configuration DHCP côté client.nmcli— gestion NetworkManager en ligne de commande pour manipuler interfaces et profils réseau.