Project Oxygen & Ideo-LabIDEO LAB Dashboard 2026
Voici une version propre + alignée (une seule ligne dédiée), avec largeurs harmonisées, hover/focus, et un rendu “pill” moderne. Tu remplaces juste ton bloc actuel par ce HTML, et tu ajoutes ce CSS.

🛡️ FortiGate Enterprise – Security & SD-WAN Deep Dive

Ingénierie Fortinet : Architecture ASIC, FortiOS Kernel, SD-WAN Orchestration & VPN ZTNA.

1

Hardware & SPU

ASIC NP7, CP9, SoC4. Hardware Acceleration & FastPath.

NP7CP9ASIC
0

Architecture & concepts

FortiOS, dataplane/CP, sessions, stateful, interfaces, zones, objets.

FondationsIndispensable
1

Modes : NAT vs Transparent

Cas d’usage, pièges, impact sur routing/NAT, migration.

ModeEdgeDesign
2

Objets & adressage

Address/Service objects, groups, FQDN, IP ranges, ISDB.

ObjectsPolicy
3

Policies & NAT

Ordre, implicites, central NAT, VIP, hairpin, U‑turn.

FirewallCritiqueNAT
4

Inspection : flow vs proxy

UTM, AV/IPS/WebFilter, performance, logs, compat apps.

SecurityPerformance
5

SSL Inspection

Certificats, deep vs certificate inspection, exceptions, débogage.

TLSPiègeUTM
6

SD‑WAN

SLA, health checks, steering, règles, overlay, multi‑ISP.

WANTrès demandé
7

VPN : IPsec & SSL‑VPN

Phases, proposals, DPD, NAT‑T, split‑tunnel, MFA.

RemoteSite‑to‑SiteMTU
8

Haute disponibilité (HA)

A‑P/A‑A, heartbeat, session sync, split‑brain, maintenance.

ResilienceProd
2

FortiOS Internal

Proxy vs Flow mode, Conserve Mode, IPS Engine & WAD.

Flow-basedWADIPS
3

SD-WAN Orchestration

SLA Performance, ADVPN, Steering Rules & Load Balance.

ADVPNSLAOverlay
4

Policies & NGFW

ISDB, Application Control, SSL Inspection (DPI).

DPIISDBProfiles
5

VPN & ZTNA

IKEv2, SSL-VPN Portal, ZTNA Tags & Endpoint posture.

ZTNAIPsecEMS
6

High Availability (HA)

FGCP Cluster, FGSP, Virtual Clustering & Session Sync.

Active-PassiveFGSPSync
1.1 Ingénierie Hardware : SPU, ASIC & Parallélisation du Flux (V7.6 Expert)
NP7 : Le moteur de commutation Terabit

L'ASIC **NP7** (Network Processor 7) est conçu pour le déchargement matériel complet des flux de couches 3 et 4. Contrairement à un traitement CPU classique, le NP7 traite les paquets via des pipelines matériels en parallèle, garantissant une latence ultra-faible (< 2μs).

CapacitéMétrique (Gate 1800F+)Impact Performance
Throughput Firewall198 Gbps / NP7Vitesse filaire sans gigue.
IPsec VPN160 Gbps (AES-GCM)Chiffrement Hardware natif.
Sessions/Sec4 Million CPSÉvite la saturation du kernel.
Concurrent Sessions40 MillionsScalabilité Data Center.
Fonctions Hardware Offloadées :
  • IPv4/IPv6 Unicast/Multicast : Routage et NAT 1:1, PAT sans impact CPU.
  • DoS Protection : Filtrage hardware des floods TCP/UDP/ICMP au niveau du silicium avant l'entrée dans le kernel.
  • VXLAN/GRE/GTP : Encapsulation hardware pour les réseaux SD-WAN et 5G Core.
  • Capwap Offload : Accélération du trafic Wi-Fi provenant des FortiAP.
Architecture Interne NP7
                            # Mapper les interfaces physiques sur les ASIC NP
                            diagnose npu np7 port-list

                            # Monitorer l'utilisation des pipelines (Host vs Offload)
                            diagnose npu np7 session-stats
                            # Si "v4 offload" est > 90% = Configuration Optimale
Note : Le NP7 supporte le Traffic Shaping Hardware, permettant de garantir la QoS sans consommer de cycles CPU.
CP9 : Content Processor & Cryptographie

Le **CP9** agit comme un coprocesseur pour les tâches d'inspection de contenu "Out-of-band". Il n'est pas sur le chemin direct des paquets, mais le CPU lui délègue les calculs lourds.

Détails de l'accélération L7 :
  • SSL/TLS 1.3 Inspection (DPI) : Déchargement des handshakes RSA/ECDSA. Le CP9 gère le déchiffrement symétrique à la volée pour l'IPS.
  • IPS Pattern Matching : Moteur de signatures hardware. Les flux sont comparés aux bases de données de menaces en une seule passe.
  • Antivirus Sandboxing : Scan des flux de fichiers (Gzip, ZIP, PDF) sans ralentir le CPU.
  • True IPsec Engine : Génère les clés de session et gère l'anti-replay.
Efficacité CP9 vs CPU
FeatureSoftware (CPU)Hardware (CP9)
SSL InspectionSurcharge massive (>80%)Négligeable (<5%)
Handshakes / Sec~2,000~50,000+
Compression GzipLatence élevéeLine-speed
                            # Vérifier la charge des moteurs de contenu
                            diagnose hardware sysinfo cp9
                            # Voir le décompte des fichiers scannés par le CP
FastPath : Le Saint Graal de la performance

Lorsqu'un flux réseau est détecté, FortiOS suit un processus strict de décision d'accélération (Offload eligibility).

ALGORITHME DE DÉCISION DU KERNEL
1. SYN Packet : Arrive au CPU (Slow Path). Vérification de la table de routage. 2. Policy Match : Recherche de la règle de Firewall (Policy ID). 3. Security Check : Si UTM = Proxy-Mode, le paquet reste au CPU. Si Flow-Mode = Éligible NP. 4. NPU Programming : Le CPU injecte la signature du flux dans la table de session de l'ASIC. 5. Offload (FastPath) : Tous les paquets restants (DATA, ACK) bypassent le kernel FortiOS.
Conditions bloquant l'offload (No_Ofld) :
  • Sessions avec Authentification Captive Portal.
  • Trafic avec options IP (Source Routing, etc.).
  • Certaines configurations de Sniffer/Mirroring.
  • Politiques avec profil SSL-Inspection en mode **Proxy**.
Gestion de la RAM et Mécanismes de Survie

Le **Conserve Mode** est un état critique où le FortiGate protège son intégrité système face à une saturation mémoire.

Seuil (RAM %)ÉtatActions du FortiGate
< 82%Vert (Normal)Fonctionnement standard.
> 88%Jaune (Warning)Déclenchement du Conserve Mode. Les nouvelles sessions peuvent être limitées.
> 95%Rouge (Extreme)Hard Conserve Mode : Rejet de toutes les nouvelles sessions. Drop des paquets.
Impact sur les moteurs de sécurité :
  • AV Fail-open : Si activé, laisse passer les fichiers sans scan. Si désactivé, bloque tout.
  • IPS Engine : Réduction du nombre de signatures inspectées pour économiser la RAM.
Commandes de diagnostic de bas niveau
Investigation Sessions :
                            # Lister les sessions et identifier les "dirty" (non-offload)
                            get system session list
                            # Chercher le flag "no_ofld" ou "dirty"

                            # Voir l'occupation temps réel des SPU (NP/CP)
                            get system performance status
Investigation Hardware :
                            # Statistiques d'erreurs sur l'ASIC NP
                            diagnose npu np7 stats list

                            # Voir si le trafic IPsec est réellement accéléré
                            diagnose vpn ipsec status
                            # Chercher "asym_crypto" vs "hw_crypto"
0.1 FortiOS Foundations: Control Plane, Data Plane & Session State Logic
Structure du Système d'Exploitation

FortiOS est un système d'exploitation durci basé sur un noyau Linux modifié, optimisé pour le traitement réseau à haute performance. Son architecture repose sur la séparation stricte des plans de contrôle et de données.

  • Control Plane (CP) : Géré par le CPU principal. Responsable du management (GUI/CLI), des protocoles de routage (BGP/OSPF) et de la mise à jour des signatures FortiGuard.
  • Data Plane (DP) : Géré par les processeurs de sécurité (SPU/ASIC). Responsable du transit des paquets, du chiffrement et de l'inspection IPS/AV.
  • Management Plane : Isolé pour garantir l'accès à l'unité même lors de saturations du plan de données.
Schéma d'Architecture FortiOS
ComposantRôle Principal
KernelGestion des ressources et drivers
IPS EngineInspection Flow-based L7
WADProcessus Proxy-based (Web/SSL)
L'Inspection d'État (Stateful Firewall)

Contrairement aux routeurs ACL, le FortiGate maintient une **Session Table**. Il ne vérifie la politique de sécurité que pour le premier paquet (SYN) d'un flux.

LES ÉTATS D'UNE SESSION TCP
1. NONE : Session créée, en attente de réponse (SYN envoyé). 2. ESTABLISHED : Handshake 3-way terminé. Prêt pour l'offload ASIC. 3. FIN_WAIT : Demande de fermeture de connexion initiée. 4. CLOSE_WAIT : Fermeture confirmée, session bientôt purgée de la table.
Paramètres de Session Critiques :
  • TTL (Time To Live) : Durée avant expiration d'une session inactive (Défaut TCP: 3600s).
  • Session Pickup : Capacité à synchroniser l'état des sessions avec un membre HA.
  • Dirty Flag : Indique qu'une session doit être réévaluée suite à un changement de politique.
Organisation Logique & Abstraction
Interfaces & Zones

Les **Zones** regroupent plusieurs interfaces physiques ou virtuelles (VLAN, IPsec) pour simplifier l'écriture des politiques.

  • Intra-zone blocking : Par défaut, le trafic entre deux interfaces d'une même zone est bloqué.
  • Virtual IPs (VIP) : Utilisées pour le NAT entrant (Destination NAT).
Objets de Sécurité

Utilisation d'objets pour éviter la duplication de configuration.

                            # Exemple d'objet adresse dynamique (FQDN)
                            config firewall address
                            edit "Google_DNS"
                            set type fqdn
                            set fqdn "dns.google"
                            next
                            end
Le Parcours Interne d'un Paquet (Flow-based)

Processus d'ingestion et de traitement par le moteur FortiOS.

SÉQUENCE DE TRAITEMENT KERNEL
1. Ingress : Arrivée physique, dé-encapsulation VLAN/IPsec. 2. DoS / Sanity : Vérification de l'intégrité IP et protection anti-flood. 3. Routing Lookup : Détermination de l'interface de sortie (FIB). 4. Policy Lookup : Match avec les règles de Firewall (Policy ID). 5. UTM / Security : Scan IPS, AV, WebFilter (Flow-mode). 6. Egress : SNAT, ré-encapsulation et émission physique.
VDOM : Virtual Domains

Permet de diviser un seul FortiGate physique en plusieurs unités logiques indépendantes, chacune avec sa propre table de routage et ses politiques.

CaractéristiqueDétails Techniques
Multi-TenancyIsolation totale des clients ou départements.
Inter-VDOM linksInterfaces virtuelles pour router entre VDOMs sans câble physique.
Global SettingsRessources partagées (CPU/RAM/Certificats) gérées au niveau "Global".
Outils de Vérification Système
Statut Global :
                            # Voir la version, l'uptime et le mode VDOM
                            get system status

                            # Vérifier l'utilisation CPU/RAM par core
                            get system performance status
Table de Session :
                            # Compter le nombre de sessions actives
                            get system session status

                            # Voir les sessions en temps réel
                            diagnose sys session list
Fondation : Une session FortiGate est identifiée par un tuple de 5 valeurs : IP Source, IP Dest, Port Source, Port Dest et Protocole.
1.1 Operational Modes: NAT/Route vs Transparent (TP) Mode Engineering
NAT/Route Mode : Le standard Gateway

Dans ce mode, le FortiGate agit comme un routeur de couche 3 (Hop-by-hop). Chaque interface possède sa propre adresse IP et son propre domaine de broadcast.

Caractéristiques Techniques :
  • L3 Gateway : Passerelle par défaut pour les clients internes.
  • Routing Table : Support complet de BGP, OSPF, ISIS et routage statique.
  • NAT/PAT : Translation d'adresses source (SNAT) et destination (VIP/DNAT).
  • Acceleration : Optimisation maximale via les processeurs NP7/NP6 (FastPath).
Déploiement Type (Edge)
                            # Vérifier le mode actuel (Défaut: NAT)
                            get system status | grep "Operation Mode"

                            # Configuration IP en mode NAT
                            config system interface
                            edit "wan1"
                            set mode static
                            set ip 1.2.3.4 255.255.255.252
                            next
                            end
Transparent Mode : Le Firewall "Furtif"

Le FortiGate s'insère dans un réseau existant comme un pont (Bridge) de couche 2. Il ne possède pas d'IP sur ses interfaces de données et n'altère pas les paquets IP (pas de routage).

Cas d'usage critiques :
  • Insertion non-intrusive : Ajout de sécurité sans modifier le plan d'adressage IP existant.
  • Internal Segmentation : Filtrage entre un routeur et un switch sans changer les passerelles.
  • Layer 2 IPS : Analyse des flux au niveau MAC.
Limites du mode TP :
  • Pas de VPN SSL (Tunnel mode) car pas d'IP de terminaison.
  • Pas de Dynamic Routing (BGP/OSPF).
  • Nécessite une IP de Management dédiée pour l'administration.
                            # Basculer en mode Transparent
                            config system settings
                            set opmode transparent
                            set manageip 192.168.1.99 255.255.255.0
                            set gateway 192.168.1.1
                            end
Comparaison Systémique des Modes
FonctionnalitéMode NAT/RouteMode Transparent
Changement d'IPObligatoire (Gateway)Nul (Bridge L2)
RoutageInclus (RIB/FIB)Exclu (ARP/FDB)
VPN IPsecFull SupportSupporté (Site-to-Site)
VPN SSLFull SupportLimité (Web-mode via ManageIP)
InspectionFlow & ProxyFlow & Proxy (WAD/IPS)
Spanning TreeIgnoréSupporté (Forwarding BPDU)
Migration : Points de vigilance majeurs

Le changement de mode opérationnel **supprime l'intégralité de la configuration** (Interfaces, Policies, Objects).

Avertissement : Toujours effectuer un Backup complet avant de changer le opmode.
FLUX DE MIGRATION NAT ➔ TP
1. Backup : Exporter le fichier .conf. 2. Mode Change : Exécuter set opmode transparent via CLI. 3. Manage IP : Configurer l'IP d'administration et la passerelle par défaut. 4. Policies : Réécrire les règles de firewall (Source Interface ➔ Dest Interface). 5. STP : Vérifier la topologie L2 pour éviter les boucles réseau.
Le Design Hybride via VDOMs

La puissance de FortiOS permet d'exécuter les deux modes simultanément sur le même matériel en utilisant la virtualisation VDOM.

  • VDOM-Root (NAT) : Gère le WAN et le routage vers le Core.
  • VDOM-Seg (TP) : Inséré entre deux segments internes pour du filtrage L2.
  • Inter-VDOM Links : Interfaces virtuelles permettant de passer du mode TP au mode NAT sans sortie physique.
Outils de Diagnostic spécifiques au mode
Mode Transparent (L2) :
                            # Voir la table d'apprentissage MAC (FDB)
                            diagnose netlink brctl name host 

                            # Vérifier le statut du Spanning Tree
                            diagnose netlink brctl list
Mode NAT (L3) :
                            # Voir la table de routage active
                            get router info routing-table all

                            # Vérifier les translations NAT
                            diagnose firewall ippool list
1.2 Object Management: Address, Service, ISDB & Dynamic Mapping
Types d'Objets d'Adressage

FortiOS propose plusieurs méthodes pour définir une cible réseau. Le choix du type d'objet impacte la manière dont le kernel traite le paquet.

TypeUsage TechniqueNote Expert
SubnetFormat CIDR (ex: 10.0.0.0/24)Le plus efficace (Static Match).
IP RangePlage début-fin (ex: 10.0.0.10-20)Utile pour les pools DHCP.
FQDNNom DNS (ex: *.microsoft.com)Résolu par le démon dnsproxy.
WildcardMasque variable (ex: 172.16.0.0/0.0.255.0)Pour des topologies complexes.
Cycle de résolution FQDN
                            # Configurer un objet FQDN avec cache local
                            config firewall address
                            edit "Microsoft_Update"
                            set type fqdn
                            set fqdn "update.microsoft.com"
                            set cache-ttl 3600
                            next
                            end
ISDB : La puissance du Cloud FortiGuard

L'ISDB contient des millions d'IPs et de ports classés par service (SaaS, PaaS, GeoIP). Elle permet d'autoriser "Microsoft Office 365" sans connaître ses milliers d'adresses.

  • Objets Multidimensionnels : Un seul objet ISDB peut contenir des flux TCP, UDP et des protocoles spécifiques.
  • Mises à jour automatiques : Synchronisé via FortiGuard toutes les heures.
  • Reputation Scores : Certains objets incluent des scores de réputation pour bloquer les Botnets.
Expert Tip : Utilisez les objets ISDB dans le routage SD-WAN pour un pilotage applicatif ultra-précis.
                            # Chercher un ID de service ISDB
                            diagnose firewall internet-service list | grep "Netflix"

                            # Vérifier les IPs chargées en RAM
                            diagnose firewall internet-service match 8.8.8.8 255.255.255.255
Objets de Services : Protocoles et Ports

Les services définissent la couche 4 (TCP/UDP/SCTP/ICMP). FortiOS utilise des **Session Helpers** pour les protocoles complexes (FTP, SIP, SIP-ALG).

Groupes de Services :

Permet de regrouper "HTTP", "HTTPS" et "DNS" dans un seul objet "Web_Browsing" pour alléger les politiques.

  • Service Custom : Ports spécifiques (ex: TCP 8080-8090).
  • ICMP Type/Code : Précision fine pour le troubleshooting.
                            config firewall service custom
                            edit "App_Custom_TCP"
                            set tcp-portrange 9000-9005
                            set comment "Internal App Port"
                            next
                            end
Adressage Dynamique & Connecteurs SDN

Le FortiGate peut importer des objets dynamiquement depuis AWS, Azure, VMware ou FortiClient EMS.

FLUX DE SYNCHRONISATION SDN
1. API Connection : Le FortiGate se connecte à l'API (ex: Azure). 2. Tag Retrieval : Récupération des instances avec le tag "Role:WebServer". 3. Dynamic Address : Création automatique d'un objet contenant les IPs actuelles. 4. Real-time Update : Si une instance scale-up, l'objet est mis à jour en < 10s.
Hygiène de Configuration des Objets
  • Naming Convention : Utilisez des préfixes (ex: H_ pour Host, N_ pour Network, G_ pour Group).
  • UUID : Chaque objet possède un identifiant unique universel pour le tracking FortiManager.
  • Color-Coding : Utilisez les couleurs dans la GUI pour différencier les zones (ex: Rouge pour DMZ, Vert pour LAN).
  • Unused Objects : Supprimez régulièrement les objets orphelins (Ref. count = 0) pour alléger la RAM.
Outils de Diagnostic CLI
Vérification de la base d'adresses :
                            # Voir le nombre de références par objet
                            diagnose firewall address list

                            # Vérifier la résolution FQDN
                            diagnose test application dnsproxy 7
Debug SDN / Dynamic :
                            # Voir les objets SDN importés
                            diagnose firewall dynamic list

                            # Forcer une mise à jour ISDB
                            execute update-now
1.3 Firewall Policy Engine & NAT Engineering: Flow Control, VIP & Hairpinning
L'algorithme de Matching FortiOS

FortiOS traite les politiques de manière séquentielle (Top-to-Bottom). La première règle qui correspond au tuple (Interface In/Out, Source/Dest, Service) est appliquée.

Règles Implicites :
  • Policy 0 (Deny All) : Située à la fin de chaque VDOM. Tout ce qui n'est pas autorisé est droppé et logué (si activé).
  • Intra-Zone Traffic : Par défaut, le trafic au sein d'une même zone est bloqué sauf si "Internal Segmentation" est configurée.

Hit Count : Utilisez le compteur de correspondance pour identifier les règles obsolètes et optimiser la RAM.

Séquence de Matching
                            # Voir l'ordre réel des politiques en CLI
                            show firewall policy

                            # Déplacer une règle pour changer la priorité
                            move firewall policy 10 before 5
Architecture NAT : Deux Philosophies

Le NAT (Network Address Translation) peut être géré de deux manières dans FortiOS.

CaractéristiquePolicy-based NAT (Défaut)Central NAT (Mode ASA/PaloAlto)
ConfigurationDirectement dans la règle de firewall.Table NAT séparée de la table Security.
VisibilitéSimple pour les petits setups.Indispensable pour les règles massives.
SouplesseNAT lié à l'Action "Accept".NAT indépendant de l'acceptation.
Usage IP PoolSélectionné manuellement.Matching automatique par règle NAT.
Note : Le passage au mode Central NAT est irréversible sans perte de configuration des politiques existantes.
Virtual IPs (VIP) : Publication de services

Une VIP est un objet de DNAT (Destination NAT) qui mappe une IP publique sur une IP privée (1:1 ou Port Forwarding).

  • Static NAT : Mappage de tous les ports d'une IP publique vers un serveur.
  • Port Forwarding : Publication d'un port spécifique (ex: TCP 443 ➔ TCP 8443).
  • Server Load Balancing : Distribution du trafic entrant sur plusieurs serveurs réels avec Health Check.
                            config firewall vip
                            edit "Web_Server_NAT"
                            set extip 1.1.1.1
                            set mappedip "10.0.1.50"
                            set portforward enable
                            set extport 443
                            set mappedport 443
                            next
                            end
Hairpinning : Accès interne via IP publique

Cas où un client interne veut accéder à un serveur interne en utilisant son adresse IP publique (DNS externe).

LA RECETTE DU HAIRPINNING RÉUSSI
1. Interface : La politique doit avoir la MÊME interface en Source et Destination (ex: LAN ➔ LAN). 2. VIP : La VIP doit être autorisée sur l'interface LAN. 3. SNAT : Le NAT source doit être activé pour forcer le trafic retour à repasser par le FortiGate (évite l'Asymmetric Routing).
Session Helpers & Application Layer Gateway (ALG)

Certains protocoles (FTP, SIP, H.323) négocient dynamiquement des ports secondaires. FortiOS utilise des "Helpers" pour ouvrir ces ports automatiquement dans le noyau.

SIP-ALG : L'ennemi de la VoIP ?

Souvent, le SIP-ALG modifie les en-têtes SIP de manière incorrecte pour certains providers Cloud. Il est fréquent de devoir le désactiver.

                            # Désactiver le SIP-ALG (Standard VoIP)
                            config system settings
                            set default-voip-alg-mode kernel-helper-based
                            end
                            # Supprimer le helper SIP du port 5060
                            config system session-helper
                            delete 13 # ID correspondant à SIP
                            end
Dépannage de flux (Expert Diagnostics)
Investigation Policy Matching :
                            # Tester quelle règle sera choisie pour un flux
                            diagnose firewall iprope lookup 10.0.0.1 1234 8.8.8.8 53 tcp wan1

                            # Voir l'ID de règle dans le sniffer
                            diag sniffer packet any 'host 10.0.1.50' 4
Investigation NAT :
                            # Voir les sessions avec translation active
                            diagnose sys session list | grep -A 5 "nat"

                            # Vérifier l'utilisation d'un IP Pool
                            diagnose firewall ippool-all stats "Pool_Name"
Expert Tip : Si une VIP ne répond pas au PING de l'extérieur, vérifiez que l'option set icmp-send-redirect disable est configurée sur l'interface ou que la VIP est autorisée dans une règle de firewall.
1.4 UTM Engine Engineering: Flow-based vs Proxy-based Inspection Deep Dive
Flow-based : Vitesse filaire & IPS

L'inspection Flow-based analyse les paquets à la volée sans reconstruire l'intégralité du fichier ou de la session. C'est le mode par défaut depuis FortiOS 6.2.

Mécanisme Interne :
  • Single Pass Direct Filter (SPDF) : Les paquets sont scannés par le moteur IPS en une seule passe contre toutes les signatures actives.
  • Buffering Minimal : Pas de stockage en RAM, les paquets sont transmis dès qu'ils sont validés.
  • Limitations : Moins de fonctionnalités sur certains protocoles (ex: pas de remplacement de page de garde en cas de virus).
Pipeline Flow-based
                            # Vérifier le mode d'inspection de la politique
                            show firewall policy 1 | grep "inspection-mode"
                            # Par défaut: set inspection-mode flow
Proxy-based : Reconstruction Totale

Le FortiGate agit comme un point de terminaison de session (Man-in-the-middle). Il bufferise l'intégralité du contenu avant de le transmettre.

Avantages Sécurité :
  • Content Disarm & Reconstruction (CDR) : Nettoyage des macros Office/PDF avant livraison.
  • Virtual Sandboxing : Mise en attente de la livraison tant que le Cloud n'a pas validé le fichier.
  • Modification du Payload : Remplacement de texte, insertion de scripts ou de bannières d'avertissement.
Traitement WAD (Proxy)

Le démon WAD (Worker & Action Daemon) gère cette inspection, ce qui consomme beaucoup plus de RAM et de CPU.

Les Moteurs de Sécurité UTM

Chaque profil utilise un moteur spécifique pour l'analyse.

MoteurFlow ModeProxy Mode
AntiVirusScan de signatures (Stream)Scan intégral + Emulation/CDR
IPS / App ControlOptimisé (nTurbo/ASIC)Fonctionne via Socket
Web FilterDNS / URL SNI FilterFull URL / Body Filter / SafeSearch
DLPSimple PatternFull Document Fingerprinting
Impact sur le Hardware (ASIC vs CPU)

Le choix du mode impacte directement la capacité de déchargement vers les processeurs NP/CP.

Flow Performance
  • Accélération NP7 (FastPath) possible.
  • Latence micro-secondes.
  • Peu de risque de Conserve Mode.
Proxy Performance
  • CPU-Bound (Intervention du Kernel).
  • Latence millisecondes (Buffering).
  • Risque élevé de saturation RAM/WAD.
Important : Passer une politique en mode Proxy désactive l'accélération NTurbo pour l'IPS sur cette règle.
Compatibilité Applicative & SSL Inspection
SSL Inspection (DPI)

L'inspection SSL profonde est supportée dans les deux modes, mais le mode Proxy permet une granularité plus fine sur les certificats et les extensions TLS.

  • Flow : Recommandé pour le trafic Web massif et Office 365.
  • Proxy : Recommandé pour les serveurs critiques (DMZ) et le filtrage granulaire.
Cas d'erreurs fréquents :

Certaines applications (VoIP, Video Streaming) supportent mal le buffering du mode Proxy, provoquant des saccades ou des déconnexions.

Outils de Diagnostic des Moteurs
Debug WAD (Proxy) :
                            # Voir les stats des sessions Proxy
                            diagnose test application wad 2

                            # Voir l'utilisation mémoire des workers WAD
                            diagnose wad memory report
Debug IPS (Flow) :
                            # Voir le statut du moteur IPS
                            diagnose test application ipsmonitor 1

                            # Forcer le redémarrage de l'IPS engine
                            diagnose test application ipsmonitor 99
Expert Tip : Si vous soupçonnez un crash du moteur d'inspection, consultez le diag debug crashlog read pour identifier si c'est le processus ipsmonitor ou wad qui a échoué.
1.5 SSL/TLS Deep Inspection : Breaking the Encryption Blind Spot
DPI vs Certificate Inspection

FortiOS propose deux niveaux d'analyse des flux chiffrés. Le choix impacte directement la visibilité des moteurs UTM (AV, IPS, DLP).

CaractéristiqueCertificate InspectionDeep Inspection (DPI)
MécanismeAnalyse le SNI / Certificat.MITM (Déchiffrement complet).
Visibilité UTMURL Host uniquement.Full Payload (Body, Files, Headers).
ConfiancePas de certificat à installer.Nécessite le déploiement de la CA.
PerformanceUltra-Light.CPU/SPU Intensif.
Logique Man-In-The-Middle

Le Danger : Sans DPI, un malware téléchargé via HTTPS (ex: Dropbox) est invisible pour l'Antivirus du FortiGate.

La Chaîne de Confiance (Trust Chain)

Pour le DPI, le FortiGate génère un certificat "on-the-fly" pour chaque site visité. Le navigateur du client doit faire confiance à l'autorité (CA) du FortiGate.

DÉPLOIEMENT DU CERTIFICAT CA
1. Génération : Utiliser une CA subordonnée de l'AD CS ou la CA auto-signée Fortinet. 2. Distribution : Pousser le certificat via GPO (Trusted Root Certification Authorities). 3. Validation : Si le certificat n'est pas déployé, l'utilisateur aura une erreur "Votre connexion n'est pas privée" sur 100% des sites.
Note : N'utilisez pas la CA par défaut pour la production. Générez une CA unique pour éviter l'interception par d'autres boîtiers Fortinet non autorisés.
Accélération SPU & Co-processing

Le déchiffrement SSL est l'opération la plus coûteuse. Le **CP9 (Content Processor)** est l'ASIC dédié à cette tâche.

Asymmetric Offload

Handshakes RSA/ECDSA déchargés sur le CP9.

Bulk Encryption

Chiffrement symétrique (AES) traité en hardware.

Latence

Réduction de 90% de la latence induite par le DPI.

                    # Vérifier si l'accélération CP9 est active pour le SSL
                    diagnose hardware sysinfo cp9
                    # Monitorer la charge des moteurs SSL
                    diagnose wad stats report
L'art de l'Exemption (Bypass)

Certaines applications utilisent le **Certificate Pinning** (ex: Dropbox, OneDrive, WhatsApp) et rejettent le certificat du FortiGate. Elles doivent être exemptées.

Critères d'exemption :
  • Finance / Santé : Pour des raisons de confidentialité légale (RGPD).
  • HSTS / Pinning : Pour éviter la rupture de service des applications.
  • ISDB : Utiliser les objets Microsoft/Apple pour exempter les flux de mise à jour.
                            config firewall ssl-ssh-profile
                            edit "Deep_Inspection"
                            config whitelist
                            edit 1
                            set internet-service-id 327680 # Apple-Update
                            next
                            end
                            next
                            end
TLS 1.3 : Sécurité Renforcée

TLS 1.3 chiffre une partie du handshake (certificat serveur). FortiOS 7.x utilise des mécanismes avancés pour inspecter ces flux sans briser la conformité.

  • ECH (Encrypted Client Hello) : Le prochain défi pour l'inspection (nécessite des stratégies de blocage DNS/DoH).
  • Perfect Forward Secrecy (PFS) : Support hardware des suites de chiffrement ECDHE.
Dépannage des erreurs SSL (CLI)
Debug du démon WAD (SSL Proxy) :
                            # Activer le debug pour les erreurs SSL
                            diag debug app wad -1
                            diag debug enable
                            # Rechercher "SSL alert" ou "Unknown CA"
Vérification des sessions :
                            # Voir les erreurs de handshake SSL
                            diagnose wad debug enable ssl
                            # Tester la connectivité SSL vers un site
                            execute telnet-test www.google.com 443
Piège Classique : Si une application ne fonctionne plus après activation du DPI, vérifiez si elle utilise un Certificate Store propre (ex: Firefox, Java, Python) au lieu du magasin Windows/MacOS.
1.7 Secure Connectivity Engineering: IPsec Tunnels & SSL-VPN Hardening
Négociation IKE (Phase 1 & 2)

Le tunnel IPsec repose sur un échange en deux étapes. Une erreur de "Proposal" est la cause n°1 d'échec de tunnel.

  • Phase 1 (ISAKMP) : Authentification des pairs (PSK/Cert) et établissement du canal de contrôle. IKEv2 est fortement recommandé pour sa gestion native de l'EAP et de MOBIKE.
  • Phase 2 (IPsec SA) : Négociation des paramètres de chiffrement pour le plan de données.
  • Perfect Forward Secrecy (PFS) : Force une nouvelle génération de clé Diffie-Hellman pour chaque Phase 2.
Diagramme IKEv2 Handshake
                            # Vérifier les proposals supportés côté FortiGate
                            config vpn ipsec phase1-interface
                            edit "Tunnel_to_HQ"
                            set proposal aes256-gcm prfsha384
                            set dhgrp 21 14
                            next
                            end
Optimisation & Survie du Tunnel

Un tunnel "UP" ne signifie pas que le trafic passe. Les problèmes de fragmentation (MTU) sont critiques.

ParamètreFonction TechniqueImpact
NAT-TEncapsule l'ESP dans l'UDP 4500.Traverse les routeurs NAT.
DPDDead Peer Detection (Keepalive).Détecte et purge les tunnels morts.
MTU / MSSAjuste la taille max des paquets.Évite la fragmentation (CPU Intensive).
Piège MTU : L'encapsulation IPsec ajoute ~50-70 octets. Sur une fibre standard (MTU 1500), il est conseillé de fixer le tcp-mss-sender à 1350 pour éviter les drops.
SSL-VPN : Accès Nomade & Durcissement

Le SSL-VPN (port 443 par défaut) est une cible majeure. Le durcissement est impératif.

  • MFA Obligatoire : FortiToken, Email, ou SAML (Azure AD/Okta).
  • Client Posture : Vérification de l'Antivirus et des patchs OS avant connexion (via EMS).
  • DTLS Acceleration : Utilise UDP au lieu de TCP pour le tunnel SSL, améliorant les perfs de 30%.
                            # Forcer TLS 1.2+ et port custom
                            config vpn ssl settings
                            set ssl-min-proto-ver tls1-2
                            set servercert "YourCert"
                            set port 10443
                            end
Gestion des Flux : Split vs Full Tunnel

Détermine si le trafic Internet de l'utilisateur passe par le VPN ou sort en local.

STRATÉGIES DE ROUTAGE CLIENT
1. Full Tunnel : Tout le trafic passe par le FortiGate. Sécurité max, mais consommation de bande passante WAN. 2. Split Tunnel (Standard) : Seul le trafic vers le LAN interne passe par le VPN. 3. Split Tunnel (Policy-based) : Utilise l'ISDB pour envoyer Office 365 en local et le reste au VPN.
Accélération Hardware (NP7 & CP9)

Le chiffrement est déchargé sur les puces spécialisées pour éviter l'effondrement du CPU.

NP7 Offload

Gère l'encapsulation ESP et le chiffrement AES en hardware. Débit multi-gigabit.

CP9 Offload

Accélère la négociation IKE et les handshakes SSL (RSA/DH).

Diagnostic Tunnel (CLI Expert)
Debug IPsec (IKE) :
                            # Voir la négociation en temps réel
                            diag vpn ike log-filter dst-addr 1.2.3.4
                            diag debug app ike -1
                            diag debug enable
Debug SSL-VPN :
                            # Voir les erreurs d'authentification
                            diag debug app sslvpn -1
                            diag debug enable
                            # Voir les sessions actives
                            get vpn ssl monitor
Expert Tip : Si un tunnel IPsec est "UP" mais sans trafic, vérifiez les Phase 2 Selectors (Proxy-IDs). S'ils ne correspondent pas exactement des deux côtés, le firewall droppera les paquets.
1.8 High Availability (HA) Engineering: FGCP Cluster, FGSP & Failover Orchestration
FGCP : Le Plan de Contrôle Unifié

Le protocole **FGCP** (FortiGate Clustering Protocol) permet de faire apparaître plusieurs unités physiques comme une seule entité logique. Il gère l'adresse MAC virtuelle (vMAC) partagée.

ModeMécanique de FluxUsage Optimal
Active-PassiveLe Master traite 100% du trafic. L'Esclave attend.Recommandé (Stabilité max).
Active-ActiveLe Master distribue les sessions UTM aux esclaves.Cluster saturé en inspection L7.
Virtual MAC (vMAC) :

En cas de failover, l'unité Passive reprend l'adresse MAC virtuelle du Master. Le switch ne voit qu'un changement de port (Gratuitous ARP), ce qui rend la coupure quasi-invisible (< 1s).

Architecture Cluster FGCP
                            # Configuration de base d'un cluster A-P
                            config system ha
                            set group-id 10
                            set group-name "HA_PROD_CORE"
                            set mode a-p
                            set hbdev "port3" 50 "port4" 50
                            set session-pickup enable
                            end
L'algorithme d'élection (The FGCP Hierarchy)

Pour déterminer qui devient l'unité Master, FortiOS suit une hiérarchie stricte.

ORDRE DE PRIORITÉ D'ÉLECTION
1. Connected Monitor Interfaces : L'unité ayant le plus grand nombre d'interfaces monitorées "UP" gagne. 2. HA Uptime : Si les interfaces sont égales, l'unité avec l'uptime HA le plus élevé (diff > 5 min) gagne. 3. Priority : La valeur set priority la plus élevée (0-255) l'emporte. 4. Serial Number : Le numéro de série le plus grand (dernière étape de départage).
Override : Si vous activez set override enable, le critère Priority passe avant l'Uptime, permettant un retour automatique sur l'unité préférée après réparation.
Heartbeat & Synchronisation de Session

Les liens de Heartbeat transportent les pulsations, les mises à jour de configuration et les tables de sessions.

Contenu de la Synchronisation :
  • Configuration : Presque tout sauf le Hostname, l'IP de Management HA et les fichiers de licences.
  • Session Table : Si session-pickup est activé, les sessions TCP établies sont répliquées.
  • IPsec SA : Les tunnels IPsec sont synchronisés pour éviter la renégociation IKE au failover.
Type FluxLatence Max
Heartbeat< 200ms
Session SyncVariable (dépend du CPS)
Split-Brain : Le scénario catastrophe

Si les deux liens Heartbeat sont coupés, chaque unité pense que l'autre est morte et devient "Master", créant des conflits d'IP et de MAC sur le réseau.

Stratégies de prévention :
  • Redondance Physique : Connecter les heartbeats sur des cartes réseau différentes.
  • Interface Monitoring : Le cluster ne bascule que si l'interface WAN ou LAN est réellement coupée.
  • Remote Link Monitor : Basculement si une IP externe (Passerelle FAI) n'est plus joignable, même si l'interface physique est "UP".
                            # Monitorer les ports critiques
                            config system ha
                            set monitor "port1" "port2"
                            end
Mise à jour (Rolling Upgrade)

L'un des plus grands avantages du cluster est la mise à jour sans coupure (Hitless Upgrade).

PROCESSUS DE MISE À JOUR HA
1. Le Master pousse l'image firmware vers l'Esclave. 2. L'Esclave redémarre avec le nouveau firmware. 3. Une fois l'Esclave prêt, un failover est déclenché. 4. L'unité Passive (ex-Master) se met à jour. 5. Le cluster est à nouveau synchronisé sur la nouvelle version.
Temps d'arrêt : En général, perte d'un seul paquet ICMP lors du switchover de vMAC.
Investigation du Cluster (CLI Expert)
Vérification de la Synchro :
                            # Vérifier si les sommes de contrôle matchent
                            diagnose sys ha checksum cluster
                            # Si différent : recalculer
                            diagnose sys ha checksum recalculate
Debug temps réel :
                            # Voir les élections en direct
                            diag debug app hatalk -1
                            diag debug enable
                            # Voir l'état HA complet
                            get system ha status
Tip : Si les Checksums sont différents, le cluster est désynchronisé. Vérifiez si une modification de config a été faite localement sur un des membres via la console série.
1.9 Network Engineering: Advanced Routing, VRF & Multi-Tenant Segmentation
Routage Dynamique d'Entreprise

FortiOS supporte des piles de routage de classe opérateur, capables de gérer des tables Full-BGP et des topologies OSPF multi-aires.

OSPF (Open Shortest Path First) :
  • Area Design : Support des aires Backbone (0), Stub et NSSA.
  • BFD (Bidirectional Forwarding Detection) : Accélère la convergence à moins de 50ms en cas de coupure.
BGP (Border Gateway Protocol) :
  • Multi-Homing : Indispensable pour le peering avec plusieurs FAI.
  • Route Maps : Filtrage granulaire des préfixes entrants/sortants.
  • Community Tags : Marquage des routes pour le pilotage SD-WAN.
Architecture BGP Dual-Homing
                            # Config OSPF simplifiée
                            config router ospf
                            set router-id 1.1.1.1
                            config area
                            edit 0.0.0.0
                            next
                            end
                            config network
                            edit 1
                            set prefix 10.0.0.0 255.255.255.0
                            set area 0.0.0.0
                            next
                            end
                            end
Policy-Based Routing (PBR) : Sortir du standard

Le PBR permet de router le trafic en fonction de la source, du port ou du protocole, et non plus uniquement sur l'IP destination.

ORDRE DE PRIORITÉ DU NOYAU
1. Policy Routes (PBR) : Consultées en premier. Si un match est trouvé, la table de routage standard est ignorée. 2. SD-WAN Rules : Équivalent moderne du PBR avec métriques de performance. 3. Static/Dynamic Routes : Consultation de la RIB classique.
Attention : Une Policy Route force le trafic même si l'interface de sortie est "DOWN", sauf si un Gateway Monitor est configuré.
Segmentation Logique : VLANs & VRF

La segmentation isole les domaines de diffusion et sécurise les flux Est-Ouest.

VRF (Virtual Routing & Forwarding)

Permet d'avoir plusieurs tables de routage isolées au sein du MÊME VDOM. Idéal pour gérer des IPs dupliquées (Overlapping IPs).

Zones de Sécurité

Regroupe des interfaces (VLANs, Tunnels) pour appliquer une politique commune. Réduit le nombre de règles de 70%.

                    # Création d'un VLAN tagué sur une interface physique
                    config system interface
                    edit "VLAN_Prod_10"
                    set vdom "root"
                    set interface "port1"
                    set vlanid 10
                    set ip 10.10.10.1 255.255.255.0
                    set vrf 1 # Isolation en table de routage 1
                    next
                    end
Le moteur de transfert (Forwarding Engine)

Comprendre la différence entre la base de données de routage et la table de transfert matérielle.

TableEmplacementRôle
RIB (Routing Information Base)CPU / RAMContient TOUTES les routes apprises (BGP, OSPF, Statiques).
FIB (Forwarding Info Base)Kernel / ASICContient uniquement les MEILLEURES routes pour le transfert.
NP7 TableASIC HardwareLes routes sont injectées ici pour le routage "Wire-speed".
Investigation & Troubleshooting Routage
Consultation des Tables :
                            # Voir la table de routage active (FIB)
                            get router info routing-table all

                            # Voir la base de données BGP
                            get router info bgp network
Debug temps réel :
                            # Voir les changements de routeurs dynamiques
                            diag debug app ospf -1
                            diag debug enable

                            # Tracer le chemin d'un paquet (Flow)
                            diag debug flow filter daddr 8.8.8.8
                            diag debug flow trace start 20
Expert Tip : Si vous ne voyez pas une route attendue dans la FIB, vérifiez la Distance Administrative (AD). OSPF (110) perdra toujours face à une route Statique (10) ou Connectée (0).
1.10 Virtual Domains (VDOM) & Multi-Tenancy: Logical Isolation & Resource Orchestration
Virtualisation du Plan de Données

Le VDOM (Virtual Domain) divise un FortiGate en plusieurs unités logiques. Chaque VDOM possède son propre **Routing Table**, ses **Policies**, ses **Objets** et ses **Utilisateurs**.

Niveaux d'Isolation :
  • Isolation Logique : Un administrateur du VDOM-A ne peut voir ni modifier le trafic du VDOM-B.
  • Isolation de Routage : Pas de fuite de routes entre domaines sans configuration explicite (Inter-VDOM Link).
  • Isolation de Management : Chaque client peut avoir son propre accès HTTPS/SSH sur une IP dédiée.
Architecture Multi-VDOM
                            # Activer le mode VDOM (Nécessite reboot sur certains modèles)
                            config system global
                            set vdom-mode multi-vdom
                            end
La Hiérarchie des Domaines

Dans un environnement multi-tenant, les rôles sont strictement définis entre l'infrastructure et les services.

Type de VDOMRôle TechniquePropriétés
GlobalInfrastructure PhysiqueGestion des licences, firmware, SPU et hardware.
Management (Root)Plan de ContrôleVDOM par défaut pour les mises à jour FortiGuard et logs.
Traffic VDOMService ClientContient les flux métiers, VPN et politiques NGFW.

Split-Task VDOM : Une variante où un VDOM gère uniquement le trafic (Data Plane) et l'autre uniquement le management (Control Plane).

Gestion des Ressources & Quotas

Empêcher un client (VDOM) de monopoliser les ressources du châssis et de provoquer un **Conserve Mode** global.

LIMITATIONS PAR VDOM (RESOURCE SETS)
1. Sessions : Nombre max de sessions simultanées (ex: 100k). 2. IPsec Tunnels : Nombre max de tunnels VPN actifs. 3. Policies : Limitation du nombre de règles de firewall. 4. CPU weight : Priorité d'accès au processeur (Poids de 1 à 255).
                    config global
                    config system resource-limits
                    edit "Customer_Small"
                    set session 50000
                    set ipsec-tunnel 10
                    next
                    end
                    end
Profils d'Administration (RBAC)

Chaque VDOM peut avoir ses propres administrateurs avec des privilèges restreints.

Profils de droits :
  • super_admin : Accès total (Global + tous les VDOMs).
  • vdom_admin : Accès total uniquement sur son VDOM assigné.
  • prof_admin : Droits personnalisés (Lecture seule, accès VPN uniquement).
Trusted Hosts :

Crucial en multi-tenancy : restreindre l'IP source de l'administrateur pour chaque domaine.

Investigation & Debug Multi-VDOM
Changement de contexte CLI :
                            # Entrer dans un VDOM spécifique
                            config vdom
                            edit [nom_vdom]

                            # Revenir au mode Global
                            config global
Stats de ressources :
                            # Voir l'usage CPU/RAM par VDOM
                            diagnose sys vdom stats list

                            # Voir les limites de ressources atteintes
                            print system resource-limits
Expert Tip : En mode Multi-VDOM, le sniffer de paquets (diag sniffer packet) doit être lancé depuis le contexte Global pour voir les interfaces physiques, ou depuis le VDOM pour les interfaces logiques.
1.11 Security Observability: Logs, FortiAnalyzer, Forensic Analysis & SIEM Integration
Structure des Logs FortiOS

Chaque évènement généré par le firewall suit un format structuré facilitant le parsing par les outils tiers.

Types de Logs :
  • Traffic Logs : Flux acceptés/refusés, NAT, octets transférés.
  • Security Logs : Évènements UTM (IPS, AV, App-Control, Web-Filter).
  • Event Logs : Système, VPN, HA, Administrateurs, Routing.
Niveaux de Sévérité :

Emergency (0) ➔ Alert (1) ➔ Critical (2) ➔ Error (3) ➔ Warning (4) ➔ Notice (5) ➔ Information (6) ➔ Debug (7).

Anatomie d'un Log Entry
                            date=2025-05-12 time=14:30:05 devname="FGT-HQ" 
                            devid="FG100FTK210001" eventtime=1620822605 
                            tz="+0200" logid="0000000013" type="traffic" 
                            subtype="forward" level="notice" vd="root" 
                            srcip=192.168.1.50 srcport=54321 srcintf="LAN" 
                            dstip=8.8.8.8 dstport=53 dstintf="WAN1" 
                            action="accept" policyid=5 service="DNS"
FortiAnalyzer : Centralisation & Analytics

Le **FortiAnalyzer** est indispensable pour la corrélation d'évènements sur plusieurs unités et la génération de rapports de conformité.

  • Logs Real-time : Streaming des logs via le protocole OFTPS (SSL/2113).
  • FortiView : Tableaux de bord interactifs pour identifier les "Top Talkers" et les menaces.
  • Reports : Modèles pré-établis (PCI-DSS, HIPAA, RGPD, Cyber-Threat Assessment).
  • IOC (Indicators of Compromise) : Détection de machines infectées par corrélation de logs historiques.
                            # Pointer le FortiGate vers le FortiAnalyzer
                            config log fortianalyzer setting
                            set status enable
                            set server "10.0.50.100"
                            set upload-option realtime
                            set enc-algorithm high
                            end
Stratégies de Rétention & Mémoire

Le stockage des logs dépend du matériel. Une mauvaise config peut saturer le disque ou la RAM.

DestinationUsage TechniqueRétention
MemoryTroubleshooting immédiat.Très courte (écrasement circulaire).
DiskLog local sur boîtiers avec SSD.Moyenne (selon quota).
FortiCloudSaaS, stockage déporté.7 jours (gratuit) / 1 an (payant).
FortiAnalyzerBig Data / Audit.Plusieurs années (selon HDD).
Avertissement : Évitez de loguer le trafic accepté (set logtraffic all) sur toutes les règles si vous n'avez pas de disque ou de FAZ, au risque de ralentir le CPU.
Export vers SIEM tiers (Splunk, QRadar, Sentinel)

Pour une intégration dans un écosystème hétérogène, FortiOS utilise l'export Syslog standard.

CONFIGURATION SYSLOG MULTI-SERVER
1. Server : set server "10.1.1.50" (IP du SIEM). 2. Mode : UDP (défaut) ou Reliable (TCP/TLS) pour éviter la perte de logs. 3. Facility : Définir la catégorie (ex: local7). 4. Format : Standard (Défaut) ou CEF (Common Event Format) pour certains SIEM.
                    config log syslogd setting
                    set status enable
                    set server "10.1.1.50"
                    set mode reliable
                    set port 6514 # Port TLS standard
                    end
Forensics : Reconstituer une Attaque

L'analyse post-incident nécessite une granularité maximale.

Données cruciales :
  • Session ID : Pour lier un log de trafic à un log UTM.
  • User Tracking : Identification via FSSO ou Certificat.
  • DPI Logs : Voir les domaines réellement visités même en HTTPS.
Search Logic :

Filtrer par srcip + time range sur le FAZ pour isoler le mouvement latéral d'un attaquant.

Investigation & Debug du Logging
Vérification de l'envoi :
                            # Voir si les logs sont envoyés au FAZ
                            diagnose log fortianalyzer status

                            # Voir les statistiques de file d'attente
                            diagnose log fortianalyzer queue-stats
Lecture des logs locaux (CLI) :
                            # Lire les logs de trafic en direct sur la console
                            execute log display
                            # Filtrer par IP
                            execute log filter field srcip 192.168.1.50
Expert Tip : Si les logs n'arrivent pas au FAZ, vérifiez que le Serial Number du FortiGate a été autorisé (Authorize) dans l'interface de gestion du FortiAnalyzer.
1.12 Centralized Management: FortiManager Architecture, Policy Packages & ZTP
Architecture de Management Centralisé

Le FortiManager permet de gérer des milliers d'unités FortiGate, FortiSwitch et FortiAP depuis une console unique. Son architecture repose sur le concept d'**ADOM** (Administrative Domains).

Concepts de Segmentation :
  • ADOMs : Isolation logique des équipements par version d'OS, par client (MSSP) ou par région. Chaque ADOM possède sa propre base de données d'objets.
  • Global ADOM : Permet de créer des objets et politiques "maîtres" partagés entre tous les ADOMs subordonnés.
  • FGFM Protocol : Protocole de communication sécurisé (port TCP/541) entre FMG et FortiGate.
Schéma Multi-ADOM MSSP
ComposantRôle Stratégique
Device ManagerGestion de l'état de connexion et révision des configs.
Policy & ObjectsDépôt centralisé des règles de sécurité.
Le Cycle de Vie de la Configuration

Contrairement à une modif directe sur le FortiGate, le FMG utilise une base de données de "Staging" pour préparer les changements avant déploiement.

FLUX DE DÉPLOIEMENT (INSTALL WIZARD)
1. Modify : Modification des objets ou politiques dans l'ADOM. 2. Save : Enregistrement dans la DB locale du FMG. 3. Install Preview : Comparaison (Diff) entre la DB FMG et la config réelle de l'unité. 4. Push (Install) : Envoi des commandes CLI via le tunnel FGFM. 5. Verification : Si l'unité perd la connexion, le FMG peut rollback la config (Auto-rollback).
Revision Control : Le FMG conserve un historique complet de chaque "Push", permettant de revenir à n'importe quelle version précédente en 2 clics.
Policy Packages : "One-to-Many" Security

Un **Policy Package** contient l'ensemble des règles de firewall. Il peut être assigné à une seule unité ou à un groupe de 500 boîtiers simultanément.

  • Dynamic Mapping : Un même objet "Interface LAN" peut correspondre au port1 sur le boîtier A et au port5 sur le boîtier B.
  • Shared Objects : Les adresses et services sont créés une seule fois et réutilisés partout.
  • Policy Check : Analyseur intégré pour détecter les règles dupliquées ou les conflits d'ombrage avant le push.
                            # Exemple de mapping dynamique via CLI FMG
                            config dynamic address
                            edit "Internal_Net"
                            config dynamic-mapping
                            edit "FGT-Paris"
                            set subnet 10.1.0.0/24
                            next
                            edit "FGT-Lyon"
                            set subnet 10.2.0.0/24
                            next
                            end
                            next
                            end
ZTP : Déploiement Industriel Automatisé

Le but du ZTP est de configurer un FortiGate sans jamais ouvrir de session CLI locale, idéal pour les déploiements massifs (Retail, SD-WAN).

Étapes du ZTP :
  • FortiDeploy : Le boîtier sort du carton, se connecte au Cloud via son numéro de série.
  • FMG Redirection : Le Cloud redirige l'unité vers l'IP publique du FortiManager.
  • Provisioning Templates : Le FMG applique automatiquement les templates système (Host, DNS, NTP, BGP).
Template TypeActions
CLI TemplateScripts de base (Hostname, BGP).
Model DevicePré-provisionnement avant réception.
Orchestration SD-WAN à l'échelle

Configurer manuellement l'ADVPN et les SLAs sur 100 sites est impossible. Le FMG automatise la création des Overlays.

  • VPN Manager : Dessinez votre topologie (Hub-and-Spoke, Full Mesh) et le FMG génère les phases IPsec et les interfaces tunnels sur chaque unité.
  • SLA Monitoring : Visualisation consolidée de la santé des liens WAN de l'ensemble du parc sur une seule carte.
  • BGP Automation : Gestion automatique des AS et des voisins pour le routage dynamique de l'overlay.
Investigation & Troubleshooting FGFM
Debug Connexion FGFM :
                            # Côté FortiGate : Vérifier le tunnel FMG
                            get system fortimanager status

                            # Debug de la connexion FGFM (port 541)
                            diag debug app fgfmd -1
                            diag debug enable
Côté FortiManager :
                            # Voir les évènements d'installation
                            diagnose dvm install log-list

                            # Vérifier l'état de la base de données
                            diagnose cdb check
Expert Tip : Si un "Install" échoue avec une erreur "Object Copy", vérifiez s'il n'y a pas un conflit de nom entre un objet local sur le FortiGate et un objet dans la DB du FortiManager.
1.13 Automation & DevSecOps: API REST, Automation Stitches & Infrastructure as Code
Automation Stitches : Le SIEM interne

Les **Automation Stitches** permettent de déclencher des actions automatiques basées sur des évènements système ou des logs de sécurité.

Composants du Stitch :
  • Trigger (Déclencheur) : Log d'intrusion IPS, failover HA, CPU > 90%, ou planification horaire.
  • Action : Envoyer un email, exécuter un script CLI, envoyer un Webhook (Teams/Slack), ou bannir l'IP source (Quarantaine).
Logique Trigger-Action
                            # Stitch pour bannir une IP après attaque IPS
                            config system automation-stitch
                            edit "Auto_Ban_IPS"
                            set trigger "IPS_Intrusion_Log"
                            config actions
                            edit 1
                            set action "Quarantine_IP"
                            next
                            end
                            next
                            end
API REST : Pilotage Programmatique

L'API REST de FortiOS (v2) permet de lire et modifier l'intégralité de la configuration via des appels JSON.

  • API Admin : Création d'un administrateur dédié avec un **API Key** (Token) permanent.
  • CORS / Trusted Hosts : Sécurisation de l'accès API en restreignant les IPs autorisées.
  • Endpoints : /api/v2/cmdb/ (Configuration) et /api/v2/monitor/ (Statistiques temps réel).
                            # Exemple de GET via cURL
                            curl -k -X GET \
                            "https://1.1.1.1/api/v2/cmdb/firewall/policy" \
                            -H "Authorization: Bearer YOUR_TOKEN"
Note Sécurité : Toujours utiliser des permissions "Read-Only" pour les scripts de monitoring (ex: Grafana/Zabbix).
Scripts CLI & Sauvegardes Automatisées

Gestion des fichiers de configuration en masse sans passer par la GUI.

Batch Scripting :
  • Scripts envoyés par FortiManager ou via SFTP.
  • Execution Mode : "Save and Reload" ou "Direct Execute".
Sauvegarde Auto :

Planification d'export du fichier .conf chiffré vers un serveur externe.

                            # Backup automatique vers SFTP
                            config system auto-backup
                            set status enable
                            set server "sftp.backup.local"
                            set user "fortibackup"
                            set password "password"
                            set schedule daily
                            end
Infrastructure as Code (IaC)

Déployer et versionner ses firewalls comme du code logiciel.

OutilCas d'usageAvantage
TerraformProvisionnement d'infrastructure (VPC, Interfaces, Policies).Gestion d'état (State file), idéal pour le Cloud.
AnsibleConfiguration et orchestration de tâches répétitives.Agentless, utilise SSH ou HTTPS.

CI/CD Pipeline : Intégration dans GitLab CI/GitHub Actions pour tester la config sur une VM FortiGate avant le push en prod.

Webhooks : Connecter l'écosystème

Envoie des requêtes HTTP POST structurées vers des services tiers lors d'alertes.

  • Teams / Slack : Notifications immédiates de failover HA ou d'attaque critique sur le canal des admins.
  • ServiceNow / Jira : Ouverture automatique d'un ticket d'incident lors de la détection d'une panne SD-WAN.
  • FortiSOAR : Déclenchement d'un playbook de remédiation complexe (Playbook automation).
Dépannage de l'Automatisation
Debug Stitches & Webhooks :
                            # Voir l'exécution des automations
                            diagnose debug application auto-stitch -1
                            diag debug enable

                            # Tester un trigger manuellement
                            diagnose automation stitch test "NAME"
Debug API :
                            # Voir les erreurs de requête API
                            diagnose debug application httpsd -1
                            diag debug enable
Expert Tip : En cas d'échec de Webhook, vérifiez si le FortiGate a une route DNS valide et si le trafic HTTPS sortant est autorisé vers l'URL de destination.
1.14 Life Cycle Management: Firmware Upgrade Paths, Backups & System Maintenance
Stratégie de Versionnement FortiOS

Ne jamais sauter de versions majeures sans consulter l'**Upgrade Path Tool**. Chaque firmware effectue des migrations de base de données d'objets spécifiques.

Maturité des Releases :
  • Feature Stream (ex: 7.6.0) : Nouvelles fonctionnalités, potentiellement instable. À réserver aux labs.
  • Mature Stream (ex: 7.4.x / 7.2.x) : Patchs de sécurité et stabilité. Recommandé pour la production.

Note : Un saut de version direct (ex: 6.4 vers 7.2) sans passer par les étapes intermédiaires corrompt systématiquement le fichier de configuration.

Logique de l'Upgrade Path
VersionStatutUsage
7.0.xEnd of EngineeringMigration requise.
7.2.xMatureStandard Prod actuel.
7.4.xMatureNouveaux déploiements.
Sauvegarde : L'assurance vie de l'Admin

Le fichier .conf est un fichier texte plat contenant toute l'intelligence du boîtier.

  • Chiffrement : Toujours chiffrer les backups externes (set password) pour protéger les clés VPN et secrets PSK.
  • VLAN/VDOM Awareness : Une sauvegarde en mode VDOM-Root ne contient pas les données des autres VDOMs (faire un backup "Global").
  • Automated Revision : Utilisez le FortiManager ou le FortiCloud pour garder un historique des 100 dernières modifications.
                            # Backup via CLI vers un serveur TFTP
                            execute backup config tftp "backup.conf" 10.1.1.50
Le saviez-vous ? Le fichier de backup contient la version exacte du firmware. On ne peut pas restaurer un backup 7.0 sur un firmware 7.2 directement.
Mise à jour sans coupure (Cluster HA)

Le protocole FGCP gère automatiquement la mise à jour séquentielle du cluster.

SÉQUENCE DE L'UPGRADE HA
1. Upload : Le Master reçoit le firmware et le pousse sur l'Esclave. 2. Slave Upgrade : L'esclave redémarre sur la nouvelle version. 3. Failover : Le Master bascule le rôle sur l'esclave (perte de ~1 paquet). 4. Master Upgrade : L'ancien Master se met à jour. 5. Alignment : Le cluster se synchronise à nouveau.
Procédures de Rollback & Urgence
Dual Partition (Firmware Bank) :

La plupart des FortiGate possèdent deux partitions de boot. En cas d'échec, vous pouvez booter sur la partition secondaire via le BIOS/Console.

Formatage & TFTP Recovery :

Si le système de fichier est corrompu, il faut utiliser la console série (RJ45) et un serveur TFTP au boot pour réinjecter le firmware.

                            [G]: Get firmware from TFTP
                            [F]: Format boot device
                            [B]: Boot from secondary partition
Checklist de Maintenance Préventive
ActionFréquenceIndicateur
Audit de LogHebdomadaireErreurs Hardware / Crashlogs.
Conserve ModeMensuelVérifier si les seuils de RAM sont approchés.
FGT-CheckTrimestrielLancer diag sys dashboard cpu pour voir les pics.
PSU TestSemestrielVérifier la redondance des alimentations.
Commandes d'Investigation Post-Upgrade
Vérification Post-Migration :
                            # Voir les erreurs de conversion de config
                            diagnose debug config-error-log read

                            # Vérifier l'intégrité du système de fichier
                            diagnose fortilink quota check
Debug Système :
                            # Historique des crashs de processus
                            diagnose debug crashlog read

                            # Statut de la licence et FortiGuard
                            diagnose autoupdate versions
Expert Tip : Toujours vérifier le config-error-log après une mise à jour. S'il y a des entrées, cela signifie que certaines lignes de votre configuration ont été ignorées car elles ne sont plus valides dans la nouvelle version.
1.15 Expert Troubleshooting: Packet Flow Analysis, Kernel Debug & System Health
Debug Flow : Le Saint Graal

Permet de suivre le cheminement d'un paquet à travers le noyau FortiOS pour comprendre s'il est droppé par une politique, un problème de routage ou un profil UTM.

PROCÉDURE DE DEBUG FLOW
1. Reset : diag debug reset 2. Filter : diag debug flow filter daddr 8.8.8.8 3. Options : diag debug flow show function-name enable 4. Start : diag debug flow trace start 10 5. Enable : diag debug enable
Interprétation des messages :
  • "Allowed by Policy-ID: 5" : Le flux est autorisé par la règle 5.
  • "denied by forward policy-0" : Droppé par la règle implicite.
  • "Reverse path check fail" : Problème d'Anti-spoofing (RPF check).
Le Sniffer de Paquets (L2/L3)

Syntaxe : diag sniffer packet [intf] '[filter]' [verbose] [count] [ts].

VerboseDescription du Output
1IP, Port, Sequence numbers (Standard).
3Level 1 + Payload HEX (Utile pour le debug protocolaire).
4Level 1 + Interface Name (Indispensable en SD-WAN).
6Full Packet + Interface + Ethernet Header.
                    # Sniffer sur n'importe quel port pour le trafic HTTPS vers un serveur
                    diag sniffer packet any 'host 1.2.3.4 and port 443' 4 100 l
Anatomie de la Table de Session

Chaque flux est enregistré dans la RAM. Analyser les flags de session permet de détecter l'accélération ASIC.

  • Proto_state=01 : TCP Established.
  • Dirty : La session doit être ré-évaluée (changement de config).
  • May_dirty : Session en cours d'évaluation par l'IPS/Proxy.
  • Offload=1/1 : Signifie que l'entrée et la sortie sont gérées par l'ASIC (FastPath).
                            # Filtrer et lister les sessions
                            diag sys session filter daddr 8.8.8.8
                            diag sys session list
Diagnostic des Ressources Critiques

Identifier quel processus sature l'unité et vérifier les seuils de sécurité.

Processus Gourmands :
  • ipsmonitor : Forte charge due à l'inspection de flux massifs.
  • wad : Fuite mémoire possible ou trop de sessions SSL.
  • pyfcnd : Mise à jour des signatures FortiGuard.
                            # Voir le TOP des processus (équivalent Linux)
                            get system performance top

                            # Statut de la RAM et Conserve Mode
                            diag hardware sysinfo conserve
Problèmes d'Authentification (FSSO/LDAP)

Le debug de l'identité utilisateur est crucial pour les politiques basées sur les groupes.

DEBUG AUTHENTIFICATION
1. FSSO Status : diag debug auth fsso list (Voir les users connectés). 2. Real-time : diag debug app fsso -1 (Log de l'agent collector). 3. LDAP : diag debug app fnbamd -1 (Vérifier le bind et les credentials).
Pourquoi mon paquet est-il jeté ?
Cause du DropCode/Message Debug Flow
RPF Check"reverse path check fail, drop"
No Route"find a route: flag=00000000... drop"
Policy Deny"denied by forward policy-0"
IPsec Issue"esp_input: no session found"
Conserve Mode"memory exhaustion, drop"
Action Radical : Si un processus (ex: WAD) consomme 99% de CPU sans raison, utilisez diag sys process kill 9 [PID] pour le forcer à redémarrer sans rebooter le firewall.
1.16 Production Hardening & Security Best Practices: RBAC, MFA & System Lockdown
Sécurisation du Plan de Contrôle

Le plan de contrôle est la cible n°1 des attaquants. Un accès compromis signifie une perte totale du réseau.

Règles de Fer :
  • Ports Non-Standards : Changer les ports HTTPS (ex: 10443) et SSH (ex: 10022).
  • HTTPS Only : Désactiver HTTP et Telnet (flux en clair).
  • TLS Hardening : Forcer TLS 1.2 minimum et désactiver les ciphers obsolètes (CBC, DES, RC4).
  • Idle Timeout : Déconnexion automatique après 5-10 min d'inactivité.
Interface Management Isolation
                            # Durcissement des accès globaux
                            config system global
                            set admin-sport 10443
                            set admin-ssh-port 10022
                            set admintimeout 10
                            set admin-https-ssl-versions tls1-2 tls1-3
                            end
RBAC : Principe du Moindre Privilège

Ne jamais utiliser de comptes "super_admin" pour les tâches quotidiennes. Créer des profils d'accès restreints.

  • Trusted Hosts : Configurer SYSTEMATIQUEMENT une liste d'IPs sources autorisées pour CHAQUE administrateur.
  • Custom Access Profiles : Créer des rôles (ex: Helpdesk = Lecture seule, SecOps = Firewall uniquement).
  • Audit Log : Chaque commande passée en CLI est loguée avec l'identité de l'auteur.
                            # Restreindre un admin à un sous-réseau
                            config system admin
                            edit "admin_sec"
                            set trusthost1 10.50.0.0 255.255.255.0
                            set accprofile "super_admin_readonly"
                            next
                            end
MFA : L'authentification à deux facteurs

Le mot de passe seul est considéré comme une faille en 2025. Le MFA est obligatoire pour le VPN et l'administration.

STRATÉGIE D'IDENTITÉ
1. FortiToken : Solution native (mobile ou physique). 2. SAML / SSO : Intégration avec Azure AD ou Okta pour une gestion centralisée des identités. 3. Certificate-based : Authentification par certificat machine (ZTNA) pour un niveau de sécurité ultime.
Désactivation des services inutiles

Réduire la surface d'attaque en fermant tout ce qui n'est pas utilisé.

ServiceAction RecommandéeRaison
ICMP RedirectDisableÉvite les attaques Man-in-the-middle.
SNMPV3 Only / DisableV1/V2 transmettent les mdp en clair.
USB PortDisableEmpêche l'extraction de config physique.
Auto-InstallDisableÉvite l'injection de config via clé USB.
Backup & Intégrité des données
Hygiène des sauvegardes :
  • Chiffrement : Mot de passe de backup complexe obligatoire.
  • Hors-site : Export quotidien vers un serveur SFTP sécurisé.
  • Revision Control : Garder 30 jours d'historique de config.
Conformité :

Utiliser le **Security Rating** pour auditer automatiquement la configuration par rapport aux standards PCI-DSS ou CIS.

Commandes d'Audit de Sécurité
Audit des administrateurs :
                            # Voir qui est connecté actuellement
                            get system admin list

                            # Voir les échecs de connexion (Brute force)
                            diagnose user auth list
Audit de la configuration :
                            # Vérifier le score de sécurité local
                            diagnose system check-compliance

                            # Lister les ports d'écoute ouverts
                            diagnose sys netlink socket list
Checklist Finale : Avez-vous désactivé l'utilisateur par défaut admin ou au moins changé son mot de passe par une phrase complexe ?
1.17 Sizing & Licensing Engineering: Performance Metrics, FortiGuard Bundles & ROI
Décrypter les chiffres constructeur

Les débits annoncés sur les plaquettes Fortinet sont mesurés dans des conditions idéales (paquets UDP 1518 octets, sans inspection).

MétriqueSignificationFacteur Limitant
Firewall ThroughputDébit brut L3/L4.ASIC NP7/NP6 (FastPath).
Concurrent SessionsTaille de la RAM.Capacité à tenir la charge d'un gros LAN.
New Sessions/secPuissance du Kernel.Vitesse d'établissement des flux (CPS).
IPsec VPNChiffrement Hardware.Débit tunnel AES-256.
Impact de la taille des paquets

Le débit chute drastiquement avec des petits paquets (64 bytes) car le nombre d'interruptions CPU par seconde explose.

Sizing NGFW & Threat Protection

C'est la métrique la plus importante. Elle représente le débit avec **IPS + Application Control + Malware Protection** activés.

LA RÈGLE D'OR DU SIZING (FACTOR X)
1. Threat Protection : Comptez généralement 10% à 15% du débit "Firewall" brut. 2. SSL Inspection : Le déchiffrement profond (DPI) divise encore la performance par 2 ou 3 si vous n'avez pas d'ASIC CP9 performant. 3. Marge de sécurité : Prévoyez toujours un boîtier supportant 2x votre débit WAN actuel pour absorber la croissance sur 5 ans.
Attention : Sur les modèles "Desktop" (ex: 40F, 60F), la mémoire RAM est souvent le premier goulot d'étranglement avant le CPU (Conserve Mode).
Navigation dans les abonnements FortiGuard

Les licences activent les mises à jour de signatures en temps réel via le Cloud Fortinet.

BundleServices InclusUsage Type
Advanced Threat Protection (ATP)IPS, App Control, Malware protection.Standard Sécurité.
Unified Threat Protection (UTP)ATP + Web & Video Filter + Antispam.Le plus commun (PME/ETI).
Enterprise ProtectionUTP + DLP + IoT + FortiConverter + ZTNA.Grands Comptes / Compliance.

A-la-carte : Il est possible de ne prendre que l'IPS ou le WebFilter, mais le coût est souvent proche du bundle UTP.

Support & Garantie Matérielle (FortiCare)

La continuité de service dépend du niveau de support choisi en cas de panne physique.

  • FortiCare Premium (24x7) : Support technique non-stop et remplacement matériel.
  • FortiCare Elite : Temps de réponse garanti (SLA) plus court (15-30 min) pour les incidents critiques.
  • RMA (Return Merchandise Authorization) : Échange standard. Option "Next Business Day" pour les sites critiques.
ASE (Advanced Support Engineer) :

Accès direct à des ingénieurs de niveau 2/3 pour les clients Elite.

Sizing pour FortiGate-VM (Private/Public Cloud)

Les licences VM sont basées sur le nombre de vCPU (Virtual CPU).

  • vCPU Scaling : Les licences existent en 1, 2, 4, 8, 16, 32... vCPU.
  • RAM : En mode VM, vous pouvez allouer autant de RAM que nécessaire (important pour le Proxy-mode).
  • SR-IOV / DPDK : Technologies indispensables pour minimiser l'overhead de virtualisation et approcher les perfs hardware.
PAYG vs BYOL : Sur AWS/Azure, vous pouvez payer à l'heure (On-demand) ou apporter votre propre licence (BYOL).
Investigation des Licences & FortiGuard
Vérification de l'état des services :
                            # Voir le statut global des licences
                            get system status

                            # Vérifier la validité de chaque contrat FortiGuard
                            diagnose autoupdate versions
Debug Connection FortiGuard :
                            # Tester la connectivité aux serveurs de mise à jour
                            diagnose debug application update -1
                            diag debug enable

                            # Forcer une mise à jour immédiate
                            execute update-now
Expert Tip : Si vos services FortiGuard sont marqués "Expired" alors que le contrat est valide, vérifiez que le DNS du FortiGate est capable de résoudre update.fortiguard.net.
1.3 SD-WAN Advanced Orchestration : SLA, ADVPN & Application Steering
Architecture des Zones SD-WAN

Le SD-WAN Fortinet repose sur l'abstraction des interfaces physiques en **SD-WAN Zones**. Cette couche permet d'appliquer des politiques de sécurité sur une interface logique unique (ex: Virtual-WAN-Link).

  • Zones Virtuelles : Regroupement par type de lien (Underlay: Fibre/4G, Overlay: IPsec).
  • Gateway Detection : Configuration des passerelles par défaut pour chaque membre.
  • Interface Priority : Définition du coût de base du lien avant évaluation dynamique.
CLI : Initialisation du SD-WAN
                            # Configuration des membres et des zones
                            config system sdwan
                            set status enable
                            config zone
                            edit "Internet_Zone"
                            next
                            end
                            config member
                            edit 1
                            set interface "wan1"
                            set zone "Internet_Zone"
                            set gateway 1.1.1.1
                            next
                            end
                            end
SLA : La surveillance du signal de santé

Les **Performance SLA** mesurent l'intégrité des liens via des protocoles de sonde (Ping, HTTP, DNS, TWAMP). Si un lien dépasse les seuils, il est marqué comme "SLA Failed" et retiré de la sélection.

ApplicationLatence MaxJitter MaxPacket Loss
VoIP / Real-time< 150ms< 30ms< 0.5%
ERP / DB< 200msN/A< 1.0%
SaaS / Office365< 250ms< 50ms< 2.0%
                            config health-check
                            edit "SaaS_Probe"
                            set server "8.8.8.8"
                            set interval 500 # ms
                            set failtime 5
                            config sla
                            edit 1
                            set latency-threshold 100
                            set packetloss-threshold 1
                            next
                            end
                            next
                            end
SD-WAN Rules : Intelligence de pilotage

Les règles SD-WAN déterminent quel lien utiliser pour chaque application (identifiée par l'ISDB - Internet Service DB).

ALGORITHMES DE SÉLECTION
1. Manual : Priorité statique stricte. 2. Best Quality : Basé sur la latence/perte la plus faible en temps réel. 3. Lowest Cost : Utilise le lien le moins cher qui respecte le SLA cible. 4. Maximize Bandwidth : Load-balancing (Round Robin) sur tous les membres SLA-OK.
Exemple : Pilotage Microsoft 365
                    config service
                    edit 1
                    set name "Office365_Performance"
                    set mode priority
                    set protocol 6
                    set internet-service enable
                    set internet-service-name "Microsoft-Office365"
                    set health-check "SaaS_Probe"
                    set sla-compare-method latency
                    set priority-members 1 2 # WAN1 puis WAN2
                    next
                    end
ADVPN (Auto-Discovery VPN) & BGP Overlays

L'ADVPN est la technologie clé du SD-WAN multisites. Elle permet aux spokes de créer des **Shortcut Tunnels** dynamiques entre eux pour éviter le "tromboning" via le Hub.

  • Shortcut Tunnel : Créé à la volée lorsqu'un flux inter-sites est détecté.
  • BGP RR (Route Reflector) : Le Hub propage les routes sans les modifier.
  • Self-Healing : Si le lien Underlay tombe, l'Overlay bascule instantanément.
Config Spoke (Shortcut Enable) :
                            config vpn ipsec phase1-interface
                            edit "VPN_TO_HUB"
                            set auto-discovery-receiver enable
                            set add-route enable
                            next
                            end
Troubleshooting SD-WAN & Performance

Commandes essentielles pour vérifier pourquoi un flux n'utilise pas le lien attendu.

Statut Global :
                            # Vérifier la santé des liens (Latence/SLA)
                            diagnose sys sdwan health-check

                            # Voir le statut des membres de la zone
                            diagnose sys sdwan member
Décision de routage :
                            # Voir quelle règle SD-WAN est appliquée
                            diagnose sys sdwan service

                            # Vérifier la table de routage SD-WAN (Policy Routes)
                            diagnose firewall proute list
Expert Tip : Si l'ADVPN ne monte pas, vérifiez que le flag net-device disable est configuré sur les interfaces IPsec pour permettre la création d'interfaces virtuelles dynamiques.
1.2 FortiOS Internal : Kernel, Daemons & Mécanismes d'Inspection
L'Inspection Hybride de FortiOS

FortiOS permet de choisir le mode d'inspection au niveau de la politique ou du système (NGFW Mode). Ce choix détermine si le trafic est traité par le moteur IPS (Flow) ou le démon WAD (Proxy).

CaractéristiqueFlow-Based (Défaut)Proxy-Based
PerformanceUltra-Haute (Offloadable)Baisse (CPU-Bound)
LatencePresque nulleMesurable (Buffering)
SécuritéStandard (Packet scan)Maximale (Full reconstruction)
HardwareOptimisé pour ASIC NP7Traité par CPU + CP9

Note : En mode Flow, le firewall scanne les paquets à la volée sans les bufferiser entièrement, ce qui permet l'accélération matérielle.

Cycle de traitement Flow vs Proxy
                            # Changer le mode d'inspection global
                            config system settings
                            set inspection-mode [flow | proxy]
                            end
Les piliers du plan de données : WAD & IPS

L'intelligence de FortiOS réside dans ses démons spécialisés qui gèrent l'inspection de contenu.

WAD (Worker & Action Daemon)
  • Rôle : Gère l'inspection Proxy (Web filter, SSL Inspection, FTP).
  • Architecture : Multi-processus. Chaque processus WAD gère un certain nombre de sessions.
  • Debug : diag test authad 2 (Afficher les stats de session).
IPS Engine (IPS Monitor)
  • Rôle : Analyse de signatures, Application Control et Flow-AV.
  • Architecture : Utilise le moteur nTurbo pour le déchargement vers les ASIC.
  • Debug : diag test app ipsmonitor 1 (Afficher les stats IPS).
Visualisation des processus actifs :
                    # Voir les processus consommant le plus de CPU/RAM
                    get system performance top
                    # Tuer un processus WAD bloqué (il redémarrera automatiquement)
                    diagnose sys process kill 9 [PID]
Mécanismes de protection de la mémoire (Conserve Mode)

Le Conserve Mode est un état de survie où le FortiGate restreint les fonctions non essentielles pour éviter un crash total du noyau.

Seuil RAM (%)État du SystèmeConséquences Techniques
< 82%Vert (Normal)Tout est fonctionnel.
88% - 94%Jaune (Conserve)Pas de nouveaux changements de config. AV passe en "fail-open" ou "fail-closed".
> 95%Rouge (Extreme)Le noyau drop les paquets. Sessions administratives bloquées.
Actions de remédiation :
  • Réduire le nombre de sessions (Throttling).
  • Désactiver l'inspection SSL sur les flux non critiques.
  • Vérifier les fuites mémoire des processus WAD.
                            # Vérifier si le système est en Conserve Mode
                            diagnose hardware sysinfo conserve

                            # Historique des évènements de mémoire
                            diagnose debug crashlog read
Investigation avancée du Noyau (Kernel)

En cas de comportement erratique ou de redémarrage inattendu, l'analyse des logs du noyau est vitale.

COMMANDES DE DIAGNOSTIC KERNEL
1. Crashlog : diag debug crashlog read (Affiche les paniques du noyau). 2. Kernel Stats : diag sniffer packet any "port 443" 4 (Niveau noyau). 3. Process Trace : diag sys process trace [PID] (Suivre les appels système). 4. CPU Profiling : diag sys dashboard cpu (Usage par core).
Kernel Panic : Si vous voyez un message "Kernel Panic" dans le console log, vérifiez l'intégrité de la mémoire (Hardware Test) via le menu de démarrage (BIOS).
Optimisation des performances globales
Optimisation TCP/IP :
  • TCP MSS Sender/Receiver : Ajustement pour éviter la fragmentation.
  • Session TTL : Réduire le temps de vie des sessions inactives pour libérer la table.
  • NTurbo : S'assurer que l'IPS est bien déchargé vers les processeurs SPU.
CLI : Tuning Avancé
                            # Ajuster le seuil de Conserve Mode (Expert uniquement)
                            config system global
                            set memory-use-threshold-extreme 95
                            end

                            # Optimiser les processus WAD
                            config system global
                            set wad-worker-count 4
                            end
1.4 NGFW Engine : Policies, Deep Inspection & Dynamic Objects
L'algorithme de Matching FortiOS

Le FortiGate utilise un moteur de recherche séquentiel (Top-to-Bottom). Dès qu'une correspondance est trouvée, le traitement s'arrête.

  • Champs de Matching : Interface Source/Dest, Adresse Source/Dest, Service, Schedule.
  • Implicit Deny : La règle 0 (invisible) bloque tout ce qui n'est pas explicitement autorisé.
  • NGFW Policy Mode : Choix entre *Profile-based* (classique) ou *Policy-based* (plus proche de Palo Alto).
Traitement Hardware (ASIC) :

Si la politique n'inclut pas de profils Proxy, elle est éligible au déchargement **NP7 FastPath**.

Diagramme de flux NGFW
                            # Vérifier l'ordre et le hit-count des règles
                            diagnose firewall policy list
                            # Identifier la règle utilisée par une session
                            diagnose sys session filter daddr 8.8.8.8
                            diagnose sys session list
SSL Inspection : Briser l'aveuglement

80% du trafic malveillant est chiffré. Sans DPI (Deep Packet Inspection), les profils AV/IPS sont inefficaces sur le HTTPS.

SSL Certificate Inspection

Inspecte uniquement le SNI (Server Name Indication). Autorise/Bloque selon le domaine sans déchiffrer le contenu.

Deep Inspection (M.I.T.M)

Le FortiGate agit comme un Proxy CA. Il déchiffre, scanne, puis rechiffre. Requis pour l'Antivirus et l'IPS profond.

Impact Hardware (CP9) :

Le CP9 accélère le déchiffrement asymétrique (RSA/ECDSA), réduisant la charge CPU de 90% sur les handshakes.

ISDB : Internet Service Database

L'ISDB remplace les listes d'IP statiques par des objets dynamiques mis à jour par FortiGuard (ex: Microsoft-Office365, AWS, Netflix).

  • Plus de 3000 services : Contient IPs, Protocoles et Ports.
  • Efficacité : Utilisé en "Source" ou "Destination" sans nécessiter de DNS Lookup.
Application Control (L7)

Identifie les applications via des signatures (ex: Facebook Post vs Facebook Messenger).

                            # Voir la liste des signatures ISDB
                            diagnose autoupdate versions | grep -A 5 "Internet-service"
                            # Vérifier le contenu d'un objet ISDB spécifique
                            diagnose firewall internet-service list name Office365
Gestion du NAT (SNAT & DNAT)

FortiGate sépare le NAT de la politique via des objets IP Pool et VIP.

TypeUsageDétails
SNAT (IP Pool)Sortie LAN -> WANFixe l'IP publique de sortie (Overload, One-to-One).
DNAT (VIP)Entrée WAN -> ServeurPort Forwarding et Load Balancing entrant.
Central NATGlobalSépare les règles NAT des règles de Firewall (style ASA).
Dépannage de flux (Expert)

Comment identifier pourquoi une règle ne "match" pas.

DIAGNOSE PACKET FLOW
1. Filter : diag debug flow filter saddr 10.0.0.5 2. Enable : diag debug flow show function-name enable 3. Trace : diag debug flow trace start 5 4. Log : diag debug enable
Tip : Si vous voyez iprope_in_check() check failed, drop, cela signifie qu'aucune politique n'autorise le trafic.
1.5 Remote Access & Hybrid Connectivity : IPsec, SSL-VPN, ZTNA & SASE Integration
Standardisation IPsec IKEv2

L'implémentation Fortinet privilégie le Route-Based VPN (VTI) pour permettre le pilotage par le moteur SD-WAN et le support des protocoles de routage dynamique.

ParamètreRecommandation Sécurité (V7.6)Impact Performance
Phase 1 EncAES-GCM-256 (Native SPU)Ultra-Rapide (FastPath)
Diffie-HellmanGroup 21 (ECP 384) ou 31Hardware Accelerated
Key Life28800 sec / Re-key enableProtection Forward Secrecy
DPD ModeOn-demand / OptimizedÉvite les sessions fantômes
Pourquoi IKEv2 ?
  • MOBIKE : Persistance du tunnel lors du changement d'IP client (Fibre vers 4G).
  • NAT-T : Détection et encapsulation UDP 4500 native.
  • EAP Auth : Support des certificats et de l'authentification forte.
Configuration Phase 2 (Performance)
                            # Phase 2 : Optimisation SPU
                            config vpn ipsec phase2-interface
                            edit "P2_Data_Tunnel"
                            set phase1name "To_HQ"
                            set proposal aes256gcm
                            set dhgrp 21
                            set auto-negotiate enable
                            set keepalive enable
                            next
                            end
Note : L'utilisation d'AES-GCM élimine le besoin d'un algorithme de hash (SHA) séparé, réduisant les cycles CPU de 25%.
ADVPN : Auto-Discovery & Dynamic Shortcuts

Architecture Hub-and-Spoke permettant l'établissement de tunnels directs entre Spokes (Shortcut) sans passer par le Hub pour le plan de données.

MÉCANISME DE SHORTCUT (ADVPN)
1. Hub Notification : Le Spoke A envoie du trafic vers Spoke B via le Hub. 2. Redirect Message : Le Hub détecte le flux et envoie un paquet "IKE Notify Redirect". 3. Query : Spoke A demande l'IP publique de Spoke B au Hub. 4. Tunnel Setup : Spoke A et B négocient un tunnel IPsec direct à la volée. 5. BGP Update : Les routes sont mises à jour via BGP pour privilégier le shortcut (Shortcut-path).
Hardening SSL-VPN (Anti-Exploit)

Face à l'augmentation des attaques sur les passerelles VPN, le durcissement est une obligation critique.

Vecteur d'attaqueContre-mesure FortiOS
Brute ForceLockout policy + MFA Obligatoire (FortiToken).
WebGUI LeakDésactiver le mode Web, forcer le Mode Tunnel uniquement.
ReconnaissanceChanger le port 443 par un port non-standard (>10000).
Zero-DayRestreindre l'accès par Geofencing (ISDB GeoIP).
                            # Restriction par pays (ex: FR)
                            config vpn ssl settings
                            set source-address "Geo_France"
                            set source-address-negate disable
                            set algorithm high
                            set idle-timeout 300
                            end
ZTNA Architecture : Identité & Posture continue

Le ZTNA remplace le concept de "périmètre" par une vérification par application. Le tunnel n'est établi que si le terminal respecte les règles de conformité définies dans FortiClient EMS.

Composants de la Posture :
  • Certificat de Machine : Preuve de l'appartenance au domaine.
  • Tags de Sécurité : "AV-Running", "OS-Up-to-date", "No-Vulnerability".
  • SAML 2.0 Identity : Intégration avec Entra ID (Azure) ou Okta.
Logique de Tagging :
                            config endpoint-control ztna-tag
                            edit "Secure_Device"
                            config tag-rule
                            edit 1
                            set rule-type os-version
                            set os-type windows
                            set windows-version windows-11
                            next
                            end
                            next
                            end
Accélération Hardware SPU (NP7 & CP9)

L'offload permet de maintenir des débits multi-gigabits sans latence induite par le kernel.

NP7

Encapsulation ESP & AES-GCM (Ligne de vitesse)

CP9

Asymmetric Handshake (RSA/ECDH Offload)

DTLS

Acceleration UDP pour SSL-VPN (Tunnel mode)

Investigation Profonde CLI (IKE/SSL)
Debug IKE (IPsec Phase 1/2) :
                            # Debug Phase 1 (Négociation)
                            diag debug reset
                            diag debug flow filter dst-addr 1.2.3.4
                            diag vpn ike log-filter dst-addr 1.2.3.4
                            diag debug app ike -1
                            diag debug enable
Vérification Hardware :
                            # Voir les sessions IPsec offloadées
                            diagnose vpn ipsec status
                            # Rechercher "hw_crypto_engine=NP7"

                            # Monitorer le trafic SSL-VPN
                            diagnose vpn ssl monitor
Common Error : "mismatched_external_id" en SAML. Vérifiez que l'identifiant d'entité (Entity ID) correspond exactement entre l'IdP (Azure/Okta) et le FortiGate.
1.6 High Availability & Business Continuity : FGCP, FGSP, Session Sync & Failover Logic
FGCP : Le standard de redondance

Le **FortiGate Clustering Protocol (FGCP)** est le protocole propriétaire utilisé pour former des clusters de 2 à 4 unités. Il assure la synchronisation temps réel de la configuration et des sessions.

ModeDescription TechniqueUsage
Active-PassiveUne seule unité traite le trafic. La seconde attend en standby chaud.Standard (95% des cas)
Active-ActiveLe Master distribue le trafic (UTM uniquement) aux esclaves.Besoins d'inspection massifs
Élection du Master (Logique AP):
  • 1. Monitor Interface : Plus d'interfaces "UP" l'emportent.
  • 2. HA Priority : Valeur définie manuellement (Défaut 128).
  • 3. Up-time : Le plus ancien reste Master (Si diff > 5min).
  • 4. Serial Number : Le plus élevé (Dernier recours).
CLI : Initialisation Cluster AP
                            # Configuration du mode HA
                            config system ha
                            set group-id 1
                            set group-name "CORE_CLUSTER"
                            set mode a-p
                            set hbdev "port3" 50 "port4" 50
                            set session-pickup enable
                            set override disable
                            set priority 200 # Unité Master
                            end
FGSP : Synchronisation pour les architectures asymétriques

Le **FGSP** synchronise uniquement les tables de sessions entre unités indépendantes. Contrairement au FGCP, il n'y a pas d'IP virtuelle partagée ni d'élection de maître.

  • Routing Asymétrique : Permet au paquet aller de passer par FGT-A et au paquet retour par FGT-B sans être droppé.
  • SD-WAN Hubs : Indispensable pour les architectures multi-hub où le routage BGP peut fluctuer.
  • Scalabilité : Supporte jusqu'à 16 unités synchronisées.
                            config system session-sync
                            edit 1
                            set peerip 10.255.255.2
                            set syncvd "root"
                            next
                            end
Important : Le FGSP nécessite que les configurations (Policies, Objects) soient maintenues identiques manuellement ou via FortiManager.
Virtual Clustering : Répartition par VDOM

Permet d'avoir deux unités Actives simultanément en répartissant les charges de travail par domaine virtuel (VDOM).

ARCHITECTURE V-CLUSTER
- Unité A : Master pour VDOM_INTERNET, Slave pour VDOM_VPN. - Unité B : Master pour VDOM_VPN, Slave pour VDOM_INTERNET. - Résultat : Exploitation de 100% des ressources CPU des deux boîtiers.
Heartbeat & Data Sync Deep Dive

Le lien HA transporte trois types de flux critiques :

  • Hello (Heartbeat) : Détection de présence (Toutes les 200ms).
  • Sync : Réplication en temps réel des changements d'objets et de sessions.
  • Control : Commandes d'administration synchronisées (CLI/GUI).
Best Practices Heartbeat :
  • Utiliser au moins deux liens physiques dédiés.
  • Ne jamais passer par un switch (Connexion directe câble croisé recommandée).
Type SessionSynchronisé par défaut ?
TCP EstablishedOui (si session-pickup enable)
UDP / ICMPOptionnel (set session-pickup-delay)
SSL-VPN / IPsecOui (Sauf cas spécifiques de clés)
MulticastNon (Géré par routage)
Mécanismes de déclenchement du basculement

FortiOS surveille plusieurs indicateurs pour décider d'un failover.

Link Failure

Port monitor détecte un lien "DOWN" (ex: WAN coupé)

Memory threshold

Basculement si RAM > seuil critique (Conserve Mode)

Remote IP

Remote Link Monitor (Ping vers passerelle ISP échoue)

Diagnostic du Cluster & Désynchronisation
Vérification de l'intégrité :
                            # Vérifier si les sommes de contrôle (Checksum) matchent
                            diagnose sys ha checksum cluster
                            # Si différent : Forcer une synchronisation
                            execute ha synchronize stop/start
Debug temps réel :
                            # Voir les évènements HA (Election, Failover)
                            diagnose debug application hatalk -1
                            diagnose debug enable

                            # Voir le statut détaillé des membres
                            get system ha status
Split-Brain Warning : Si les liens de heartbeat sont coupés simultanément, les deux unités deviennent Master (IP dupliquées). Assurez-vous d'avoir des liens redondants sur des modules physiques différents.
Expert CLI & Packet Sniffer Diagnostics
L'art du Sniffer (TCPDump Style)

Indispensable pour voir si un paquet arrive sur l'interface et s'il en ressort.

                    # Syntaxe : diag sniffer packet [intf] '[filter]' [verbose] [count] [ts]
                    # Exemple : Voir le trafic ICMP vers 8.8.8.8 sur port1
                    diag sniffer packet port1 'host 8.8.8.8 and icmp' 4 10

                    # Niveaux de Verbose :
                    # 1: IP + Port + TCP Flags
                    # 3: 1 + Payload HEX
                    # 4: 1 + Interface Name (Très utile !)
Debug Flow : La Bible du Troubleshooting

Permet de voir exactement comment le kernel FortiOS prend sa décision (Route, Policy, NAT).

                    diag debug reset
                    diag debug flow filter saddr 192.168.1.50
                    diag debug flow filter dport 443
                    diag debug flow show function-name enable
                    diag debug flow trace start 100
                    diag debug enable

                    # Lecture du résultat :
                    # id=20085 trace_id=1 func=print_pkt_detail line=5501 msg="vd-root:0 received a packet..."
                    # msg="find a route: flag=00000001 gw=1.1.1.1 via port1"
                    # msg="Allowed by Policy-ID: 5"
Anatomie de la table de session
                    # Filtrer les sessions vers une destination
                    diagnose sys session filter daddr 1.1.1.1
                    diagnose sys session list

                    # Interprétation des flags :
                    # [proto=6] -> TCP
                    # [state=01] -> Established
                    # [may_dirty] -> Pas encore offloadé
                    # [offload=1/1] -> Accéléré par NP (In/Out)