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.yx = 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

  1. Allez dans Configuration > Sécurité > Qualité de service
  2. Demandez a votre voisin de se connecter aux services FTP et HTTP
  3. 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

  1. Allez dans Configuration > Sécurité > Qualité de service
  2. Cliquez sur l'onglet Files d'attente

2.2 Créer la file d'attente pour HTTP (haute priorité)

  1. Cliquez sur Ajouter
  2. Renseignez les paramètres suivants :
Paramètre Valeur
Nom QOS_HTTP
Type PRIQ
Priorité 1 (haute priorité)
Commentaire Trafic HTTP/HTTPS prioritaire
  1. Validez avec OK

2.3 Créer la file d'attente pour FTP (basse priorité)

  1. Cliquez à nouveau sur Ajouter
  2. Renseignez les paramètres suivants :
Paramètre Valeur
Nom QOS_FTP
Type PRIQ
Priorité 7 (basse priorité)
Commentaire Trafic FTP limité
  1. 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

  1. 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.

  1. Dans Configuration > Sécurité > Qualité de service, onglet Interfaces
  2. Sélectionnez l'interface WAN (interface côté 10.30.0.0/16)
  3. Cliquez sur Modifier
  4. Définissez :
    • File d'attente par défaut : QOS_DEFAULT
    • File ACK : QOS_HTTP (les acquittements TCP sont traités en priorité)
  5. 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

  1. Allez dans Configuration > Sécurité > Filtrage et NAT
  2. Sélectionnez la politique de filtrage active

4.2 Créer la règle de filtrage pour HTTP

  1. Cliquez sur Nouvelle règle > Règle standard
  2. 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
  1. Validez

4.3 Créer la règle de filtrage pour FTP

  1. 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
  1. 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

  1. Cliquez sur Appliquer pour activer les modifications
  2. 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

  1. Depuis votre poste, ouvrez un navigateur et sur le serveur Web de votre voisin
  2. Constatez la fluidité de la navigation

5.2 Test du trafic FTP

  1. Ouvrez un client FTP (FileZilla ou ligne de commande)
  2. Connectez-vous au serveur FTP de votre voisin en DMZ : 172.17.X.Y
  3. Lancez le téléchargement du fichier testfile.bin (200 Mo)
  4. Notez le débit observé : ___

💡 Astuce : En ligne de commande : ftp 172.17.X.Y puis get testfile.bin

5.3 Test simultané (scénario de congestion)

  1. Lancez simultanément :
    • Un téléchargement FTP d'un fichier volumineux
    • Une navigation web active
  2. Observez les comportements respectifs

5.4 Supervision dans l'interface Stormshield

  1. Allez dans Supervision > Qualité de service
  2. 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
  1. Allez dans Supervision > Connexions en cours
  2. 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

  1. Retournez dans Configuration > Sécurité > Qualité de service > Files d'attente
  2. Éditez la file QOS_FTP
  3. Changez le type de PRIQ à CBQ
  4. Configurez :
Paramètre Valeur
Bande passante garantie 512 Kbps
Bande passante maximale 2 Mbps
  1. Validez et appliquez

6.2 Retester le transfert FTP

  1. Relancez un téléchargement FTP
  2. Constatez la limitation de débit dans votre client FTP
  3. 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