📶 Maitriser le réseau & les firewalls

Ces cours préparent au
Titre Professionnel "Administrateur d’infrastructures sécurisées " - RNCP37680
Reconnu par France Compétences
📖 Qu'est-ce qu'une interface réseau ?
Une interface réseau est le point de contact entre une machine et un réseau pour l'échange de données. Il existe deux types : physiques et virtuelles.
🏋️ Les interfaces réseau physiques
Les interfaces physiques sont des composants matériels comme les cartes Ethernet ou Wi-Fi, permettant la connexion à un réseau physique :
- Carte Ethernet : Nommée
eth0ouenp0s3, utilisée pour les connexions filaires via câble RJ45. Les noms varient selon la distribution Linux. - Carte Wi-Fi : Gère les connexions sans fil (
wlan0). - Carte réseau pour fibre optique : Pour les connexions haut débit via fibre optique, avec module SFP.
Ces interfaces convertissent les signaux numériques pour la communication réseau.
🖥️ Les interfaces réseau virtuelles
Créées par le système pour gérer des connexions spécifiques :
- Interface de bouclage (
lo) : Pour la communication interne via127.0.0.1(localhost). - Interface liée à une machine virtuelle : Pour les VM (VirtualBox, VMware), avec des noms comme
vnet0. - Interface réseau pour conteneurs : Pour Docker/Kubernetes, comme
veth0, reliée à un pont réseau.
Les interfaces virtuelles sont essentielles pour les environnements virtualisés et conteneurisés modernes.
🔗 Lien interface-IP
Une adresse IP est l'identifiant unique d'un appareil sur un réseau, fonctionnant comme une "adresse postale" numérique.
Deux versions existent :
- IPv4 : Format
192.168.1.1 - IPv6 : Format
fe80::1
L'adresse IP est l'identité d'une interface sur le réseau. Sans elle, pas de communication possible.
- Émission : Les paquets partent via une interface avec IP assignée
- Réception : Les réponses reviennent à cette même IP
- Adressage multiple :
- IP locale (
192.168.1.10) - IP globale (publique/NAT)
- IP locale (
🕵️♂️ Identifier les interfaces
Les commandes ip et ping gèrent les paramètres réseau.
📟 Liste des interfaces :
ip link showCette commande montre toutes les interfaces :
- Interface
lo(bouclage) - Interface
ens5(physique) - Interface
docker0(Docker) - Interface pont réseau (conteneurs)
Les interfaces marquées "DOWN" sont inactives et inutilisables.
📟 Voir les IP :
ip addr showPoints clés :
- Les IPs apparaissent sous
inet - L'interface réseau est physique et active (
state UP). - Une adresse IPv4 dynamique est attribuée (
172.31.9.5/20) par un serveur DHCP et porte un masque de sous-réseau/20, comme indiqué par le champscope global dynamic. - Une adresse IPv6 est également présente (
fe80::ee:a9ff:febf:4311/64), utilisée pour la communication au niveau du lien local.
📟 Test avec ping :
ping vérifie la connectivité en envoyant des paquets ICMP pour tester si une adresse est joignable.
📖 Qu'est-ce qu'une passerelle locale ?
Une passerelle locale (ou passerelle par défaut) est un équipement réseau qui permet à une machine de communiquer avec d'autres réseaux, notamment Internet. Il s'agit généralement du routeur d'un réseau.
- Rôle : Elle fait office d'intermédiaire, recevant les paquets de la machine pour les transmettre vers leur destination, qu'elle soit sur le réseau local ou externe.
- Adresse : Elle possède une adresse IP locale unique. Une passerelle bien configurée est indispensable pour accéder aux ressources externes d'un réseau local, comme Internet.
📖 Bon à savoir
Pour identifier la passerelle locale d'une machine virtuelle, on utilise la commande :
ip route show default
❓ Comment configurer une interface réseau ?
Pour configurer une interface réseau, on doit identifier, modifier et optimiser ses paramètres pour une connexion réseau efficace.
Une bonne configuration est essentielle pour la connectivité, la sécurité et les performances d'un réseau. Une interface mal configurée peut causer des problèmes de connexion et des failles de sécurité.
📌 Changer une adresse IP temporairement
Pour modifier l'adresse IP d'une interface (exemple : eth0) :
⚠️ Attention : Ces modifications sont temporaires et seront perdues au redémarrage.
📟 Supprimer l'IP actuelle :
sudo ip addr del 192.168.56.101/24 dev eth0Explication : Supprime l'adresse IP de l'interface avec sudo pour les droits administratifs.
📟 Ajouter une nouvelle IP :
sudo ip addr add 192.168.56.200/24 dev eth0Explication : Attribue une nouvelle adresse IP à l'interface.
📟 Configurer la passerelle :
sudo ip route add default via 192.168.56.1Explication : Définit la route par défaut pour accéder aux autres réseaux.
📟 Tester la configuration :
Un rappel des premières commandes vues, essentielles pour valider la configuration réseau après toute modification sur les interfaces ou adresses IP.
Vérifier l'adresse IP actuelle : On utilise cette commande pour confirmer que l'adresse IP a bien été appliquée à l'interface cible.
baship addr show ens5Tester la connectivité : On vérifie si l’interface peut communiquer avec d'autres machines, comme la passerelle ou un serveur public.
bashping 8.8.8.8
Ces commandes simples mais puissantes permettent de diagnostiquer rapidement les problèmes ou de valider une configuration réseau. Toujours les garder en tête lors du travail sur les interfaces réseau.
📌 Configurer une adresse IP statique de manière permanente
Pour une adresse IP persistante après redémarrage, on la configure de façon permanente via Netplan sous Ubuntu.
Modifier le fichier de configuration Netplan :
On accède au fichier associé à l'interface, avec la commande suivante :
bashsudo nano /etc/netplan/01-netcfg.yamlCette commande permet de modifier le fichier avec l’éditeur de texte
nano.Exemple de configuration pour
ens5:Voici comment définir une adresse IP statique, une passerelle et des serveurs DNS :
yamlnetwork: version: 2 ethernets: ens5: addresses: - 192.168.56.200/24 gateway4: 192.168.56.1 nameservers: addresses: [8.8.8.8, 8.8.4.4]C’est un exemple de contenu pour définir l’interface.
Appliquer la configuration :
On utilise la commande suivante pour valider et activer les changements :
bashsudo netplan applyVérifier la configuration :
On peut confirmer que l’adresse IP et les paramètres sont correctement appliqués avec :
baship addr show ens5
Comment évaluer et diagnostiquer les performances réseau ?
Voici les principaux outils pour vérifier et analyser un réseau.
Afficher la table de routage : Voir l'acheminement du trafic réseau :
baship route show
- Subnet : Réseau ciblé (
default= route par défaut) - Interface : Interface utilisée pour le trafic
- Source (src) : Adresse IP source
- Route priority (metric) : Priorité des routes
- Proto : Source de la route (
kernel= auto,dhcp= serveur) - Scope : Portée de la route
- Linkdown : Interface inactive
- Gateway (via) : Passerelle
- Analyser le trafic avec tcpdump : Pour observer les paquets réseau en temps réel :
sudo tcpdump -i ens5- Horodatage : Date/heure de capture
- Protocole : Type de paquet (IPv4, etc.)
- Adresses : Source et destination
- Drapeaux : État du paquet
- Séquence/ACK : Progression
- Fenêtre TCP : Taille buffer
- Taille : Octets de données
- Consulter les journaux :
sudo journalctl -u systemd-networkd- Démarrage service
- État des interfaces
- Attribution IP
- Messages d'erreur
✅ À retenir : Ces outils permettent d'observer et diagnostiquer le réseau sans le modifier, via la table de routage (
ip route), l'analyse du trafic (tcpdump) et les journaux système (journalctl).
🧱 Pare-feu et sécurité réseau
Un pare-feu est un outil de sécurité qui régule le trafic réseau. Linux utilise principalement iptables et nftables pour protéger contre les menaces.
📌 Définition
Un pare-feu filtre le trafic réseau selon des règles définies :
- Il contrôle les connexions entrantes et sortantes
- Il vérifie source, destination et protocoles
- Il bloque les menaces comme les scans et connexions suspectes
🔑 Concepts de base
- Tables : groupent les règles par fonction (
filter,nat) - Chaînes : points de contrôle du trafic (
INPUT,OUTPUT) - Règles : définissent le traitement du trafic
🏓 Outils principaux
📌 iptables
Outil traditionnel basé sur Netfilter, avec quatre tables principales :
- filter : contrôle d'accès
- nat : redirection
- mangle : modification
- raw : pré-traitement
📌 nftables
Version moderne avec :
- Syntaxe simplifiée
- Meilleures performances
- Gestion unifiée
💻 Comment configurer des règles simples ?
🛠 Configurer un pare-feu avec iptables
Lister les règles actuelles :
sudo iptables -L -vBloquer tout le trafic entrant :
sudo iptables -P INPUT DROPAutoriser le trafic sortant :
sudo iptables -P OUTPUT ACCEPTAutoriser les connexions SSH (port 22) :
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPTSauvegarder les règles :
sudo iptables-save > /etc/iptables/rules.v4🛠 Configurer un pare-feu avec nftables
Créer une table et une chaîne :
sudo nft add table ip filter
sudo nft add chain ip filter input { type filter hook input priority 0; }Bloquer tout le trafic par défaut :
sudo nft add rule ip filter input dropAutoriser les connexions SSH :
sudo nft add rule ip filter input tcp dport 22 acceptVérifier les règles :
sudo nft list ruleset🌟 Bonnes pratiques en sécurité réseau
Bloquer les ports inutilisés : Réduire la surface d’attaque en autorisant uniquement les ports nécessaires.
Utiliser le principe du moindre privilège : Par défaut, bloquer tout le trafic et ouvrir uniquement ce qui est requis.
Limiter les tentatives de connexion : Utiliser des outils comme fail2ban pour prévenir les attaques par force brute.
Journaliser les activités suspectes : Activer la journalisation des connexions rejetées pour surveiller les activités malveillantes :
bashsudo iptables -A INPUT -j LOG --log-prefix "Firewall: "
