
Contexte
aujourd’hui je vais vous expliquer pourquoi j’ai mis en place un routeur OpenWRT avec WireGuard.
J’ai une infrastructure serveur à domicile, avec plusieurs IP publiques et un cœur de réseau sous pfSense. Le souci, c’est que mon réseau PC sort directement sur Internet avec l’IP de ce cœur de réseau, ce qui n’est pas idéal en termes de sécurité.
J’ai donc loué un VPS et y ai déployé un serveur WireGuard.
Mon routeur Asus TUF AX4200, qui gère le LAN PC, établit un premier tunnel WireGuard vers ce VPS afin de faire transiter tout le trafic des PC.
Pourquoi j’ai choisi l’Asus TUF-AX4200
Après quelques recherches, je suis tombé sur ce dépôt GitHub :
https://github.com/cyyself/wg-bench
qui référence des benchmarks WireGuard sur différents matériels. C’est là que j’ai repéré l’Asus TUF-AX4200.
Il est basé sur un MediaTek MT7986AV (4 cœurs à 2 GHz, 512 Mo de RAM) et peut atteindre environ 1 Gb/s en WireGuard lorsqu’il tourne sous OpenWRT.
| Asus TUF-AX4200 / MT7986AV | OpenWRT Snapshot / 6.1.78 | 936 Mbits/sec |
Aussi le fait de pouvoir remplacer le firmware constructeur par OpenWRT — open-source, mieux maintenu et beaucoup plus flexible permet une bonne pérennité dans le temps
Caractèristique technique du VPS
| Caractéristique | Détail |
|---|---|
| Système d’exploitation | Debian |
| Processeur | 2 vCPU |
| Mémoire RAM | 4 Go |
| Stockage | SSD |
Je vais épargner la partie configuration il y pas mal de tutoriel sur internet
pour le déploiement sur VPS j’ai utilisé ce script interactif https://github.com/angristan/wireguard-install
Le résultat une fois que j’ai configurer OpenWRT
il y a 3 interfaces effectivement dans mon cas j’en est plusieurs
- Un qui est le VPS qui fais relaie pour évité d’exposer mon cœur de réseau
- un pour que mes équipement mobile puisse ce connecter depuis l’extérieur dans mon lan
- le dernier est un lien inter-site

Partie routage (Policy Based Routing)
Il y a aussi une chose à configurer pour le Policy-Based Routing : sur OpenWrt, il faut installer un paquet dédié.
Ce paquet détecte automatiquement les différentes passerelles, comme les serveurs WireGuard, et permet ensuite de les utiliser dans les règles de Policy-Based Routing.

Voici un exemple pour ma configuration : tout le trafic passe par le VPN, sauf par exemple mes IP publiques du cœur de réseau.
Ce serait dommage et peu optimisé de faire passer ces flux par le VPN pour ensuite revenir chez moi, alors que l’infrastructure est déjà quelque part dans un VLAN local.
Avec ce système, je peux choisir quel PC ou même quel domaine doit passer par quelle passerelle.

Test de debit
Ici, je vais vous montrer le débit obtenu après avoir tout configuré.
Je vais aussi donner quelques spécificités techniques, afin que le contexte reste un minimum scientifique : un simple speedtest seul ne veut pas dire grand-chose.
- Câblage : RJ45 de bout en bout.
- Les speedtests sans VPN affichent en moyenne 960 Mb/s, ce qui correspond au débit maximal que peut fournir ma fibre (1 Gb/s).
- Sur le routeur OpenWrt, il y a 3 interfaces WireGuard configurées.
- Le VPS annonce un débit garanti minimum de 500 Mb/s en upload comme en download.
Les chiffres obtenus sont donc les suivants : on n’atteint pas les 936 Mb/s, mais c’est très probablement le serveur VPS qui bride la connexion.
On peut aussi voir la consommation CPU du routeur pendant le speedtest : a priori, il reste encore de la marge.


Wireguard mobile
J’ai aussi un serveur WireGuard qui me permet, depuis l’extérieur, d’accéder directement à mon LAN


Ici, nous avons une image.
l’image fait office de preuve de concept : j’ai accès à l’interface de mon OpenWrt, alors que je suis connecté en 5G.