Offre Durée limitée : -10% sur tout le site avec le code WELCOME10

Surveiller les connexions réseau en temps réel sur un VPS Linux avec ss et nethogs

Mis à jour le 30 septembre 2026 7 min de lecture 6 sections

Votre serveur de jeu tourne, mais la latence grimpe et vous ne savez pas pourquoi. Avant de redémarrer quoi que ce soit, une commande suffit pour voir en temps réel quelles connexions sont actives et quel processus monopolise la bande passante. Ce guide d'administration Linux vous montre comment utiliser ss et nethogs, deux outils disponibles sur n'importe quel VPS ou serveur dédié, sans installation complexe et sans configuration supplémentaire du pare-feu.

Pourquoi ss et nethogs plutôt que netstat ?

netstat est présent depuis des décennies, mais il n'est plus maintenu dans la plupart des distributions modernes : sur Ubuntu 22.04 et Debian 12, il faut installer le paquet net-tools séparément. ss (socket statistics) est son successeur officiel sur les systèmes Unix/Linux, inclus dans le paquet iproute2 présent par défaut sur tous les serveurs VPS Linux. L'outil accède directement aux données du noyau via le sous-système Netlink, ce qui le rend significativement plus rapide sur les serveurs dédiés et VPS avec des milliers de connexions simultanées.

nethogs complète ss pour une dimension que celui-ci ne couvre pas nativement : la consommation de bande passante par processus en temps réel, à la façon d'un top orienté réseau. Si votre serveur FiveM ou votre serveur Minecraft émet soudainement un trafic inhabituel, nethogs vous montre en quelques secondes si c'est le moteur de jeu, Nginx, un script, ou un processus parasite. L'outil ne nécessite aucun module noyau supplémentaire, ne requiert pas de désactiver les protections système, et a un impact négligeable sur le CPU et la RAM du serveur.

Installer nethogs

ss est déjà présent sur votre VPS ou serveur dédié via le paquet iproute2. Pour nethogs, une seule commande d'installation depuis le shell administrateur suffit :

# Debian / Ubuntu
sudo apt install nethogs

# AlmaLinux / Rocky Linux / CentOS Stream
sudo dnf install nethogs

Le paquet pèse moins de 100 Ko. Il utilise libpcap et fonctionne sur n'importe quel VPS Linux ou serveur dédié sans configuration préalable du pare-feu ni modification des règles réseau. Les administrateurs qui gèrent plusieurs machines peuvent l'installer via un script de déploiement standard.

Surveiller les connexions actives avec ss

Connexions établies avec le processus associé

La commande de base pour voir toutes les connexions TCP actives avec le nom du processus responsable :

sudo ss -tnp state established

Décryptage des configurations d'options :

  • -t : afficher uniquement les sockets TCP
  • -n : format numérique (pas de résolution DNS, plus rapide)
  • -p : afficher le processus propriétaire de chaque socket (nécessite root)
  • state established : filtrer sur les connexions en état ESTABLISHED

Exemple de sortie typique sur un serveur de jeu Linux géré par un hébergeur VPS :

Netid  State   Recv-Q  Send-Q  Local Address:Port  Peer Address:Port  Process
tcp    ESTAB   0       0       0.0.0.0:30120        203.0.113.42:51234  users:(("FXServer",pid=1842,fd=23))
tcp    ESTAB   0       0       0.0.0.0:25565         198.51.100.7:44321  users:(("java",pid=2011,fd=18))
tcp    ESTAB   0       0       127.0.0.1:3306        127.0.0.1:54201    users:(("mysqld",pid=1203,fd=12))

La colonne Process affiche directement le nom du binaire, son PID et le descripteur de fichier. Sur un serveur géré via Pterodactyl, vous identifiez immédiatement quel conteneur concentre les connexions entrantes. Un Nginx ou un service de backup qui ouvre des connexions sortantes inattendues sera immédiatement visible.

Filtrer par port de jeu

Pour isoler les connexions sur un port spécifique, par exemple le port 30120 de FiveM :

sudo ss -tnp 'sport = :30120 or dport = :30120'

Pour Minecraft (port 25565 par défaut selon les configurations standard) :

sudo ss -tnp 'sport = :25565 or dport = :25565'

Pour vérifier les connexions VPN sur le port WireGuard (51820 par défaut) :

sudo ss -unp 'sport = :51820 or dport = :51820'

Compter les connexions par adresse source

Sur un serveur dédié avec de nombreux joueurs, identifier les adresses IP qui ouvrent le plus de connexions aide à détecter un comportement anormal avant d'intervenir au niveau du pare-feu :

sudo ss -tn state established | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -rn | head -20

Cette commande shell extrait les adresses IP sources, les compte et les trie par ordre décroissant. Une adresse IP avec des dizaines de connexions simultanées peut indiquer une tentative de saturation. Consultez également notre guide pour limiter les tentatives de connexion SSH sur un VPS Linux.

Statistiques réseau globales

Pour un résumé de l'état des sockets sur le serveur VPS ou dédié :

ss -s

La sortie indique le nombre total de connexions TCP par état (ESTABLISHED, TIME-WAIT, CLOSE-WAIT, etc.), le nombre de sockets UDP et RAW. C'est utile pour détecter une accumulation anormale de connexions en TIME-WAIT, signe d'un trafic intense ou d'une mauvaise configuration des paramètres noyau. Un hébergeur de qualité fournit généralement un VPS avec un noyau Linux pré-configuré pour des charges réseau élevées.

Rafraîchissement continu avec watch

ss fournit un instantané. Pour l'exécuter toutes les 2 secondes depuis un shell et observer l'évolution en direct sans consommer trop de CPU :

watch -n 2 'sudo ss -tnp state established | wc -l'

Pour conserver une session de surveillance active en arrière-plan sans risquer de la perdre lors d'une déconnexion SSH, lancez la commande dans une session tmux persistante.

Bande passante par processus avec nethogs

Lancer nethogs

La commande minimale pour surveiller toutes les interfaces réseau actives sur votre serveur Linux :

sudo nethogs

nethogs affiche en temps réel un tableau des processus triés par consommation de bande passante descendante. Chaque ligne indique : le nom du programme, son PID, son UID, et les débits entrant et sortant en KB/s (mode par défaut, correspondant à l'option -v 0). L'empreinte mémoire de l'outil est faible, de l'ordre de quelques Mo de RAM, et il n'impacte pas les performances réseau du serveur.

Options utiles et configurations

Surveiller une interface réseau spécifique (par exemple eth0) :

sudo nethogs eth0

Ajuster le délai de rafraîchissement à 2 secondes (le délai par défaut est 1 seconde d'après la documentation officielle) :

sudo nethogs -d 2

Afficher les débits en MB/s plutôt qu'en KB/s :

sudo nethogs -v 4

Les modes de vue disponibles via l'option -v sont : 0 pour KB/s (défaut), 1 pour total KB, 2 pour total B, 3 pour total MB, et 4 pour MB/s.

Contrôles interactifs pendant l'exécution

Une fois nethogs lancé depuis votre shell, plusieurs touches permettent d'interagir :

  • q : quitter
  • s : trier par trafic envoyé
  • r : trier par trafic reçu
  • m : basculer entre les modes total (KB, MB) et débit (KB/s, MB/s)
  • l : afficher la ligne de commande complète du processus

Exécuter nethogs sans root

Si vous administrez votre serveur dédié avec un compte non privilégié, vous pouvez accorder les capacités réseau nécessaires à l'exécutable :

sudo setcap "cap_net_admin,cap_net_raw+pe" /usr/sbin/nethogs

Après cette opération, nethogs peut être lancé sans sudo. Le chemin peut varier selon votre distribution Linux ; vérifiez avec which nethogs avant d'appliquer la commande. Cette approche est préférable à désactiver les contrôles de sécurité sur un VPS exposé à Internet.

Cas pratiques sur un serveur de jeu

Détecter une saturation réseau

Si vos joueurs signalent des pics de latence, lancez simultanément ss -s et nethogs dans deux fenêtres tmux. ss -s révèle une accumulation de connexions en TIME-WAIT ou une file d'attente Recv-Q non vide. nethogs indique quel processus émet ou reçoit un trafic anormalement élevé. Un processus de backup qui démarre en pleine heure de pointe, un proxy sortant non voulu ou une mise à jour automatique peuvent saturer la bande passante d'un VPS.

Sur un VPS Linux hébergeant un serveur FiveM avec 32 joueurs actifs, un débit sortant supérieur à 10 MB/s sur le processus FXServer est inhabituel et mérite investigation côté scripts et ressources chargées.

Vérifier après une mise à jour

Après une mise à jour du serveur de jeu, relancez nethogs pendant 5 minutes et comparez le profil de trafic avec les logs précédents. Un nouveau script ou une nouvelle dépendance qui contacte une API externe apparaîtra comme un nouveau processus dans la liste, avec une adresse IP de destination distincte visible dans ss.

Identifier un trafic suspect

Si nethogs montre un processus inconnu consommant de la bande passante, notez son PID et inspectez-le depuis le shell :

# Voir la commande complète du processus
cat /proc/<PID>/cmdline | tr '\0' ' '

# Voir les connexions de ce processus avec ss
sudo ss -tnp | grep "pid=<PID>"

Cette séquence permet de confirmer rapidement si le processus est légitime. Combinez-la avec la vérification des logs d'authentification SSH et la consultation des journaux systemd avec journalctl pour un diagnostic complet.

Aller plus loin

La surveillance des connexions réseau s'inscrit dans une démarche plus large de monitoring de votre infrastructure. Après avoir maîtrisé ss et nethogs, les étapes suivantes consistent à automatiser les contrôles via des scripts shell : un script de détection hors service peut inclure un seuil sur le nombre de connexions pour déclencher une alerte. L'outil iostat complète le tableau en corrélant les pics réseau avec les I/O disque. Pour héberger votre serveur de jeu avec la bande passante et les ressources CPU nécessaires, nos offres de VPS Linux et de serveurs dédiés sont dimensionnées pour les charges de jeu en ligne.

Hébergez votre serveur de jeu sur un VPS Linux haute performance avec une bande passante dédiée.

Découvrir nos VPS Linux