L'un des meilleurs moyens de connaître l'état d'une infrastructure informatique est d'analyser son réseau, car des centaines de processus, services et éléments doivent y passer qui permettent une communication optimale entre tous les ordinateurs et utilisateurs du réseau et permettent ainsi que tout fonctionne comme attendu. Il existe de nombreux outils qui nous aident à optimiser et à surveiller tout ce qui se passe sur le réseau et cela est vital car nous pouvons avoir une longueur d'avance sur ce qui se passe dans l'environnement réseau avant que cela ne se produise et l'un de ces outils est ngrep.
Solvetic expliquera comment utiliser ngrep sous Linux pour obtenir les meilleures statistiques de réseau sous Linux.
Qu'est-ce que ngrepNgrep est un outil dont le fonctionnement est similaire à grep qui est appliqué au niveau de la couche réseau et correspond essentiellement au trafic généré via une interface réseau. Ngrep fonctionne avec différents types de protocoles tels que IPv4 / 6, TCP, UDP, ICMPv4 / 6, IGMP et Raw sur un certain nombre d'interfaces définies et prend en charge la logique de filtrage BPF.
En utilisant ngrep, il sera possible de spécifier une expression régulière ou hexadécimale étendue pour correspondre aux charges utiles des données système.
CompatibilitéNgrep peut fonctionner sur les systèmes d'exploitation suivants :
- Linux 2.0+ (RH6+, SuSE, TurboLinux, Debian, Gentoo, Ubuntu, Mandrake, Slackware) / x86, RedHat / alpha Cobalt, (Qube2) Linux / MIPS
- Solaris 2.5.1, 2.6 / SPARC, Solaris 7, Solaris 8 / SPARC, Solaris 9 / SPARC
- FreeBSD 2.2.5, 3.1, 3.2, 3.4-RC, 3.4-RELEASE, 4.0, 5.0
- OpenBSD 2.4, 2.9, 3.0, 3.1+
- NetBSD 1.5 / SPARC
- Numérique Unix V4.0D (OSF/1), Tru64 5.0, Tru64 5.1A
- HP-UX 11
- IRIX
- AIX 4.3.3.0/PowerPC
- BeOS R5
- Mac OS X 10+
- GNU HURD
- Windows 95, 98, NT, 2000, XP, 2003/x86, 7, 8, 8.1, 10
1. Installer la commande ngrep sur Linux
Ngrep est disponible pour l'installation à partir des référentiels système par défaut dans les distributions Linux via l'outil de gestion de packages, pour cela, nous exécuterons la commande suivante pour l'installation en fonction de la distribution utilisée.
Nous entrons la lettre S pour confirmer le téléchargement et l'installation du package ngrep. Une fois l'installation de ngrep terminée, il sera possible de commencer à analyser le trafic réseau sur Linux et ainsi accéder aux informations vitales de ce segment.
sudo apt installer ngrep sudo yum installer ngrep sudo dnf installer ngrep
AGRANDIR
2. Utiliser la commande ngrep sous Linux
Étape 1
Avec la commande suivante, il sera possible de faire correspondre toutes les requêtes ping dans l'interface de travail par défaut du serveur, pour cela, nous devons ouvrir un autre terminal et pinger une autre machine distante. Ensuite, nous allons utiliser le paramètre -q qui indique à ngrep ce qu'il doit fonctionner en silence afin de ne générer aucune information autre que les en-têtes de paquets et les charges utiles respectives, nous pouvons exécuter ce qui suit :
sudo ngrep -q "." "Tcp"
AGRANDIR
Étape 2
Pour terminer la capture du trafic, nous utilisons les clés suivantes :
Ctrl + C
Étape 3
Si nous voulons faire correspondre uniquement le trafic d'un site de destination particulier, nous devons exécuter la commande suivante, puis essayer d'accéder à ce site à partir d'un navigateur :
sudo ngrep -q "." "Hébergeur google.com"
Étape 4
En cas de navigation sur le Web, nous pouvons exécuter la commande suivante pour contrôler les fichiers demandés par le navigateur :
sudo ngrep -q 'GET. * HTTP / 1. [01]'
AGRANDIR
Étape 5
Pour voir toute l'activité qui s'exécute sur le port source ou destination 25 (SMTP), nous allons exécuter la commande suivante :
sudo ngrep port 25
AGRANDIR
Étape 6
Si nous voulons surveiller le trafic syslog basé sur le réseau qui correspond au mot « erreur », nous utiliserons la commande suivante :
sudo ngrep -d tout "erreur" port 514Étape 7
L'utilitaire ngrep peut convertir les noms de port de service stockés dans /etc/services (sur les systèmes de type Unix comme Linux) en numéros de port. ngrep peut être exécuté sur un serveur HTTP (port 80), qui correspondra à toutes les requêtes adressées à l'hôte de destination, pour cela nous exécutons :
sudo ngrep port 80
AGRANDIR
Étape 8
Dans ce résultat, toutes les transmissions d'en-tête HTTP affichent des détails d'indentation, mais de cette façon, son analyse est, pour améliorer sa gestion, nous pouvons utiliser le mode byline -W comme celui-ci.
sudo ngrep -W byline port 80
AGRANDIR
Étape 9
Pour imprimer les résultats avec un horodatage au format AAAA / MM / JJ HH : MM : SSUUUUUU lors de la combinaison d'un forfait, il faudra utiliser le paramètre -t Alors:
sudo ngrep -t -W byline port 80
Étape 10
Si l'on veut éviter que l'interface soit surveillée en mode promiscuité, ce mode intercepte et lit chaque paquet réseau qui arrive au total, il faudra ajouter le flag -p :
sudo ngrep -p -W byline port 80Étape 11
Une autre alternative à utiliser est le paramètre -N qui s'applique si nous détectons des protocoles bruts ou inconnus. Ce paramètre est chargé de dire à ngrep d'afficher le numéro de sous-protocole ainsi que l'identifiant de caractère unique, pour cela nous exécutons :
sudo ngrep -N -W byline
Étape 12
Enfin, pour obtenir plus d'aide de ngrep, nous pouvons exécuter :
homme ngrepAinsi, l'utilitaire ngrep devient une solution idéale pour surveiller tout ce qui est associé au réseau dans les environnements Linux avec des résultats détaillés et complets.