Aller au contenu principal

Chapitre 7.4 - Outils Réseau

Objectifs d'Apprentissage​

À la fin de ce chapitre, vous serez capable de:

  • Utiliser les outils de diagnostic réseau
  • Monitorer les connexions réseau
  • Analyser le trafic réseau
  • Comprendre les ports et services
  • Troubleshooter les problèmes réseau

Outils de Diagnostic​

ping - Test de Connectivité​

# Ping simple
ping google.com
ping 8.8.8.8

# Nombre limité
ping -c 4 google.com

# Intervalle
ping -i 2 google.com # Toutes les 2 secondes

# Taille paquet
ping -s 1000 google.com # 1000 bytes

# Timeout
ping -W 5 google.com # 5 secondes

traceroute - Tracer le Chemin​

# Tracer route
traceroute google.com

# Avec tracepath (iputils)
tracepath google.com

# Nombre de sauts max
traceroute -m 15 google.com

# Avec mtr (temps réel)
sudo apt install mtr
mtr google.com

Connexions et Ports​

ss - Socket Statistics (Moderne)​

# Toutes les connexions
ss -tuln

# Options:
# -t: TCP
# -u: UDP
# -l: Listening (écoute)
# -n: Numérique (pas de résolution)
# -p: Processus
# -a: Toutes

# Connexions TCP
ss -tn

# Connexions UDP
ss -un

# Ports en écoute
ss -tuln | grep LISTEN

# Connexions établies
ss -tn | grep ESTAB

# Par processus
ss -tulnp

# Par port
ss -tuln sport = :80
ss -tuln dport = :443

netstat - Network Statistics (Classique)​

# Installer si nécessaire
sudo apt install net-tools

# Toutes les connexions
netstat -tuln

# Avec processus
netstat -tulnp

# Connexions établies
netstat -tn

# Statistiques
netstat -s

lsof - List Open Files​

# Ports ouverts par processus
sudo lsof -i

# Port spécifique
sudo lsof -i :80
sudo lsof -i :443

# TCP seulement
sudo lsof -iTCP

# Par processus
sudo lsof -i -p 1234

Analyse du Trafic​

tcpdump - Capture de Paquets​

# Installer
sudo apt install tcpdump

# Capturer tout
sudo tcpdump -i eth0

# Nombre limité
sudo tcpdump -c 10 -i eth0

# Filtres
sudo tcpdump -i eth0 host 8.8.8.8
sudo tcpdump -i eth0 port 80
sudo tcpdump -i eth0 tcp port 443

# Sauvegarder
sudo tcpdump -i eth0 -w capture.pcap

# Lire fichier
tcpdump -r capture.pcap

wireshark - Analyseur Graphique​

# Installer
sudo apt install wireshark

# Lancer (GUI)
wireshark

# Ou en ligne de commande
tshark -i eth0

Informations Réseau​

iftop - Bandwidth Monitor​

# Installer
sudo apt install iftop

# Monitorer interface
sudo iftop -i eth0

# Affiche: connexions, bande passante utilisée

nethogs - Par Processus​

# Installer
sudo apt install nethogs

# Monitorer
sudo nethogs

# Interface spécifique
sudo nethogs eth0

bmon - Bandwidth Monitor​

# Installer
sudo apt install bmon

# Monitorer
bmon

# Interface spécifique
bmon -p eth0

Firewall et iptables​

Voir les Règles​

# iptables
sudo iptables -L -n -v

# Avec numéros de ligne
sudo iptables -L -n -v --line-numbers

# Par table
sudo iptables -t nat -L -n -v
sudo iptables -t mangle -L -n -v

ufw (Ubuntu Firewall)​

# Statut
sudo ufw status

# Activer
sudo ufw enable

# Règles
sudo ufw allow 22/tcp
sudo ufw deny 80/tcp
sudo ufw delete allow 80/tcp

Informations Système​

Statistiques Réseau​

# Statistiques interfaces
ip -s link show

# Statistiques détaillées
cat /proc/net/dev

# Statistiques par protocole
cat /proc/net/snmp

Informations Interface​

# Avec ethtool
ethtool eth0
ethtool -S eth0 # Statistiques
ethtool -i eth0 # Informations driver

# Avec ip
ip -d link show eth0

Scripts Utiles​

Vérification Complète​

#!/bin/bash
# Diagnostic réseau complet

echo "=== Interfaces ==="
ip addr show

echo "=== Routes ==="
ip route show

echo "=== DNS ==="
cat /etc/resolv.conf

echo "=== Connexions ==="
ss -tuln

echo "=== Test connectivité ==="
ping -c 2 8.8.8.8

echo "=== Ports en écoute ==="
ss -tuln | grep LISTEN

Monitoring Bandwidth​

#!/bin/bash
# Monitorer bande passante

INTERFACE="eth0"

while true; do
RX_BYTES=$(cat /sys/class/net/$INTERFACE/statistics/rx_bytes)
TX_BYTES=$(cat /sys/class/net/$INTERFACE/statistics/tx_bytes)

sleep 1

RX_BYTES_NEW=$(cat /sys/class/net/$INTERFACE/statistics/rx_bytes)
TX_BYTES_NEW=$(cat /sys/class/net/$INTERFACE/statistics/tx_bytes)

RX_RATE=$(( (RX_BYTES_NEW - RX_BYTES) / 1024 ))
TX_RATE=$(( (TX_BYTES_NEW - TX_BYTES) / 1024 ))

echo "RX: ${RX_RATE} KB/s TX: ${TX_RATE} KB/s"
done

Résumé​

Dans ce chapitre, vous avez appris:

Diagnostic: ping, traceroute, mtr
Connexions: ss (moderne), netstat (classique), lsof
Analyse: tcpdump, wireshark pour capture
Monitoring: iftop, nethogs, bmon pour bande passante
Firewall: iptables, ufw pour règles
Statistiques: /proc/net/, ip -s, ethtool
Scripts: Automatisation diagnostics


Prochaines Étapes​

Module 8: Services et Démon (avec crons avancés)
Module 9: Sécurité Système


Chapitre créé le: Décembre 2024