WireGuard VPN et failover LTE avec OPNsense : accès distant et résilience réseau
Comment déployer WireGuard VPN sur OPNsense pour un accès distant sécurisé et configurer un failover LTE automatique (SD-WAN) avec une clé 4G/5G. Guide complet : tunnel site-à-site, remote workers, Gateway Groups.
Sur mon infra BOTUM, WireGuard est le VPN de référence depuis qu'OPNsense l'a intégré nativement au kernel. Ce guide couvre le déploiement complet : tunnel site-à-site, accès remote worker depuis mobile, et failover LTE automatique.
Ce billet fait partie de la série Stack OPNsense Enterprise. Voir Billet 1 : Installer OPNsense dans Proxmox et Billet 2 : VLANs & Zero Trust avant de commencer.
Pourquoi WireGuard plutôt qu'OpenVPN en 2026 ?
J'utilise WireGuard depuis qu'OPNsense l'a intégré nativement en version 21.7. La comparaison est sans appel :
- Performance : WireGuard tourne dans le kernel BSD — 3 à 5× plus rapide qu'OpenVPN user-space.
- Latence : Handshake en ~100ms contre 1-2 secondes pour TLS OpenVPN.
- Code minimal : 4 000 lignes vs 70 000+ pour OpenVPN — surface d'attaque réduite.
- Cryptographie moderne : ChaCha20, Poly1305, Curve25519.
- Roaming transparent : changement d'IP sans déconnexion — idéal pour les remote workers.
- Configuration simple : un fichier plat, une paire de clés.

Prérequis
- Billet 1 : OPNsense installé dans Proxmox — voir le guide
- Billet 2 : VLANs et Zero Trust configurés — voir le guide
- Port UDP 51820 ouvert en entrée sur le WAN
- Adresse IP publique ou DNS dynamique pour le serveur WireGuard
- Pour LTE failover : clé USB 4G/5G reconnue par OPNsense (ex: Huawei E3372)
Installer le plugin WireGuard dans OPNsense
# WebUI : System > Firmware > Plugins
# Chercher : os-wireguard
# Cliquer [+] pour installer
# Après installation, reboot OPNsense :
# Power > Reboot
# Vérification post-reboot :
# VPN > WireGuard doit apparaître dans le menu
Tunnel WireGuard site-à-site (bureau ↔ datacenter)
Générer les clés sur les deux nœuds :
# Sur NOEUD A (bureau) :
wg genkey | tee /tmp/nodeA.private | wg pubkey > /tmp/nodeA.public
cat /tmp/nodeA.private # noter la clé privée
cat /tmp/nodeA.public # partager avec le nœud B
# Sur NOEUD B (datacenter) :
wg genkey | tee /tmp/nodeB.private | wg pubkey > /tmp/nodeB.public

# VPN > WireGuard > Local > Add
# Name: wg-site-a-site | Listen port: 51820
# Tunnel address: 10.10.0.1/24
# VPN > WireGuard > Peers > Add
# Name: datacenter-nodeB
# Public key: (clé publique du nœud B)
# Endpoint: IP_PUBLIQUE_NODEB:51820
# Allowed IPs: 10.10.0.0/24, 192.168.20.0/24
# Interfaces > Assignments > Ajouter wg0
# IPv4: 10.10.0.1/24 | Enable: ✓
# Firewall > Rules > WG_SITE2SITE
# Action: Pass | Source: WG_SITE2SITE net | Dest: any
Accès remote worker (client mobile)
Pour les télétravailleurs sur mon infra BOTUM, chaque device a sa propre paire de clés. La révocation est granulaire — supprimer un peer suffit.

# VPN > WireGuard > Peers > Add
# Name: remote-worker-alice
# Public key: (clé publique du device d'Alice)
# Allowed IPs: 10.10.1.2/32 | Keep alive: 25
# Config mobile Alice (app WireGuard iOS/Android) :
# [Interface]
# PrivateKey = <clé privée générée sur mobile>
# Address = 10.10.1.2/32
# DNS = 10.10.0.1
#
# [Peer] ← Serveur OPNsense
# PublicKey = <clé publique OPNsense>
# Endpoint = MON_IP_PUBLIQUE:51820
# AllowedIPs = 0.0.0.0/0
# PersistentKeepalive = 25
# QR code : VPN > WireGuard > Peers > icône QR
SD-WAN : configurer le failover LTE automatique
Sur mon infra BOTUM, la clé 4G/5G est branchée en USB sur le nœud Proxmox hébergeant OPNsense. OPNsense la voit comme WAN secondaire automatiquement.
# Vérifier la détection de la clé USB :
# System > Diagnostics > Shell
dmesg | grep -i 'ue0|umb|urndis'
# Interfaces > Assignments
# Ajouter ue0 → Description: WAN2_LTE
# IPv4: DHCP | Block private networks: ✓
# System > Gateways > Groups > Add
# Group Name: WAN_FAILOVER
# WAN_DHCP → Tier 1 (prioritaire)
# WAN2_LTE_DHCP → Tier 2 (backup)
# Trigger level: Packet Loss or High Latency
# Firewall > Rules > LAN
# Règle 'Default LAN to any'
# Gateway: WAN_FAILOVER
# Save & Apply Changes

Tester le basculement automatique WAN → LTE
# Depuis un client LAN — lancer un ping continu :
ping 8.8.8.8
# Simuler la coupure WAN :
# Interfaces > WAN > Edit > Décocher 'Enable'
# Save & Apply Changes
# Observer :
# - ~30s de basculement (quelques paquets perdus)
# - Ping reprend via WAN2_LTE
# - System > Gateways : WAN_DHCP=offline, WAN2_LTE_DHCP=online
# Vérifier l'IP publique :
curl -s ifconfig.me # IP de votre opérateur LTE
# Restaurer WAN :
# Interfaces > WAN > Réactiver → trafic revient sur WAN1 auto
Prochaines étapes
WireGuard est opérationnel et le failover LTE protège votre connectivité. La suite :
- Billet 4 : WiFi par VLAN — APs, SSIDs segmentés, 802.1Q trunking
- Billet 5 : CrowdSec + fail2ban — IDS/IPS collaboratif
- Billet 6 : Monitoring & alertes — Uptime Kuma, Grafana
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 →