Project Oxygen & Ideo-LabIDEO LAB Dashboard 2026

đŸ›Ąïž VPN – Tunnels SĂ©curisĂ©s (IPsec, SSL, OpenVPN)

Guide complet IDEO-Lab sur la création de réseaux privés virtuels (VPN).

1.1

Définition (VPN)

Virtual Private Network. Tunnel crypté sur réseau public.

VPN Tunnel Chiffrement
1.2

Objectifs (Triade CIA)

Confidentialité (Cryptage), Intégrité (Hachage).

Confidentialité Intégrité
1.3

Cas d'Usage

Site-to-Site (S2S) vs. Client-to-Site (Remote Access).

Site-to-Site Client-to-Site
2.1

Crypto : Symétrique

1 clé secrÚte (AES, 3DES). Rapide (données).

AES Symétrique
2.2

Crypto : Asymétrique

2 clés (Publique/Privée - RSA, DH). Lent (gestion).

RSA Asymétrique
2.3

Crypto : Hachage (Intégrité)

Sens unique (SHA, MD5). HMAC (Authenticité).

Hash SHA-256 HMAC
3.1

Protocole : IPsec

Framework de protocoles (Couche 3). Standard S2S.

IPsec Couche 3
3.2

IPsec : AH vs. ESP

Authentication Header vs. Encapsulating Security Payload.

AH ESP
3.3

IPsec : Modes

Mode Tunnel (S2S) vs. Mode Transport (Client).

Mode Tunnel Mode Transport
4.1

IPsec : IKE Phase 1

Le tunnel de "gestion" (ISAKMP). Authentification.

IKEv1/v2 Phase 1 ISAKMP
4.2

IPsec : IKE Phase 2

Le tunnel de "données" (Quick Mode).

IKEv1/v2 Phase 2
4.3

IPsec : NAT-Traversal

Encapsulation UDP (Port 4500) pour passer le NAT.

NAT-T UDP 4500
5.1

Protocole : SSL/TLS VPN

Utilise TLS (Port 443). Passe les firewalls.

SSL VPN TLS Port 443
5.2

SSL VPN : Client Lourd

Remote Access (Client-to-Site). Client (AnyConnect).

Client-to-Site AnyConnect
5.3

SSL VPN : Clientless

Portail Web (Reverse Proxy). AccĂšs aux webapps only.

Clientless Portail
6.1

Protocole : OpenVPN

Open source, basé sur SSL/TLS, trÚs flexible.

OpenVPN Open Source
6.2

OpenVPN : PKI

Utilise certificats (CA, Serveur, Client). Easy-RSA.

PKI Certificats
6.3

OpenVPN : TUN vs TAP

Interface L3 (Routage) vs. Interface L2 (Pont).

TUN (L3) TAP (L2)
7.1

Protocole : L2TP/IPsec

L2TP (Tunnel) + IPsec (Cryptage). (Legacy).

L2TP Legacy
7.2

Protocole : WireGuard

Moderne, rapide, simple, noyau Linux.

WireGuard Moderne
7.3

Cheat-sheet

Comparatif des protocoles VPN (IPsec, SSL, WG).

Comparatif Checklist
1.1 Définition (VPN)
Virtual Private Network

Un VPN (Réseau Privé Virtuel) est une technologie qui crée une connexion sécurisée et cryptée ("tunnel") par-dessus un réseau public non-fiable (comme Internet).

Il permet Ă  des appareils distants (ou des rĂ©seaux entiers) de communiquer comme s'ils Ă©taient connectĂ©s au mĂȘme rĂ©seau local (LAN) privĂ©, en garantissant la confidentialitĂ© et l'intĂ©gritĂ© des donnĂ©es.

Schéma de Tunneling
[ LAN A (Privé) ]                                   [ LAN B (Privé) ]
  192.168.1.50                                        10.0.0.100
       │                                                 │
   [ Routeur A ]                                     [ Routeur B ]
       │ (IP Publique 80.1.2.3)                          │ (IP Publique 90.4.5.6)
       │                                                 │
       ╞═════════════════════════════════════════════════╡
       │           [ TUNNEL VPN CRYPTÉ (IPsec/SSL) ]     │
       │ (Paquets 192.168.1.50 -> 10.0.0.100 encapsulĂ©s) │
       ╞═════════════════════════════════════════════════╡
       │                                                 │
 ( Paquets 80.1.2.3 -> 90.4.5.6 voyagent sur Internet )
       │                                                 │
<────────────────────── [ INTERNET (Public / Non-fiable) ] ──────────────────────>
1.2 Objectifs (Triade CIA)

Un VPN applique les principes de la Triade CIA (Confidentialité, Intégrité, Disponibilité) au trafic réseau.

PrincipeObjectifTechnique VPN
ConfidentialitĂ©EmpĂȘcher l'espionnage (sniffing) du trafic sur Internet.Chiffrement (Encryption) (ex: AES, 3DES). Les donnĂ©es sont illisibles pour un attaquant (MITM).
IntégritéGarantir que les données n'ont pas été altérées pendant le transport.Hachage (Hashing) (ex: SHA, MD5). Le récepteur vérifie que le paquet est intact.
AuthentificationS'assurer que l'on parle au bon interlocuteur (pas un imposteur).Authentification (ex: Clé pré-partagée (PSK), Certificats RSA).
AccÚsPermettre l'accÚs aux ressources internes depuis l'extérieur.Tunneling.
1.3 Cas d'Usage (Site-to-Site vs Client-to-Site)
VPN Site-to-Site (S2S)

Objectif : Connecter deux réseaux (LANs) de maniÚre permanente.

Exemple : Relier le SiĂšge (Paris) et la Filiale (Lyon) pour qu'ils partagent des ressources (serveurs, imprimantes) comme s'ils Ă©taient sur le mĂȘme rĂ©seau.

Implémentation : Le tunnel est géré par les Routeurs/Firewalls des deux sites. C'est transparent pour les utilisateurs. (Technologie typique : IPsec).

[LAN Paris] <-> [Firewall A] <== (Tunnel) ==> [Firewall B] <-> [LAN Lyon]
VPN Client-to-Site (Remote Access)

Objectif : Connecter un utilisateur unique (ex: télétravailleur, nomade) au réseau de l'entreprise.

Exemple : Un commercial sur son laptop à l'hÎtel se connecte au VPN pour accéder au CRM interne.

Implémentation : L'utilisateur lance un logiciel client (ex: OpenVPN, AnyConnect) sur son PC, qui établit le tunnel vers le Firewall de l'entreprise. (Technologie typique : SSL/TLS ou OpenVPN).

[Télétravailleur] <== (Tunnel) ==> [Firewall Entreprise] <-> [LAN Entreprise]
2.1 Crypto : Chiffrement Symétrique
La Clé Unique (Rapide)

Le chiffrement symĂ©trique utilise une seule et mĂȘme clĂ© (un secret partagĂ©) pour chiffrer ET dĂ©chiffrer les donnĂ©es.

Data + Clé_SecrÚte -> (Chiffrement) -> Données_Chiffrées
Données_Chiffrées + Clé_SecrÚte -> (Déchiffrement) -> Data
  • Avantage : ExtrĂȘmement rapide. IdĂ©al pour chiffrer de grands volumes de donnĂ©es (le "vrai" trafic du tunnel).
  • InconvĂ©nient : Le "problĂšme de l'Ɠuf et de la poule" : comment les deux parties s'Ă©changent-elles la ClĂ©_SecrĂšte de maniĂšre sĂ©curisĂ©e ? (RĂ©ponse : via la crypto AsymĂ©trique).
  • Algorithmes : AES (128, 192, 256 bits - Standard moderne), 3DES (ObsolĂšte), ChaCha20.
2.2 Crypto : Chiffrement Asymétrique
La Paire de Clés (Lente)

Le chiffrement asymétrique (ou à clé publique) utilise une paire de clés mathématiquement liées :

  • ClĂ© Publique : Peut ĂȘtre partagĂ©e avec tout le monde. Sert Ă  chiffrer.
  • ClĂ© PrivĂ©e : Doit rester secrĂšte. Sert Ă  dĂ©chiffrer.
Data + Clé_Publique_Bob -> (Chiffrement) -> Données_Chiffrées
Données_Chiffrées + Clé_Privée_Bob -> (Déchiffrement) -> Data
  • Avantage : Permet un Ă©change sĂ©curisĂ© sans secret partagĂ© au prĂ©alable.
  • InconvĂ©nient : ExtrĂȘmement lent (x1000+).
  • Usage VPN : Pas pour le trafic, mais pour l'Ă©change de clĂ©s (protocole Diffie-Hellman - DH) ou l'authentification (Certificats RSA) lors de l'Ă©tablissement du tunnel (IKE).
2.3 Crypto : Hachage (Intégrité)
L'Empreinte Numérique

Une fonction de hachage (ex: SHA-256) prend des données (de n'importe quelle taille) et produit une empreinte de taille fixe (ex: 256 bits). C'est une fonction à sens unique (non réversible).

Objectif : Vérifier l'Intégrité (que les données n'ont pas changé).

A) Émetteur: Calcule HASH(Data) -> "ABCDE"
   (Envoie [Data] + [HASH("ABCDE")])

B) Récepteur: Reçoit [Data] + [HASH("ABCDE")]
   Il recalcule HASH(Data_Reçue) -> "ABCDE"
   Compare les deux hashs. S'ils sont identiques,
   les données sont intÚgres.
HMAC (Authenticité)

Un HMAC (Hash-based Message Authentication Code) combine un hash avec une clé secrÚte partagée. Cela garantit à la fois l'Intégrité ET l'Authenticité (prouve que l'émetteur possédait la clé secrÚte).

3.1 Protocole : IPsec (IP Security)

IPsec n'est pas un seul protocole, mais un framework (cadre) de protocoles standards (IETF) conçu pour sécuriser les communications à la Couche 3 (Réseau).

Il peut chiffrer tout le trafic IP (TCP, UDP, ICMP...), ce qui le rend trĂšs puissant et transparent pour les applications.

C'est le standard historique pour les VPN Site-to-Site (S2S).

Composants Clés
  • AH / ESP : Les protocoles qui transportent les donnĂ©es (voir 3.2).
  • IKE (Internet Key Exchange) : Le protocole (sur UDP 500) qui nĂ©gocie et Ă©tablit le tunnel (voir 4.1/4.2).
  • Authentification : PSK (Pre-Shared Key) ou Certificats RSA.
  • Chiffrement : AES, 3DES.
  • IntĂ©gritĂ© : SHA, MD5.
3.2 IPsec : AH vs. ESP

IPsec utilise deux protocoles principaux pour "transporter" les données sécurisées. ESP est utilisé dans 99% des cas.

ESP (Encapsulating Security Payload)

Protocole IP : 50

C'est le protocole "tout-en-un". Il fournit :

  • ConfidentialitĂ© (Chiffrement des donnĂ©es/payload).
  • IntĂ©gritĂ© (Hachage des donnĂ©es).
  • Authentification (via HMAC).

C'est le standard utilisé pour tous les VPN IPsec modernes.

AH (Authentication Header)

Protocole IP : 51

(Largement obsolĂšte).

AH fournit :

  • IntĂ©gritĂ© (Hachage).
  • Authentification (via HMAC).

ProblĂšme : AH ne fournit AUCUNE confidentialitĂ© (pas de chiffrement). Les donnĂ©es voyagent en clair. Il est Ă©galement incompatible avec le NAT (car il hache l'en-tĂȘte IP source, que le NAT modifie).

3.3 IPsec : Mode Tunnel vs. Mode Transport

IPsec encapsule les paquets IP originaux de deux maniÚres différentes.

Mode Tunnel (Défaut)

Usage : VPN Site-to-Site (S2S) (Gateway-to-Gateway).

Fonctionnement : L'en-tĂȘte IP original (ex: 192.168.1.50 -> 10.0.0.100) est chiffrĂ© avec le reste du paquet. Un NOUVEL en-tĂȘte IP (public) est ajoutĂ© Ă  l'extĂ©rieur (ex: 80.1.2.3 -> 90.4.5.6).

[ Nouvel En-tĂȘte IP | En-tĂȘte ESP | (En-tĂȘte IP Original | Data) ]
Mode Transport

Usage : VPN Client-to-Site (ou communication interne L2L).

Fonctionnement : L'en-tĂȘte IP original est conservĂ© (non chiffrĂ©). Seul le payload (L4+Data) est chiffrĂ©.

C'est plus efficace (moins d'overhead) si le routage n'a pas besoin d'ĂȘtre masquĂ©.

[ En-tĂȘte IP Original | En-tĂȘte ESP | (Data) ]
4.1 IPsec : IKE Phase 1 (Tunnel de Gestion)

IKE (Internet Key Exchange) est le protocole de négociation (sur UDP 500) qui établit le VPN. Il se déroule en deux phases.

IKE Phase 1 (ISAKMP)

Objectif : Créer un canal de gestion sécurisé (appelé ISAKMP Tunnel ou IKE SA) entre les deux routeurs. C'est le tunnel qui servira à négocier le "vrai" tunnel (Phase 2).

Processus de Négociation (HAGLE)

Les deux routeurs doivent ĂȘtre d'accord sur exactement les mĂȘmes paramĂštres (HAGLE) :

  • Hash : (IntĂ©gritĂ©) - ex: SHA-256.
  • Authentication : (Qui es-tu ?) - ex: Pre-Shared Key (PSK) ou Certificats RSA.
  • Group : (Groupe Diffie-Hellman) - (Robustesse de l'Ă©change de clĂ©, ex: DH Group 14).
  • Lifetime : (DurĂ©e de vie) - (Combien de temps ce tunnel P1 est valide, ex: 86400 sec).
  • Encryption : (Chiffrement) - (ex: AES-256).
4.2 IPsec : IKE Phase 2 (Tunnel de Données)

Une fois la Phase 1 (Tunnel de gestion) établie et sécurisée, la Phase 2 commence (à l'intérieur de la Phase 1).

IKE Phase 2 (Quick Mode)

Objectif : Négocier les paramÚtres du "vrai" tunnel de données (le "IPsec SA") qui transportera le trafic des utilisateurs.

ParamÚtres Négociés (Transform Set)
  • Protocole : (ex: ESP).
  • Chiffrement : (ex: AES-256).
  • IntĂ©gritĂ© : (ex: SHA-256).
  • Lifetime : (DurĂ©e de vie, ex: 3600 sec).
  • Traffic Selectors (Proxy ID) : La partie la plus importante. DĂ©finit quel trafic est autorisĂ© Ă  passer dans le tunnel (ex: Source: 192.168.1.0/24 -> Dest: 10.0.0.0/24).
4.3 IPsec : NAT-Traversal (NAT-T)

Le ProblĂšme : Le protocole ESP (Protocole IP 50) n'est ni TCP (6) ni UDP (17). La plupart des routeurs domestiques (Box Internet) qui font du NAT (PAT) ne savent pas comment "translater" le trafic ESP et jettent (drop) les paquets. Le VPN IPsec ne fonctionne pas si un client est derriĂšre un NAT.

La Solution : NAT-Traversal

NAT-T est une fonction (négociée lors de IKE P1) qui encapsule les paquets ESP (normalement L3) à l'intérieur de paquets UDP (Couche 4).

Paquet Original (Bloqué par NAT) :
[ En-tĂȘte IP Public ] [ ESP ] [ Data CryptĂ©e ]

Paquet avec NAT-T (OK) :
[ En-tĂȘte IP Public ] [ UDP (Port 4500) ] [ ESP ] [ Data CryptĂ©e ]

Le routeur NAT voit un simple paquet UDP (Port 4500) et le laisse passer.

5.1 Protocole : SSL/TLS VPN

Le VPN SSL (un abus de langage, car il utilise TLS, le successeur de SSL) est le type de VPN dominant pour l'accĂšs distant (Client-to-Site).

Le "VPN du Port 443"

Son avantage majeur est qu'il utilise le protocole TLS (Couche 7), le mĂȘme que HTTPS. Il fonctionne donc (presque toujours) sur le port TCP 443.

Avantages sur IPsec
  • Contourne les Firewalls : (Contrairement Ă  IPsec qui utilise UDP 500/4500, souvent bloquĂ©s), le port 443 (HTTPS) est toujours ouvert (hĂŽtels, aĂ©roports, entreprises).
  • SimplicitĂ© : Pas de nĂ©gociation IKE P1/P2 complexe.
5.2 SSL VPN : Client-Lourd (Client-to-Site)

C'est le cas d'usage le plus fréquent pour le télétravail.

Fonctionnement
  1. L'utilisateur installe un logiciel client (ex: Cisco AnyConnect, FortiClient, OpenVPN).
  2. L'utilisateur s'authentifie (Login/Mdp + MFA) auprĂšs du Firewall/Concentrateur VPN.
  3. Le logiciel client crée une Interface Réseau Virtuelle (TUN) sur le PC.
  4. Le client établit un tunnel TLS (sur 443) vers le firewall.
  5. Le firewall assigne une IP (ex: 192.168.100.5) Ă  l'interface virtuelle.

Résultat : Le PC du télétravailleur a (virtuellement) une IP du réseau interne et peut accéder aux serveurs comme s'il était au bureau.

5.3 SSL VPN : Clientless (Portail Web)

Le mode "Clientless" (Sans Client) ne nécessite aucun logiciel sur le poste client, juste un navigateur web.

Fonctionnement (Reverse Proxy)
  1. L'utilisateur se connecte (en HTTPS) à un portail web exposé par le firewall (ex: vpn.entreprise.com).
  2. Il s'authentifie (Login/Mdp).
  3. Le firewall lui présente une page "portail" avec des liens (bookmarks) vers les applications internes (ex: "Intranet SharePoint", "Outil RH").
  4. L'utilisateur clique sur "Intranet".
  5. Le firewall agit comme un Reverse Proxy : il récupÚre la page de l'intranet (en interne) et la retransmet à l'utilisateur (dans le tunnel HTTPS).

Inconvénient : Ne fonctionne que pour les applications Web (HTTP/HTTPS). Ne permet pas d'accéder à un partage de fichier (SMB) ou SSH.

6.1 Protocole : OpenVPN

OpenVPN est une solution VPN open-source extrĂȘmement populaire et flexible. C'est devenu le standard *de facto* pour de nombreux services VPN (commerciaux et d'entreprise).

Caractéristiques
  • BasĂ© sur SSL/TLS : Utilise la bibliothĂšque OpenSSL pour le chiffrement et l'authentification (similaire aux VPN SSL).
  • Flexible (Port) : Peut tourner sur n'importe quel port TCP ou UDP (le dĂ©faut est UDP 1194). (On peut le mettre sur TCP 443 pour contourner les firewalls).
  • Flexible (Transport) : Peut utiliser TCP (fiable, mais lent -> "TCP-over-TCP") ou UDP (rapide, recommandĂ©).
  • Cross-Platform : Clients disponibles pour tous les OS.
  • Authentification : TrĂšs robuste, basĂ©e sur Certificats (PKI) ou PSK.
6.2 OpenVPN : PKI (Certificats)

L'implémentation standard d'OpenVPN repose sur une PKI (Public Key Infrastructure) pour l'authentification mutuelle (M-TLS).

Composants (Générés avec Easy-RSA)
  • CA (Certificate Authority) : Le "Dieu" de la confiance. C'est un certificat (ca.crt) que vous gĂ©nĂ©rez et gardez secret. Il est utilisĂ© pour signer (approuver) les certificats du serveur et des clients.
  • Certificat Serveur : (server.crt + server.key) Prouve l'identitĂ© du serveur au client.
  • Certificats Clients : (ex: bob.crt + bob.key) Un certificat unique est gĂ©nĂ©rĂ© pour chaque client (utilisateur).
Processus d'Authentification
  1. Client "Bob" se connecte au serveur OpenVPN.
  2. Serveur : "Voici mon certificat (server.crt), signé par la CA."
  3. Client (vérifie) : "OK, je fais confiance à cette CA."
  4. Client : "Voici mon certificat (bob.crt), signĂ© par la mĂȘme CA."
  5. Serveur (vérifie) : "OK, Bob est autorisé." (Le tunnel s'établit).
6.3 OpenVPN : TUN vs TAP

OpenVPN (et d'autres VPN Linux) crée une "interface virtuelle". Il en existe deux types :

TUN (dev tun) - Mode Routé (Défaut)

Couche 3 (Réseau).

Crée une interface "tunnel" point-à-point. Le VPN agit comme un routeur.

Usage : Standard. Le client (ex: 10.8.0.5) est sur un sous-réseau différent du LAN (ex: 192.168.1.0/24). Le serveur OpenVPN route le trafic.

  • Avantage : Simple, propre, efficace.
  • InconvĂ©nient : Ne transmet que le trafic IP (L3).
TAP (dev tap) - Mode Ponté (Bridged)

Couche 2 (Liaison).

Crée une "carte Ethernet virtuelle". Le VPN agit comme un switch.

Usage : AvancĂ©. Le client (ex: 192.168.1.50) reçoit une IP du mĂȘme sous-rĂ©seau que le LAN. C'est comme s'il Ă©tait physiquement branchĂ© au switch du bureau.

  • Avantage : Permet de transporter du trafic non-IP (L2), ex: NetBIOS, jeux en LAN.
  • InconvĂ©nient : Complexe, "bruyant" (propage les broadcasts L2 sur le VPN).
7.1 Protocole : L2TP/IPsec (Legacy)

L2TP (Layer 2 Tunneling Protocol) est un protocole de tunneling (Couche 2) qui, par lui-mĂȘme, n'offre aucun chiffrement.

Pour ĂȘtre sĂ©curisĂ©, il est toujours implĂ©mentĂ© par-dessus IPsec. Le rĂ©sultat est "L2TP/IPsec".

Historique : C'était le "concurrent" de PPTP, et il était trÚs populaire car intégré nativement dans Windows et d'autres OS (avant l'Úre OpenVPN/SSL).

Usage (L2TP sur IPsec)
  • L2TP crĂ©e le tunnel (similaire au mode TAP, il gĂšre la connexion L2).
  • IPsec (Mode Transport) est utilisĂ© pour chiffrer les paquets L2TP.

Statut : Considéré comme "legacy" (ancien). Plus lent et plus complexe à configurer qu'OpenVPN ou WireGuard.

7.2 Protocole : WireGuard (Moderne)

WireGuard est un protocole VPN moderne, open-source, qui révolutionne le domaine par sa simplicité et sa vitesse.

Caractéristiques Clés
  • Simple : La base de code est minuscule (~4000 lignes) comparĂ©e Ă  IPsec/OpenVPN (des centaines de milliers). Moins de surface d'attaque.
  • Rapide : OpĂšre (sur Linux) directement dans le Noyau (Kernel), le rendant beaucoup plus rapide (dĂ©bit, latence) qu'OpenVPN (qui tourne en User-space).
  • Crypto Moderne : N'utilise que des algorithmes modernes (ex: ChaCha20, Curve25519). (Non nĂ©gociable).
  • Configuration : TrĂšs simple, basĂ©e sur un Ă©change de clĂ©s publiques (similaire Ă  SSH).
(Exemple de config)

[Interface]
PrivateKey = [Clé privée A]
Address = 10.0.0.1/24

[Peer]
PublicKey = [Clé publique B]
Endpoint = 90.4.5.6:51820
AllowedIPs = 10.0.0.2/32
7.3 Cheat-sheet : Comparatif des Protocoles
ProtocoleCoucheUsage PrincipalAvantagesInconvénients
IPsecL3Site-to-SiteStandard industriel, robuste, L3 (tout trafic IP).Complexe (IKE P1/P2), bloqué par NAT/Firewalls (sans NAT-T).
SSL/TLSL7Client-to-Site (Remote)Utilise Port 443 (passe partout), simple pour l'utilisateur.Clientless (limité au web), Client-lourd (overhead).
OpenVPNL7 (via L3/L4)Client-to-Site (Standard)Open source, trĂšs flexible (TUN/TAP, TCP/UDP), PKI robuste.Plus lent (User-space), configuration PKI manuelle.
WireGuardL3 (Noyau)Site-to-Site & Client-to-SiteExtrĂȘmement rapide, simple, crypto moderne, roaming facile.Plus rĂ©cent, gestion des IPs (pas de pool dynamique natif).
L2TP/IPsecL2 (sur L3)Client-to-Site (Legacy)Intégré nativement dans Windows/Mac.Lent, double encapsulation, obsolÚte.