QoS Stormshield
Mise en place de la QoS sur un pare-feu Stormshield
Niveau : BTS SIO 2ème année
Durée : 3h
Prérequis : Notions de filtrage réseau, protocoles HTTP et FTP, administration Stormshield de base
🎯 Objectifs pédagogiques
À l'issue de ce TP, l'étudiant sera capable de :
- Comprendre le fonctionnement de la QoS (Quality of Service) sur un pare-feu Stormshield
- Créer et configurer des files d'attente (queues) de qualité de service
- Différencier et prioriser le trafic HTTP et FTP
- Associer des règles QoS à des règles de filtrage
- Vérifier le bon fonctionnement de la politique QoS via les outils de supervision
📚 Rappels théoriques
Qu'est-ce que la QoS ?
La Quality of Service (QoS) est un ensemble de mécanismes permettant de gérer la bande passante réseau en priorisant certains flux au détriment d'autres. Elle permet de garantir un niveau de service pour les applications critiques.
Pourquoi différencier HTTP et FTP ?
| Protocole | Port | Caractéristique | Priorité recommandée |
|---|---|---|---|
| HTTP/HTTPS | 80 / 443 | Navigation web, interactif, sensible à la latence | Haute |
| FTP | 20 / 21 | Transfert de fichiers, tolérant à la latence | Basse |
Le trafic HTTP est interactif : un ralentissement est immédiatement perçu par l'utilisateur.
Le trafic FTP est un transfert de masse : il peut être ralenti sans impact notable sur l'expérience utilisateur, mais il peut saturer la bande passante si non contrôlé.
Mécanismes QoS utilisés par Stormshield
Stormshield implémente la QoS via deux mécanismes :
- PRIQ (Priority Queuing) : file d'attente à priorité stricte. Les paquets des files de haute priorité sont traités en premier.
- CBQ (Class-Based Queuing) : réservation et limitation de bande passante par classe de trafic.
🖥️ Environnement de TP
[PC Étudiant] [VM Debian – Élève X]
192.168.x.y 172.17.x.y
│ Apache + vsftpd
│ VLAN │
┌───┴──────────────┐ ┌──────────────────┐ ┌───────┴──────────┐
│ Stormshield │ │ DMZ │ │ Stormshield │
│ INTERNE ├────────┤ 172.17.0.0/16 ├────────┤ EXTERNE │
│ 192.168.x.254 │ │ │ │ WAN: 10.30.0.0 │
└──────────────────┘ └──────────────────┘ └──────────────────┘
Réseau interne QoS appliquée ici
6 VLANs : 192.168.x.y/16
Convention d'adressage :
- Réseau interne (VLANs) :
192.168.x.y/16- DMZ :
172.17.x.yoù x = numéro de l'élève, y = numéro de la VM- WAN :
10.30.0.0/16
Préparation – Installation de vsftpd sur la VM Debian (DMZ)
Avant de commencer la configuration QoS, installez le serveur FTP sur votre VM Debian :
sudo apt update && sudo apt install vsftpd -y
Éditez la configuration :
sudo nano /etc/vsftpd.conf
Vérifiez ou modifiez ces lignes :
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
Redémarrez et activez le service :
sudo systemctl restart vsftpd && sudo systemctl enable vsftpd
Créez un fichier de test volumineux pour les transferts :
dd if=/dev/urandom of=/home/user/testfile.bin bs=1M count=200
IP de votre serveur FTP :
172.17.X.Y
IP du serveur FTP du voisin à utiliser pour les tests : ___
📝 Travail à réaliser
Partie 1 – Prise en main et état des lieux
1 Vérification de l'état initial
- Allez dans Configuration > Sécurité > Qualité de service
- Demandez a votre voisin de se connecter aux services FTP et HTTP
- Allez dans Supervision > Connexions en cours et observez le trafic actif : récupérer les valeurs
❓ Question 1 : Pourquoi est-il important d'observer le trafic avant de configurer la QoS ?
Partie 2 – Création des files d'attente QoS
2.1 Accéder au module QoS
- Allez dans Configuration > Sécurité > Qualité de service
- Cliquez sur l'onglet Files d'attente
2.2 Créer la file d'attente pour HTTP (haute priorité)
- Cliquez sur Ajouter
- Renseignez les paramètres suivants :
| Paramètre | Valeur |
|---|---|
| Nom | QOS_HTTP |
| Type | PRIQ |
| Priorité | 1 (haute priorité) |
| Commentaire | Trafic HTTP/HTTPS prioritaire |
- Validez avec OK
2.3 Créer la file d'attente pour FTP (basse priorité)
- Cliquez à nouveau sur Ajouter
- Renseignez les paramètres suivants :
| Paramètre | Valeur |
|---|---|
| Nom | QOS_FTP |
| Type | PRIQ |
| Priorité | 7 (basse priorité) |
| Commentaire | Trafic FTP limité |
- Validez avec OK
❓ Question 2 : Dans le mécanisme PRIQ, que se passe-t-il si la file de priorité 1 est constamment remplie ? Quel est le risque pour la file de priorité 7 ?
2.4 Créer une file d'attente par défaut
- Créez une troisième file :
| Paramètre | Valeur |
|---|---|
| Nom | QOS_DEFAULT |
| Type | PRIQ |
| Priorité | 4 (priorité normale) |
| Commentaire | Trafic par défaut |
Partie 3 – Association des files aux interfaces
3.1 Configurer la politique QoS sur l'interface WAN du Stormshield externe
⚠️ Connectez-vous au Stormshield EXTERNE pour cette partie.
- Dans Configuration > Sécurité > Qualité de service, onglet Interfaces
- Sélectionnez l'interface WAN (interface côté
10.30.0.0/16) - Cliquez sur Modifier
- Définissez :
- File d'attente par défaut :
QOS_DEFAULT - File ACK :
QOS_HTTP(les acquittements TCP sont traités en priorité)
- File d'attente par défaut :
- Validez
❓ Question 3 : Sur quelle interface doit-on appliquer la QoS, et dans quel sens ? Justifiez en vous appuyant sur le rôle respectif du Stormshield interne et du Stormshield externe dans cette infrastructure.
Partie 4 – Création des règles de filtrage avec QoS
La QoS s'applique sur le Stormshield externe, au niveau de son interface WAN. C'est lui qui contrôle le trafic sortant vers 10.30.0.0/16. Les règles de filtrage QoS sont donc à créer sur ce pare-feu, avec pour source la DMZ (172.17.0.0/16), seul réseau directement visible depuis le Stormshield externe.
4.1 Accéder aux règles de filtrage
- Allez dans Configuration > Sécurité > Filtrage et NAT
- Sélectionnez la politique de filtrage active
4.2 Créer la règle de filtrage pour HTTP
- Cliquez sur Nouvelle règle > Règle standard
- Configurez la règle :
| Champ | Valeur |
|---|---|
| État | Activée |
| Action | Passer |
| Source | DMZ (172.17.0.0/16) |
| Destination | WAN (10.30.0.0/16) |
| Port destination | http (80) et https (443) |
| File QoS (sortie) | QOS_HTTP |
| Commentaire | HTTP/HTTPS depuis DMZ - Priorité haute |
- Validez
4.3 Créer la règle de filtrage pour FTP
- Ajoutez une nouvelle règle standard :
| Champ | Valeur |
|---|---|
| État | Activée |
| Action | Passer |
| Source | DMZ (172.17.0.0/16) |
| Destination | WAN (10.30.0.0/16) |
| Port destination | ftp (21) et ftp-data (20) |
| File QoS (sortie) | QOS_FTP |
| Commentaire | FTP depuis DMZ - Priorité basse |
- Validez
⚠️ Attention : Vérifiez l'ordre des règles. La règle HTTP doit apparaître avant la règle FTP. Stormshield applique les règles de filtrage de haut en bas et s'arrête à la première correspondance.
4.4 Appliquer la politique
- Cliquez sur Appliquer pour activer les modifications
- Confirmez l'application de la politique
❓ Question 4 : Pourquoi la source des règles QoS est-elle la DMZ (
172.17.0.0/16) et non le réseau interne (192.168.x.y) ? Quel serait l'impact si la règle FTP était placée avant la règle HTTP ?
Partie 5 – Tests et vérifications
5.1 Test du trafic HTTP
- Depuis votre poste, ouvrez un navigateur et sur le serveur Web de votre voisin
- Constatez la fluidité de la navigation
5.2 Test du trafic FTP
- Ouvrez un client FTP (FileZilla ou ligne de commande)
- Connectez-vous au serveur FTP de votre voisin en DMZ :
172.17.X.Y - Lancez le téléchargement du fichier
testfile.bin(200 Mo) - Notez le débit observé : ___
💡 Astuce : En ligne de commande :
ftp 172.17.X.Ypuisget testfile.bin
5.3 Test simultané (scénario de congestion)
- Lancez simultanément :
- Un téléchargement FTP d'un fichier volumineux
- Une navigation web active
- Observez les comportements respectifs
5.4 Supervision dans l'interface Stormshield
- Allez dans Supervision > Qualité de service
- Observez les statistiques de chaque file d'attente :
| File d'attente | Paquets traités | Paquets rejetés | Bande passante utilisée |
|---|---|---|---|
| QOS_HTTP | |||
| QOS_FTP | |||
| QOS_DEFAULT |
- Allez dans Supervision > Connexions en cours
- Filtrez par protocole (HTTP / FTP) et notez les informations
❓ Question 5 : En observant les statistiques, comment confirmez-vous que la QoS fonctionne correctement ? Qu'attendez-vous comme comportement lors d'une saturation de bande passante ?
Partie 6 – Approfondissement – Limitation de bande passante FTP
Pour aller plus loin, nous allons limiter la bande passante maximale allouée au FTP via une file CBQ.
6.1 Modifier la file QOS_FTP en CBQ
- Retournez dans Configuration > Sécurité > Qualité de service > Files d'attente
- Éditez la file
QOS_FTP - Changez le type de
PRIQàCBQ - Configurez :
| Paramètre | Valeur |
|---|---|
| Bande passante garantie | 512 Kbps |
| Bande passante maximale | 2 Mbps |
- Validez et appliquez
6.2 Retester le transfert FTP
- Relancez un téléchargement FTP
- Constatez la limitation de débit dans votre client FTP
- Vérifiez que la navigation HTTP n'est pas affectée
❓ Question 6 : Quelle est la différence entre la bande passante garantie et la bande passante maximale dans une file CBQ ? Dans quel cas le FTP peut-il dépasser la bande passante garantie ?
🔧 Aide – Dépannage courant
| Problème | Cause possible | Solution |
|---|---|---|
| La QoS ne semble pas s'appliquer | La politique de filtrage n'a pas été appliquée | Cliquer sur Appliquer dans le module filtrage |
| Le FTP n'est pas ralenti | La règle FTP est mal positionnée | Vérifier l'ordre des règles de filtrage |
| L'interface WAN n'apparaît pas | Mauvaise dénomination | Vérifier le nom exact dans Configuration > Réseau > Interfaces |
| Statistiques vides en supervision | Pas de trafic généré | Lancer des tests de navigation et transfert FTP |