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.

WireGuard VPN et failover LTE avec OPNsense : accès distant et résilience réseau

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.
Installation du plugin WireGuard dans OPNsense

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
Configuration du tunnel WireGuard site-à-site dans OPNsense
# 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.

Configuration WireGuard pour remote worker avec QR code mobile
# 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
Configuration SD-WAN failover LTE dans OPNsense Gateway Groups

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
📥 Guide PDF complet

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 →
Série OPNsense 📋 Voir la série complète →