SD-WAN DIY : remplacer le MPLS avec WireGuard + OPNsense
Construisez votre SD-WAN DIY avec WireGuard + OPNsense. Hub-and-spoke, QoS, failover multi-WAN. Economisez 43200 $/an vs MPLS.
Un opérateur vous propose une liaison SD-WAN managée à 800€/mois ? Avec WireGuard et OPNsense, vous pouvez construire exactement la même chose pour moins de 50€/mois en coûts infrastructure. Ce guide est le fruit de plusieurs déploiements réels chez des PME multi-sites qui ont abandonné leur MPLS. Je vous montre comment construire un SD-WAN DIY production-ready.
SD-WAN : démystifier le concept
Le SD-WAN (Software-Defined Wide Area Network) permet de gérer plusieurs liaisons Internet (fibre, 4G, ADSL) intelligemment — basculer automatiquement si une liaison tombe, prioriser le trafic critique (voix, vidéo), et relier plusieurs sites de façon sécurisée. Ce que les opérateurs vendent 2 000€/mois, c'est fondamentalement du routage intelligent par dessus des tunnels VPN.
- Agrégation de liens : utiliser simultanément fibre + 4G pour plus de bande passante
- Failover automatique : basculement < 1 seconde si une liaison tombe
- QoS intelligent : prioriser Teams/Zoom sur les téléchargements en fond
- Visibilité : tableau de bord unifié pour toutes les liaisons et sites
- Sécurité intégrée : chiffrement de bout en bout entre tous les sites

Architecture de notre SD-WAN DIY
Notre stack utilise des composants 100% open-source :
- WireGuard : tunnels VPN inter-sites chiffrés, ultra-performants
- OPNsense : routeur/firewall avec gestion des interfaces et QoS
- Unbound DNS : résolution DNS interne pour tous les sites
- Grafana + Prometheus : monitoring et alertes
- Ansible : déploiement et configuration automatisés
Topologie : un VPS 'Hub' central (5-10€/mois) + OPNsense sur mini-PC dans chaque bureau (200-400€ matériel, une fois). Comparé à 800-2000€/mois pour une offre SD-WAN opérateur, le ROI est immédiat.
Étape 1 — Préparer le Hub central
Le Hub est votre point de concentration. Un VPS Ubuntu chez Hetzner, OVH ou Scaleway fait très bien l'affaire. Minimum : 2 vCPU, 2 GB RAM, 20 GB SSD.
# Installation sur le Hub (Ubuntu 22.04)
sudo apt update && sudo apt install -y wireguard wireguard-tools iptables-persistent
# Activer le routage IP
echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv6.conf.all.forwarding=1' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
# Générer les clés du Hub
wg genkey | sudo tee /etc/wireguard/hub_private.key | wg pubkey | sudo tee /etc/wireguard/hub_public.key
sudo chmod 600 /etc/wireguard/hub_private.key
echo "Hub public key: $(cat /etc/wireguard/hub_public.key)# Configuration WireGuard Hub /etc/wireguard/sdwan0.conf
[Interface]
PrivateKey = <HUB_PRIVATE_KEY>
Address = 172.16.0.1/16
ListenPort = 51820
# Route inter-sites
PostUp = iptables -A FORWARD -i sdwan0 -j ACCEPT; iptables -A FORWARD -o sdwan0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i sdwan0 -j ACCEPT; iptables -D FORWARD -o sdwan0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
# Site Paris
PublicKey = <PARIS_PUBLIC_KEY>
AllowedIPs = 172.16.1.0/24, 192.168.10.0/24
PersistentKeepalive = 25
[Peer]
# Site Lyon
PublicKey = <LYON_PUBLIC_KEY>
AllowedIPs = 172.16.2.0/24, 192.168.20.0/24
PersistentKeepalive = 25
Étape 2 — QoS et priorisation du trafic
Le vrai avantage du SD-WAN c'est le QoS intelligent. Voici comment prioriser les flux critiques (voix, vidéo) sur OPNsense :
# Sur OPNsense — configuration HFSC (Hierarchical Fair Service Curve)
# Firewall → Traffic Shaper → Queues
# Queue 1 : VOIX (priorité maximale)
# Type: HFSC
# Bandwidth: 10% garanti, 40% maximum
# Priority: 7 (plus élevé = prioritaire)
# Queue 2 : MANAGEMENT (SSH, HTTPS admin)
# Type: HFSC
# Bandwidth: 5% garanti, 20% maximum
# Priority: 6
# Queue 3 : BULK (téléchargements, sauvegardes)
# Type: HFSC
# Bandwidth: 0% garanti, 80% maximum
# Priority: 1
# Règles de classification (via GUI OPNsense)
# Firewall → Traffic Shaper → Rules
# SIP/RTP (port 5060, 5061, 10000-20000) → Queue VOIX
# Teams/Zoom (ports bien connus) → Queue VOIX
# Port 22, 443 admin → Queue MANAGEMENT
# Reste → Queue BULKÉtape 3 — Failover automatique multi-liaisons
OPNsense gère nativement le failover entre interfaces WAN. Si la fibre tombe, le 4G prend le relais automatiquement :
# Dans OPNsense — System → Gateways
# Configurer deux gateways WAN :
# GW_FIBRE : interface WAN fibre, poids 1 (prioritaire)
# GW_4G : interface WAN 4G USB, poids 5 (backup)
# Créer un groupe de gateway :
# System → Gateways → Gateway Groups → Add
# Nom: WAN_FAILOVER
# FIBRE: Tier 1 (prioritaire)
# 4G: Tier 2 (backup automatique)
# Configurer le health check :
# Monitor IP: 8.8.8.8 (Google DNS)
# Probe interval: 500ms
# Loss threshold: 20%
# Latency threshold: 500ms
# Règle firewall pour utiliser le groupe
# Firewall → Rules → LAN
# Action: Pass
# Gateway: WAN_FAILOVER (au lieu de WAN_FIBRE seul)
Étape 4 — Monitoring avec Grafana
Visualiser votre SD-WAN en temps réel avec des tableaux de bord Grafana :
# Sur le Hub ou un serveur de monitoring dédié
# Installer Telegraf pour la collecte de métriques WireGuard
sudo apt install -y telegraf
# Configuration /etc/telegraf/telegraf.d/wireguard.conf
cat << 'EOF' | sudo tee /etc/telegraf/telegraf.d/wireguard.conf
[[inputs.wireguard]]
devices = ["sdwan0"]
EOF
# Démarrer Telegraf
sudo systemctl enable --now telegraf
# Vérifier que les métriques arrivent
telegraf --test --config /etc/telegraf/telegraf.d/wireguard.conf# Docker Compose — Stack monitoring SD-WAN
version: '3.8'
services:
grafana:
image: grafana/grafana:latest
ports:
- "3000:3000"
volumes:
- grafana_data:/var/lib/grafana
environment:
- GF_SECURITY_ADMIN_PASSWORD=changeme
prometheus:
image: prom/prometheus:latest
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
influxdb:
image: influxdb:2.0
ports:
- "8086:8086"
volumes:
- influxdb_data:/var/lib/influxdb2
volumes:
grafana_data:
influxdb_data:
Résultats concrets observés
Voici les chiffres réels après déploiement chez un client (PME de 80 personnes, 3 sites) :
- Coût mensuel avant (MPLS opérateur) : 2 400€/mois
- Coût mensuel après (SD-WAN DIY) : 65€/mois (VPS Hub + bande passante)
- Économie annuelle : > 27 000€
- Débit inter-sites : passé de 10 Mbps MPLS à 200 Mbps WireGuard
- Latence : légèrement augmentée (Internet vs MPLS) mais compensée par le débit
- Disponibilité : 99.97% grâce au failover 4G automatique

Prochaines étapes
- Ajouter un IDS/IPS CrowdSec ou Suricata sur OPNsense pour la détection d'intrusion
- Configurer des VLANs pour séparer IoT, Management et Production sur chaque site
- Implémenter Zero Trust Network Access (ZTNA) par dessus ce SD-WAN
- Automatiser la configuration avec Ansible pour les nouveaux sites
- Mettre en place des alertes PagerDuty/Telegram pour les coupures de liaison
Téléchargez ce guide en PDF pour le consulter hors ligne.
⬇ Télécharger le guide (PDF)🚀 Aller plus loin avec BOTUM
Ce guide couvre les bases. En production, chaque environnement a ses spécificités. Les équipes BOTUM accompagnent les organisations dans le déploiement, la configuration avancée et la sécurisation de leur infrastructure. Si vous avez un projet, parlons-en.
Discuter de votre projet →