Veille technologique · B6 · WireGuard · IPSec · OpenVPN

VPN & Accès distant sécurisé

Étude des protocoles VPN modernes, comparaison WireGuard / OpenVPN / IPSec, et évolutions vers le Zero Trust Network Access (ZTNA) dans les infrastructures d'entreprise.

1. Contexte et lien avec le stage

Chez Paul Hartmann SAS, j'ai déployé un serveur VPN WireGuard via Docker, administré avec l'interface WGDashboard. Ce VPN permet aux utilisateurs autorisés d'accéder aux ressources de l'infrastructure depuis l'extérieur de manière sécurisée, via un tunnel chiffré.

WireGuard a été choisi pour sa légèreté, sa simplicité de configuration et ses performances supérieures aux solutions traditionnelles comme OpenVPN ou IPSec.

2. Comparaison des protocoles VPN

CritèreWireGuardOpenVPNIPSec
Code source~4 000 lignes~70 000 lignesTrès complexe
PerformanceExcellenteBonneBonne
ConfigurationSimpleModéréeComplexe
ChiffrementChaCha20, Curve25519AES, RSAAES, 3DES
Noyau LinuxIntégré (5.6+)User spaceNoyau
Cas d'usageSite-to-site, remoteRemote accessSite-to-site

3. Fonctionnement de WireGuard

WireGuard utilise le modèle clé publique / clé privée (similaire à SSH). Chaque pair dispose d'une paire de clés générée localement. La clé publique est échangée et configurée sur le serveur.

Chez Hartmann, la règle pfSense n°8 autorisait les clients VPN à accéder au LAN sur des ports spécifiques, limitant la surface d'attaque même pour les connexions distantes.

4. Évolutions — ZTNA (Zero Trust Network Access)

Le VPN traditionnel accorde un accès large au réseau interne une fois connecté. Le ZTNA est plus granulaire : chaque application est protégée individuellement, l'accès est accordé selon l'identité, l'appareil et le contexte.

Tailscale, solution ZTNA basée sur WireGuard, automatise la gestion des clés et crée un réseau mesh sécurisé — évolution naturelle de ce que j'ai déployé manuellement chez Hartmann.

5. Sources

Documentation officielle WireGuard (wireguard.com) WGDashboard GitHub Cloudflare — What is ZTNA ANSSI — Recommandations VPN IPSec Tailscale Blog Linux Kernel Documentation