Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
network-monitor — Un outil de surveillance des connexions réseau en temps réel conçu avec Rust et GTK4, affichant les connexions actives avec des statistiques I/O en direct dans une interface graphique moderne. | Kitploit
Outils/GitHubGitHub/grigio/network-monitor
Utilitaires GénérauxSniffing et Analyse de PaquetsCartographie RéseauCollecte d'InformationsProtection de la Vie Privée
GitHubgrigio/network-monitor

network-monitor

Un outil de surveillance des connexions réseau en temps réel conçu avec Rust et GTK4, affichant les connexions actives avec des statistiques I/O en direct dans une interface graphique moderne.

Voir le dépôt
2845il y a 5 joursVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Moniteur réseau

Démo de Moniteur réseau sur le bureau GNOME sous Linux

Un outil de surveillance des connexions réseau en temps réel construit avec Rust et GTK4, affichant les connexions actives avec des statistiques d'E/S en direct dans une interface graphique moderne.

rust dependency status

Fonctionnalités

  • Surveillance en temps réel : surveille en continu les connexions réseau actives
  • Statistiques d'E/S : affiche les taux d'envoi/réception en direct pour chaque connexion
  • Identification des processus : affiche le programme et le PID associés à chaque connexion
  • Interface GTK4 moderne : interface graphique propre et réactive avec le style Libadwaita
  • Interface terminal (TUI) : interface terminal interactive avec les mêmes capacités de surveillance
  • Résolution d'adresses : simplifie les adresses courantes (localhost, any, mDNS)
  • Filtrage des connexions : filtre les connexions localhost pour une sortie plus propre
  • Intégration GNOME : prise en charge correcte de la classe WM pour l'épinglage au dock et l'intégration au bureau
  • Double installation : prend en charge l'installation locale à l'utilisateur et à l'échelle du système
  • Gestion robuste des erreurs : récupération complète des erreurs avec des instructions d'installation claires
  • Performances optimisées : mise en cache des processus et de la mise en page pour une meilleure réactivité

Prérequis

  • Rust 1.70+ (édition 2021)
  • Bibliothèques de développement GTK4
  • Bibliothèques de développement Libadwaita
  • Système Linux avec système de fichiers /proc
  • Linux 5.8+ (pour les capacités granulaires eBPF)
  • Rust nightly et bpf-linker (pour la compilation eBPF)

Installation sur Ubuntu/Debian :

root@kitploit:~
sudo apt update
sudo apt install libgtk-4-dev libadwaita-1-dev

Installation sur Fedora :

root@kitploit:~
sudo dnf install gtk4-devel libadwaita-devel

Installation

Méthode 1 : Installer depuis les sources avec intégration au bureau

  1. Clonez le dépôt :
root@kitploit:~
git clone <repository-url>
cd network-monitor
  1. Installez localement (sudo non requis) :
root@kitploit:~
./scripts/install.sh
  1. Ou installez à l'échelle du système (nécessite sudo) :
root@kitploit:~
sudo ./scripts/install.sh

Le script d'installation va :

  • Compiler les binaires GTK4 et TUI (debug en local, release à l'échelle du système)
  • Installer les binaires dans ~/.local/bin/ (local) ou /usr/local/bin/ (système)
  • Installer le fichier .desktop avec la classe WM appropriée pour l'épinglage au dock GNOME
  • Installer les icônes dans les répertoires d'icônes appropriés
  • Mettre à jour le cache d'icônes et la base de données des bureaux
  • Garantir que l'application peut être épinglée au dock/tableau de bord GNOME

Méthode 2 : Compiler et exécuter directement

  1. Clonez le dépôt :
root@kitploit:~
git clone <repository-url>
cd network-monitor
  1. Compilez et exécutez :
root@kitploit:~
cargo run

Ou compilez en mode release :

root@kitploit:~
cargo build --release
./target/release/network-monitor

Méthode 3 : Compiler et exécuter la version TUI

  1. Clonez le dépôt :
root@kitploit:~
git clone <repository-url>
cd network-monitor
  1. Compilez et exécutez la TUI :
root@kitploit:~
cargo build --bin nmt
./target/debug/nmt

Ou compilez en mode release :

root@kitploit:~
cargo build --release --bin nmt
./target/release/nmt

Désinstallation

Supprimer la version installée

Suppression de l'installation locale :

root@kitploit:~
./scripts/uninstall.sh

Suppression à l'échelle du système (nécessite sudo) :

root@kitploit:~
sudo ./scripts/uninstall.sh

Le script de désinstallation supprimera le binaire, le fichier .desktop et les icônes des emplacements appropriés et mettra à jour tous les caches concernés.

Utilisation

Interface graphique GTK4

Lancez l'application de surveillance réseau :

root@kitploit:~
cargo run

L'application ouvrira une fenêtre GTK4 affichant :

  • Processus(ID) : nom du processus et PID avec un mappage précis socket-vers-processus
  • Protocole : protocole TCP/UDP
  • Source : point de terminaison local (résolu dans un format lisible)
  • Destination : point de terminaison distant (résolu dans un format lisible)
  • Statut : état de la connexion (ESTABLISHED, LISTEN, etc.)
  • TX : taux d'envoi calculé à partir des statistiques d'E/S du processus
  • RX : taux de réception calculé à partir des statistiques d'E/S du processus
  • Chemin : chemin complet de la commande et arguments depuis /proc/[pid]/cmdline

Interface terminal (TUI)

TUI nmt de network-monitor

Lancez l'interface terminal :

root@kitploit:~
cargo run --bin nmt

La TUI offre les mêmes capacités de surveillance dans une interface terminal interactive :

Commandes clés :

  • q - Quitter l'application
  • r - Actualiser manuellement les connexions
  • a - Activer/désactiver l'actualisation automatique (intervalles de 2 secondes)
  • ↑/↓ - Naviguer parmi les connexions
  • ←/→ - Faire défiler le tableau horizontalement
  • 1-8 - Trier par colonnes (Processus(ID), Protocole, Source, Destination, Statut, TX, RX, Chemin)

Fonctionnalités :

  • Surveillance des connexions en temps réel avec actualisation automatique
  • Colonnes triables avec indicateurs visuels
  • Défilement horizontal pour les tableaux larges
  • Dimensionnement intelligent des colonnes - la dernière colonne occupe toute la largeur restante
  • Protocoles codés par couleur (TCP/TCP6 en vert, UDP/UDP6 en jaune)
  • Mise en évidence de la connexion active
  • Informations sur le processus et le PID
  • Affichage en direct des taux d'E/S
  • Même ordre des colonnes que la version GTK4 pour la cohérence

Résolution d'adresses

Les adresses courantes sont simplifiées pour la lisibilité :

  • 0.0.0.0:* ou *:* → ANY
  • 127.0.0.1:* ou [::1]:* → LOCALHOST
  • 224.0.0.251:* → MDNS

Comment ça fonctionne

Backend eBPF (piloté par événements)

L'application utilise des kprobes au niveau du noyau (tcp_v4_connect, tcp_v6_connect, tcp_close, inet_csk_accept) au lieu d'interroger /proc/net. Cela offre :

  • Piloté par événements : livraison des événements en moins d'une milliseconde, aucun surcoût d'interrogation (~1 à 3 % du CPU)
  • PID direct : capturé au point de sonde via bpf_get_current_pid_tgid(), sans analyse des inodes
  • Connexions de courte durée : jamais manquées entre les intervalles d'interrogation

Mode eBPF

Le backend eBPF fournit une surveillance des connexions pilotée par événements avec un surcoût réduit et des événements en temps réel, par rapport à l'approche d'interrogation par défaut de /proc/net. Il peut capturer les connexions de courte durée que l'interrogation pourrait manquer.

Prérequis :

root@kitploit:~
rustup toolchain install nightly
cargo install bpf-linker

Compiler et exécuter :

root@kitploit:~
cargo build

Exécuter en tant qu'utilisateur normal (noyau 5.8+ requis) :

Accordez une fois les capacités Linux requises au binaire :

root@kitploit:~
sudo setcap cap_bpf,cap_net_admin,cap_perfmon+ep target/debug/network-monitor
./target/debug/network-monitor

Ou pour la version TUI :

root@kitploit:~
sudo setcap cap_bpf,cap_net_admin,cap_perfmon+ep target/debug/nmt
./target/debug/nmt

Pour les compilations release, ajustez le chemin en conséquence :

root@kitploit:~
sudo setcap cap_bpf,cap_net_admin,cap_perfmon+ep target/release/network-monitor

L'application se fermera avec un message de configuration si eBPF n'est pas disponible (capacités manquantes ou noyau non pris en charge).

Architecture

  • GTK4 : framework d'interface graphique moderne multiplateforme
  • Libadwaita : composants d'interface de style GNOME
  • Tokio : runtime asynchrone pour les opérations concurrentes
  • Aya + eBPF : traçage des connexions au niveau du noyau avec des kprobes pour des événements en temps réel
  • PID direct : identification du processus via bpf_get_current_pid_tgid() au point de sonde
  • Appels système : lecture directe de /proc/[pid]/io pour les statistiques d'E/S
  • Gestion des erreurs : types d'erreurs complets avec récupération gracieuse via thiserror
  • Cache de performance : mise en cache de la mise en page de l'interface pour des performances optimales

Paquets Linux

Packaging status

Dons

Si vous trouvez ce projet utile, envisagez de faire un don pour soutenir son développement.

  • Monero : 88LyqYXn4LdCVDtPWKuton9hJwbo8ZduNEGuARHGdeSJ79BBYWGpMQR8VGWxGDKtTLLM6E9MJm8RvW9VMUgCcSXu19L9FSv
  • Bitcoin : bc1q6mh77hfv8x8pa0clzskw6ndysujmr78j6se025

Licence

Ce projet est open source. Consultez le fichier LICENSE pour plus de détails.

Télécharger l’outil