Comment surveiller les connexions réseau sous Linux avec ss
Les utilitaires Linux sont une bouée de sauvetage pour les administrateurs de serveur lorsqu’il s’agit de dépanner et de résoudre les problèmes de réseau. Auparavant, les administrateurs utilisaient la commande netstat pour afficher les statistiques du réseau et d’autres informations relatives aux sockets sous Linux. Mais cette commande est maintenant obsolète pour un meilleur outil.
La commande ss a remplacé netstat car elle fournit des informations plus détaillées que son prédécesseur. Cet article vous montrera comment vous pouvez utiliser ss pour extraire les informations relatives aux sockets de votre système.
Qu’est-ce que la commande ss ?
La commande ss, abréviation de statistiques de socket, est un utilitaire Linux qui affiche des informations relatives aux connexions réseau dans un format détaillé et lisible par l’homme. Vous pouvez utiliser ss pour dépanner et trouver des problèmes avec votre réseau car il fournit des détails complets sur les connexions.
Comme mentionné précédemment, ss a remplacé netstat, qui était l’utilitaire d’origine pour lister les statistiques de socket sous Linux. La commande ss est facile à utiliser, fournit plus d’informations et fournit des résultats rapides et précis.
Comment utiliser ss sous Linux
En utilisant ss, vous pouvez répertorier toutes les connexions socket de votre système. De plus, il est également possible de filtrer les connexions en fonction du type, de l’adresse de destination et du numéro de port.
Syntaxe de base
La syntaxe de base de la commande ss est :
…où options est le drapeau que vous pouvez utiliser pour invoquer les fonctions de la commande.
La commande ss la plus simple affiche une liste de toutes les connexions établies, quel que soit le type de connexion.
Sortir:
Remarquez dans l’image ci-dessus, le État contient une seule valeur, à savoir ESTAB, qui indique une connexion établie.
Vous trouverez les en-têtes de colonne suivants dans la sortie :
- Netid : Indique le type de socket utilisé pour la connexion. Les valeurs possibles sont TCP, UDP, u_seq (séquence Unix) et u_str (chaîne Unix).
- État : La colonne État affiche l’état de la connexion. Vous trouverez des valeurs telles que ESTAB, UNCONN et LISTEN, qui signifient respectivement établi, non connecté et à l’écoute.
- Recv-Q : Le nombre de paquets reçus présents dans la file d’attente.
- Envoyer-Q : Le nombre de paquets envoyés dans la file d’attente.
- Adresse locale et port : L’adresse locale de la machine de l’utilisateur et le numéro de port.
- Adresse homologue et port : L’adresse de la machine de destination et le numéro de port.
Obtenir une liste de toutes les prises
Utilisez le -une flag pour afficher toutes les sockets présentes sur le réseau, à l’écoute ou non.
Sortir:
Lister toutes les prises d’écoute actuelles
Pour récupérer uniquement les informations relatives aux sockets en cours d’écoute, utilisez la commande -l drapeau avec la commande. le -l représente Écoute .
Ss affichera toutes les prises d’écoute actives sur votre appareil ou votre réseau. Notez que presque toutes les prises de la sortie ont un état non connecté.
Dès qu’un socket d’écoute obtient une connexion entrante, il crée un socket enfant et l’utilise pour établir la connexion. Vous pouvez ensuite utiliser l’utilitaire Linux tcpdump pour surveiller et filtrer les paquets sur votre réseau.
Afficher les connexions TCP, UDP et Unix
Sous Linux, il existe différents types de sockets, notamment les sockets TCP, UDP et Unix. Vous pouvez lister toutes les connexions appartenant à un type de socket spécifique avec ss.
Pour répertorier chaque socket TCP sur votre ordinateur :
Sortir:
le -u affichera une liste de tous les sockets UDP :
Sortir:
Pour récupérer une liste de sockets Unix à l’aide de ss, utilisez la commande -X drapeau:
Sortir:
Par défaut, ss n’affiche que les sockets connectés. Pour obtenir une liste de toutes les sockets, quel que soit l’état de la connexion, utilisez la -une drapeau avec la commande :
Filtrer les connexions TCP à l’aide de l’état
Les sockets TCP ont plusieurs états que vous pouvez utiliser pour filtrer les résultats. Vous pouvez utiliser les états de socket suivants pour filtrer les connexions avec ss : établi, fermé, à l’écoute, en cours de fermeture, tout, connecté, synchronisé, seau, grand, temps d’attente, etc.
Le format de base pour filtrer les connexions TCP à l’aide de l’état de la connexion est :
…où filtre est l’état des connexions, par exemple, établi.
Répertorier les connexions IPv4 et IPv6
Vous pouvez utiliser le -4 et -6 flags pour obtenir une liste des sockets IPv4 et IPv6 sur votre appareil :
Sortir:
Vous pouvez également utiliser la méthode d’état pour filtrer les sockets IPv4 et IPv6.
Filtrer les connexions à l’aide du numéro de port
Vous pouvez spécifier le déport et sport valeurs dans la commande ss pour filtrer les connexions à l’aide du numéro de port et du protocole. le déport et sport les options représentent le port de destination et port source respectivement.
Pour obtenir des informations relatives aux connexions qui ont le port source 39700 ou le port de destination https :
Sortir:
Vous pouvez également utiliser la méthode d’état en conjonction avec le filtre de port pour obtenir des résultats précis :
Répertorier les sockets bruts à l’aide de ss
Vous pouvez utiliser le -w ou –cru drapeau pour afficher les sockets bruts sur votre appareil :
Sortir:
Afficher les connexions avec un appareil spécifique
En utilisant ss, vous pouvez également afficher une liste de connexions avec une adresse de destination spécifique.
…où adresse IP est l’adresse de l’appareil de destination.
Par example:
Afficher les ID de processus des connexions
Lors du dépannage d’un réseau, connaître l’ID de processus de la connexion problématique peut être très utile.
Pour afficher les PID associés aux connexions TCP :
Ss affiche également le nom de l’application qui a établi la connexion.
De plus, vous pouvez obtenir des informations plus détaillées sur le processus à l’aide de la commande ps.
Obtenir un résumé des statistiques du réseau
le -s permet à un utilisateur d’afficher le résumé général de son réseau ou de son appareil. Le résumé comprend le nombre total de connexions, le nombre et le type de prises, etc.
Sortir:
Envoyer la sortie vers un fichier
Vous pouvez également enregistrer la sortie de la commande ss dans un fichier pour référence ultérieure à l’aide de la commande > opérateur de sortie.
Sortir:
Implémenter ss avec grep
Si vous souhaitez filtrer les données fournies par ss mais que vous ne parvenez pas à vous souvenir du format de la commande, vous pouvez diriger grep avec ss pour obtenir les résultats souhaités.
Par exemple, pour obtenir une liste de toutes les connexions TCP établies à l’aide de ss et grep :
Sortir:
Surveillance des connexions réseau sous Linux
Sous Linux, il y a une commande pour tout. De la création de fichiers à la surveillance des réseaux, vous l’appelez. Mais avec cette énorme collection d’utilitaires vient la question de savoir lequel est le meilleur.
Outre le côté logiciel d’un ordinateur, les utilisateurs doivent également bien connaître les spécifications matérielles de leur système. Plusieurs commandes sont disponibles qui permettent à un utilisateur d’extraire facilement des informations relatives à son système et à son matériel.