Comment trouver qui/qui écoute sur les ports TCP sur Mac
Il peut arriver que vous vous trouviez dans une situation où vous cherchez à savoir quelles connexions TCP ouvertes sont en état d'écoute sur un Mac. Cela peut être utile si vous dépannez des problèmes réseau particuliers ou si vous cherchez simplement à identifier les processus qui sont à l'écoute sur des ports spécifiques sur un Mac.
Nous utiliserons l'outil lsof en ligne de commande pour savoir qui/qui écoute sur les connexions TCP ouvertes sur un Mac, ce qui est plus approprié pour les utilisateurs avancés de Mac qui sont à l'aise avec le Terminal et sudo.
Comment trouver ce qui écoute sur les ports TCP sur MacOS
La commande que nous allons utiliser ici est destinée à MacOS Ventura et MacOS Monterey, mais elle devrait également fonctionner sur les versions plus anciennes de MacOS :
- Ouvrez l'application "Terminal" à partir de /Applications/Utilitaires/ ou via Spotlight avec Commande+Barre d'espace.
- Tapez la commande suivante :
- Appuyez sur la touche Entrée et utilisez le mot de passe admin lorsqu'il vous est demandé d'exécuter la commande et de voir une liste de ce qui écoute activement sur quels ports TCP sur le Mac.
sudo lsof -iTCP -sTCP:LISTEN -P -n
Vous verrez une liste de commandes / processus, l'ID du processus (PID), le type (IPv6 vs IPv4), l'appareil, le nœud (TCP dans ce cas) et le port.
Grâce à ces informations, vous pouvez déterminer les étapes suivantes, en fonction de vos objectifs.
Pour les curieux, décomposons la commande et les différents drapeaux utilisés ici utilisés ici :
- sudo : Exécute la commande avec les privilèges du superutilisateur, ce qui lui permet d'afficher les connexions réseau ouvertes par tous les utilisateurs, y compris root.
- lsof : Répertorie tous les fichiers ouverts sur le système, y compris les connexions réseau ouvertes.
- -iTCP : filtre les résultats pour n'afficher que les connexions TCP.
- -sTCP:LISTEN : Filtre les résultats pour n'afficher que les connexions TCP en écoute.
- -P : désactive la résolution des noms de ports et n'affiche que les numéros de ports.
- -n : Désactive la résolution des noms d'hôtes et n'affiche que les adresses IP.
La commande lsof est assez puissante, et nous avons déjà abordé son utilisation pour déterminer quelles applications ou processus interagissent avec un fichier particulier, trouver quels processus utilisent la connectivité Internet, afficher les connexions réseau ouvertes, écouter toutes les connexions Internet ouvertes, et plus encore.
Si vous préférez l'interface graphique, vous pouvez essayer l'application Sloth, qui est essentiellement une interface graphique pour lsof, et qui est disponible en téléchargement gratuit, et Activity Monitor a également un support limité pour des fonctionnalités similaires.
Avez-vous des astuces, des commandes ou des outils similaires que vous utilisez pour trouver qui ou quoi écoute sur un port TCP donné sur un Mac ? N'hésitez pas à nous en faire part dans les commentaires ci-dessous.