Introduction
Ce laboratoire se concentre sur la surveillance réseau sous Linux en utilisant l'outil en ligne de commande netstat. La surveillance réseau est essentielle pour les administrateurs système afin de comprendre les connexions, les services et les modèles de trafic sur leurs systèmes.
Au cours de ce laboratoire, vous apprendrez à utiliser l'utilitaire netstat pour afficher les connexions réseau actives, les services en écoute et les statistiques des interfaces réseau. Ces compétences sont fondamentales pour résoudre les problèmes réseau, surveiller les performances du système et garantir la sécurité du réseau.
À la fin de ce laboratoire, vous serez en mesure d'utiliser efficacement netstat pour obtenir des informations sur les activités réseau sur un système Linux, ce qui est une compétence précieuse pour tout administrateur système ou professionnel du domaine informatique.
Comprendre les connexions réseau avec netstat
La commande netstat est un outil réseau puissant qui affiche les connexions réseau, les tables de routage, les statistiques des interfaces, etc. Dans cette étape, vous apprendrez à utiliser netstat pour afficher les connexions réseau actives.
Tout d'abord, naviguons jusqu'au répertoire du projet dans lequel nous allons travailler :
cd /home/labex/project
Qu'est-ce que netstat ?
La commande netstat (statistiques réseau) affiche diverses informations liées au réseau telles que les connexions réseau, les tables de routage, les statistiques des interfaces, etc. C'est un outil précieux pour comprendre les activités réseau de votre système.
Affichage des connexions actives
Exécutons la commande netstat avec des options spécifiques pour afficher les connexions TCP actives :
netstat -nat > connections.txt
Dans cette commande :
-naffiche les adresses et les numéros de port sous forme numérique plutôt que de les résoudre en noms d'hôtes ou en noms de services-aaffiche tous les sockets (écoutants et non écoutants)-taffiche uniquement les connexions TCP> connections.txtredirige la sortie vers un fichier nomméconnections.txt
Maintenant, affichons le contenu du fichier que nous avons créé :
cat connections.txt
La sortie devrait ressembler à ceci :
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp6 0 0 :::22 :::* LISTEN
Comprendre la sortie
Proto: Le protocole utilisé (TCP dans ce cas)Recv-Q: Le nombre d'octets non copiés par le programme utilisateur connecté à ce socketSend-Q: Le nombre d'octets non reconnus par l'hôte distantLocal Address: L'adresse et le numéro de port de l'extrémité locale du socketForeign Address: L'adresse et le numéro de port de l'extrémité distante du socketState: L'état du socket (LISTEN, ESTABLISHED, etc.)
L'état LISTEN indique que le service est en cours d'exécution et attend des connexions entrantes sur ce port spécifique.
Surveillance des services en écoute
Dans cette étape, vous apprendrez à identifier quels services écoutent les connexions sur votre système. Cette information est cruciale pour l'audit de sécurité et la résolution des problèmes liés au réseau.
Identification des services en écoute
Utilisons la commande netstat pour rechercher spécifiquement les services qui sont dans l'état LISTEN :
netstat -natu | grep LISTEN > listening_services.txt
Dans cette commande :
-naffiche les adresses sous forme numérique-aaffiche tous les sockets-tinclut les connexions TCP-uinclut les connexions UDP| grep LISTENfiltre la sortie pour afficher uniquement les lignes contenant "LISTEN"> listening_services.txtenregistre la sortie dans un fichier
Examinons maintenant le contenu du fichier :
cat listening_services.txt
Vous devriez voir une sortie similaire à celle-ci :
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp6 0 0 :::22 :::* LISTEN
Compréhension des services en écoute
Chaque ligne de la sortie représente un service qui accepte actuellement des connexions :
- Les services écoutant sur
0.0.0.0acceptent les connexions depuis n'importe quelle interface réseau - Les services écoutant sur
127.0.0.1n'acceptent que les connexions depuis la machine locale - Les services écoutant sur
:::sont des adresses IPv6 qui acceptent les connexions depuis n'importe quelle interface réseau
Les numéros de port (comme 22 pour le service SSH ou 631 pour le service d'impression CUPS) identifient le service en écoute. Par exemple :
- Port 22 : Service SSH
- Port 80 : Service HTTP (web)
- Port 443 : Service HTTPS
- Port 631 : Service d'impression CUPS
Cette information vous aide à comprendre quels services sont exposés sur votre système, ce qui est précieux pour les évaluations de sécurité et la résolution de problèmes.
Analyse des statistiques des interfaces réseau
Dans cette étape, vous apprendrez à afficher les statistiques de vos interfaces réseau. Ces statistiques fournissent des informations précieuses sur les performances et l'utilisation de vos interfaces réseau.
Affichage des statistiques des interfaces
Utilisons netstat pour afficher les statistiques de toutes les interfaces réseau :
netstat -i > interface_stats.txt
Dans cette commande :
-iaffiche un tableau de toutes les interfaces réseau> interface_stats.txtenregistre la sortie dans un fichier
Examinons maintenant le contenu du fichier :
cat interface_stats.txt
Vous devriez voir une sortie similaire à celle-ci :
Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 123456 0 0 0 98765 0 0 0 BMRU
lo 65536 789 0 0 0 789 0 0 0 LRU
Compréhension des statistiques des interfaces réseau
La sortie fournit des statistiques importantes sur chaque interface réseau :
Iface: Le nom de l'interface réseaueth0: Généralement la première interface Ethernetlo: L'interface de bouclage utilisée pour les connexions locales
MTU: Unité maximale de transmission (Maximum Transmission Unit) - la taille maximale de paquet qui peut être transmise- L'Ethernet standard utilise généralement 1500 octets
- L'interface de bouclage a généralement un MTU plus grand (65536)
RX-OK: Nombre de paquets reçus sans erreurRX-ERR: Nombre de paquets reçus avec erreurRX-DRP: Nombre de paquets reçus abandonnésRX-OVR: Nombre de dépassements de paquets reçusTX-OK: Nombre de paquets transmis sans erreurTX-ERR: Nombre de paquets transmis avec erreurTX-DRP: Nombre de paquets transmis abandonnésTX-OVR: Nombre de dépassements de paquets transmisFlg: Indicateurs (Flags) indiquant l'état de l'interfaceB: Adresse de diffusion (Broadcast) définieM: Multicast activéR: L'interface est en fonctionnementU: L'interface est active
Ces statistiques vous aident à surveiller les performances du réseau et à identifier les problèmes potentiels, tels que la perte de paquets ou les erreurs de transmission.
Commandes supplémentaires pour les statistiques réseau
Pour avoir une vue plus complète des statistiques réseau, vous pouvez également utiliser :
netstat -s | head -20 > protocol_stats.txt
Cette commande affiche les statistiques des protocoles pour TCP, UDP, IP, ICMP et d'autres protocoles. Nous utilisons head -20 pour limiter la sortie aux 20 premières lignes pour plus de lisibilité.
Affichons ce fichier :
cat protocol_stats.txt
Cela fournit des statistiques détaillées sur les performances de chaque protocole, vous aidant à identifier les problèmes potentiels du réseau au niveau du protocole.
Résumé
Dans ce laboratoire, vous avez appris à utiliser la commande netstat pour surveiller divers aspects de l'activité réseau sur un système Linux. Les compétences clés que vous avez acquises sont les suivantes :
Afficher les connexions réseau actives pour comprendre quelles connexions sont établies sur votre système.
Identifier les services en écoute pour déterminer quels ports sont ouverts et potentiellement exposés au réseau.
Analyser les statistiques des interfaces réseau pour surveiller les performances et l'état de santé de vos interfaces réseau.
Ces compétences sont essentielles pour les administrateurs de systèmes, les ingénieurs réseau et les professionnels de la sécurité qui doivent comprendre et résoudre les problèmes liés au réseau. La commande netstat fournit des informations précieuses sur les activités réseau de votre système, vous aidant à maintenir des performances et une sécurité optimales.
Bien que netstat soit considéré comme obsolète sur de nombreuses distributions Linux modernes et qu'il soit remplacé par des outils tels que ss et ip, la compréhension de netstat fournit une base solide pour les concepts de surveillance réseau qui s'appliquent à tous ces outils.



