Mise en place du VPN
1 OUZAOUIT
Présentation du VPN
} Un VPN (Virtual Private Network) est une liaison sécurisée entre deux parties via un réseau
public, en général Internet. Cette technique assure l’authentification des deux parties,
l’intégrité des données et le confidentialité de celles-ci.
} Permet à un hôte distant d ’accéder à l’Intranet de son entreprise ou à celui d’un client
grâce à Internet tout en garantissant la sécurité des échanges ;
} Permet à l’entreprise d’échanger des données en toute sécurité avec ses sites distants ou
ses partenaires ;
} Pour créer un VPN, on envoie les paquets au travers d'un tunnel.
} Un tunnel permet, grâce à plusieurs protocoles :
• L'authentification
• l'intégrité des données
• La sécurité des données
2 OUZAOUIT
Présentation du VPN
§ Caractère virtuel :
§ C’est la technique du tunneling qui permet d’étendre de façon « virtuelle » le
réseau privé à travers un réseau public.
§ Caractère privé :
§ C’est le cryptage qui confère son caractère privé aux données puisqu’elles ne
peuvent être décodées que par les interlocuteurs d’extrémité.
§ Chaque paquet est complètement chiffré et placé à l’intérieur d’un nouveau
paquet.
3 OUZAOUIT
Types des VPN
} Il existe deux types de connexions VPN :
– VPN d’accès à distance ;
– VPN site à site.
} VPN d’accès à distance
Permet aux utilisateurs qui travaillent hors site (par exemple, à la maison, chez
un client, …) d’accéder à un serveur sur le réseau privé de votre organisation
en utilisant un réseau publique.
} Connexion VPN de site à site
– également appelées connexions VPN routeur à routeur
– permet de connecte deux segments d’un réseau privé sur un réseau public
tout en assurant la sécurité des communications.
4 OUZAOUIT
Implémentation de VPN
} les connexions VPN peuvent être implémentées de deux manière :
ü VPN matériel : Cisco, Nortel, IBM et Checkpoint
ü VPN logiciel : basé sur des protocoles :
o Au niveau 2
PPTP ou L2TP …
o Au niveau 3
Ipsec, …
o Au niveau 4
SSL ou TLS …
o Au niveau applicatif
ssh, …
5 OUZAOUIT
Implémentation de VPN
Application
Couches (5-7)
Couche Réseau
Réseau/ IPSec L2F
Transport L2TP
Couches (3-4) PPTP
GRE
P hysi que /
Liaison
Couches (1-2)
Protocoles VPN Description Standard
L2TP Layer 2 tunneling Protocol RFC 2 6 6 1
GRE Generic Routing RFC 1 7 0 1 et 2 7 8 4
Encapsulation
IPSec Internet Protocol RFC 2 4 0 1
Security
6 OUZAOUIT
Présentation d’IPSec
IPsec (IP Security Protocol) est une suite de protocoles destinés à protéger le
trafic au niveau de la couche réseau. En assurant :
o La confidentialité : l'émetteur chiffre les paquets avant de les transmettre sur
l'Internet.
o Intégrité : le récepteur vérifie que les paquets reçus n'ont pas été altérés lors
de la transmission.
o Authentification : le récepteur vérifie l'identité de l'émetteur. Plusieurs
méthodes d'authentification sont disponibles:
– Clés partagées : une «clé secrète» est déposée à l'avance sur chaque
extrémité.
– Certificats numériques signés : Chaque extrémité détient un certificat.
– Authentification externe. On fait appel à un service externe tel que
Kerberos ou Radius ...
7 OUZAOUIT
Composants d’IPsec
• Protocoles de sécurité :
ü Authentication Header (AH)
ü Encapsulation Security Payload (ESP)
• Bases de données internes :
ü Security Policy Database (SPD)
ü Security Association Database (SAD)
• Protocole d'échange de clefs :
ü Internet Key Exchange (IKE)
ü Internet Security Association Key Management Protocol (ISAKMP)
8 OUZAOUIT
Protocoles de sécurité
} Pour assurer la sécurité des données, IPsec fait appel à
deux mécanismes de sécurité, les “protocoles” AH et
ESP :
– AH (Authentification Header) est conçu pour
assurer l’intégrité des datagrammes IP sans
chiffrement des données . Le principe de AH est
d’ajouter au datagramme IP classique un champ supplémentaire permettant à la
réception de vérifier que les données incluses dans le datagramme n’ont pas été
modifiées.
₋ ESP (Encapsulating Security Payload) a pour rôle premier d’assurer la confidentialité
(cryptage), mais peut aussi assurer l’intégrité des données. Le principe de ESP est de
générer, à partir d’un datagramme IP classique, un nouveau datagramme dans lequel les
données et éventuellement l’en-tête original sont chiffrés.
9 OUZAOUIT
Les modes d’IPSec
} IPSec peut fonctionner en deux modes : le mode transport et le mode tunnel.
– En mode transport : seules les données sont protégées. Ce mode
n’est utilisable que dans le cas ou on veut envoyer des données sécurisés
entre deux poste de travaille dans le même réseau du fait que dans ce cas on
a pas besoin de crypter les adresses IPs.
– En mode tunnel, l’en-tête IP est également protégé et remplacé par un
nouvel en-tête. Ce nouvel en-tête sert à transporter le paquet jusqu’à la
fin du tunnel, où l’en-tête original est rétabli. Le mode tunnel est donc
utilisable pour sécuriser les échanges entre deux réseaux.
10 OUZAOUIT
Les modes d’IPSec
IPSec: Authentification Header (AH)
Portée de l’authentification AH
11 OUZAOUIT
Les modes d’IPSec
IPSec: Encapsulated Security Payload (ESP)
Portée de l’authentification et du chiffrement ESP
12 OUZAOUIT
Les modes d’IPSec
IPSec: AH et ESP
1) Mode Transport
v Il est utilisé pour sécuriser la communication entre deux postes ayant des
adresses publiques.
v On peut utiliser cette technique pour sécuriser la communication entre une
machine publique sur Internet (l’administrateur depuis son domicile par
exemple) et un serveur publique (pour du paramétrage à distance par
exemple), mais pour ce cas, il existe d’autres techniques comme SSH
(Secure Shell).
• AH et ESP peuvent, dans ce
mode, être vus comme un
protocole intermédiaire entre
TCP et IP
• L’en-tête IP doit porter des
adresses publiques pour voyager
à travers Internet.
13 OUZAOUIT
Les modes d’IPSec
IPSec: AH et ESP
2) Mode Tunnel
v Il est utilisé pour sécuriser la communication entre deux équipements
d’interconnexion (entre des routeurs ou des firewalls)
v C’est le mode qui sera utilisé pour réaliser un VPN, puisque nous
souhaitons adresser des machines privées. C’est la technique la plus
répandue pour faire du LAN to LAN VPN.
• L’en-tête IP initiale peut contenir
des adresses privées puisqu’elle
n’est pas utilisée par les routeurs
d’Internet.
• L’en-tête IP ajouté portera les @
IP des routeurs (ou firewalls)
d’interconnexion, qui sont
forcément publiques.
14 OUZAOUIT
La base de données (SPD) et Security
Policy (SP)
Ø Tout système implémentant IPSec possède deux bases de donnée distinctes dans laquelle ils stockent leurs
politique de sécurité SP (Security Policy) (ici, SPDatabase) et leurs association de sécurité SA
(Security Association) (ici, SADatabase).
} Initialement, les deux équipements de sécurité (terminaux, passerelles de sécurité) qui veulent protéger
leurs échanges disposent chacun de leur propre politique de sécurité (SP) dictée par leur responsable de
sécurité. Lorsqu’ils souhaitent entrer en communication, ils doivent, en fonction de leur politique de
sécurité, se mettre d’accord sur :
ü Les adresses IP de l'émetteur et du récepteur (unicast, mulitcast ou broadcast);
ü le protocole à utiliser (AH ou ESP) ;
ü Le mode IPSec à utiliser (tunnel ou transport) ;
ü Algorithme de chiffrement à utiliser pour le chiffrement des données.
ü Algorithme d'intégrité à utiliser pour l'intégrité des données.
ü Clé de chiffrement à utiliser pour chiffrer les données.
ü Clé d'intégrité à utiliser pour l'intégrité des données.
ü Durée de vie de l'association de sécurité.
ü ….
15 OUZAOUIT
La base de données (SPD) et Security
Policy (SP)
Ø L’ensemble des SP est regroupé dans une SPD : « Security Policy Database ». La SPD
définit donc le traitement de chaque type de trafic entrant ou sortant, en fonction des
émetteurs /récepteurs, selon trois types :
ü DISCARD, dans ce cas le trafic sera tout simplement jeté. Il n'est pas autorisé à sortir de
la passerelle ni à la traverser ni à être délivré à une quelconque application.
ü BYPASS IPSEC laisse passer le trafic sans traitement IPSec.
ü APPLY IPSEC signifie que des services IPSec sont à appliquer à ce trafic.
spdadd [Link]/24 [Link]/24 allow
16 OUZAOUIT
La base de données (SAD) et Security
Association (SA)
} Le résultat de cette négociation des équipements de leur politique de sécurité (SP) est
appelé association de sécurité (SA). Les SA sont stockés dans une base données
nommée (SAD).
} Pour une communication bidirectionnelle on a besoin de deux SA une pour le trafic
entrant et une pour le trafic sortant.
Exemple de SA
17 OUZAOUIT
Protocoles de gestion des clés
} AH et ESP utilisent des paramètres de sécurités ( des algorithme de
chiffrement et de hachage, des cléfs, …) pour assurer l’intégrité et la
confidentialité des données.
} Les deux parties qui veulent communiquer en IPsec doivent se mettre
d’accord sur ces paramètres avant d’échanger les données.
} Pour négocier les paramètres de sécurité IPsec utilise des protocoles de
négociation :
ü ISAKMP (Internet Security Association and Key Management Protocol)
ü IKE (Internet Key Exchange)
18 OUZAOUIT
Protocoles de gestion des clés
} ISAKMP : est un protocole de gestion des clés et des associations de sécurité
utilisé pour établir, négocier et maintenir les paramètres de sécurité dans les
connexions VPN.
} IKE : est un sous-ensemble d'ISAKMP qui se concentre spécifiquement sur
l'échange des clés de chiffrement pour les connexions VPN.
19 OUZAOUIT
Protocoles de gestion des clés
ISAKMP
ISAKMP permet la négociation, l’établissement, la modification et la suppression des associations de
sécurité (SA) et de leurs attributs . Cette négociation s'effectue en deux phases :
} Première phase : dans cette phase un certain nombre de paramètres de sécurité propres à ISAKMP sont
négociés:
ü Méthodes d'authentification :
Les pairs doivent s'authentifier mutuellement pour établir une connexion sécurisée. Différentes
méthodes d'authentification peuvent être utilisées, telles que authentification par clé pré-partagée (PSK),
certificats numériques, ...
ü Algorithmes de chiffrement et d'intégrité :
Les pairs négocient les algorithmes de chiffrement et d'intégrité à utiliser pour protéger les
données échangées. Les algorithmes couramment utilisés comprennent : Chiffrement symétrique (AES,
DES, 3DES), algorithmes d'intégrité (HMAC-SHA1, HMAC-SHA256, etc)
ü Durées de vie des SA (Security Associations) :
Les pairs définissent la durée de validité des associations de sécurité ISAKMP (ISAKMP SA). Cela
spécifie la période après laquelle les clés et les paramètres de sécurité doivent être renégociés.
Ces éléments forment la SA ISAKMP. Elle servira à sécuriser l'ensemble des échanges ISAKMP futurs.
20 OUZAOUIT
Protocoles de gestion des clés
ISAKMP
} Seconde phase : Dans cette phase d'ISAKMP, également appelée Négociation de
l'association de sécurité IPSec (IPSec SA), les pairs échangent les paramètres
spécifiques à IPsec qui interviendront pour le transferts des données applicatives.
les principaux paramètres de sécurité échangés lors de cette phase sont :
ü Protocoles de sécurité (AH ou EPS)
ü Algorithmes de chiffrement ( AES, DES, 3DES)
ü Algorithmes d'intégrité (HMAC-SHA1, HMAC-SHA256, etc)
ü Clés de chiffrement et d'intégrité
ü Durées de vie des SA
} Les échanges de cette phase sont sécurisés grâce à la SA ISAKMP.
} Le résultat de cette négociation est stocké dans la SA IPSec
21 OUZAOUIT
Protocoles de gestion des clés
ISAKMP
22 OUZAOUIT
Protocoles de gestion des clés
IKE
} IKE (Internet Key Exchange) est un protocole de couche 4 qui est une
amélioration d'ISAKMP. C’est protocole de gestion des clés sécurisé utilisé pour
configurer un canal de communication sécurisé et authentifié entre deux équipements.
} Deux versions des normes IKE sont disponibles :
ü IKE version 1
ü IKE version 2
} La négociation IKE comprend deux phases
23 OUZAOUIT
Protocoles de gestion des clés
IKE
} Phase 1 de la négociation du tunnel IKE
v Les participants échangent des propositions pour des services de sécurité
acceptables tels que :
ü Algorithmes de chiffrement (DES,3DES,AES).
ü Algorithmes d’integrité : (MD5, SHA,…)
ü Méthode d’authentification : Clé pré-partagée ou certificats
RSA/DSA.
v Les échanges de phase 1 peuvent avoir lieu en mode principal (main
mode) ou en mode agressif. Vous pouvez choisir votre mode lors de la
configuration de la stratégie IKE.
24 OUZAOUIT
Protocoles de gestion des clés
IKE
} Mode principal
En mode principal, l’initiant et le destinataire envoient trois échanges bidirectionnels (six messages au total) pour
accomplir les services suivants :
ü Premier échange (messages 1 et 2) : propose et accepte les algorithmes de chiffrement et d’authentification.
ü Deuxième échange (messages 3 et 4) : exécute un échange DH, et l’initiatrice et le destinataire fournissent
chacun un numéro pseudorandom.
ü Troisième échange (messages 5 et 6) : envoie et vérifie l’identité de l’initiant et du destinataire.
} Mode agressif
En mode agressif, l’initiant et le destinataire atteignent les mêmes objectifs qu’avec le mode principal, mais en seulement
deux échanges, avec un total de trois messages :
ü Premier message : l’initiant propose l’association de sécurité (SA), lance un échange DH et envoie un numéro
pseudo-random et son identité IKE.
ü Deuxième message : le destinataire accepte la SA ; authentifie l’initiant ; et envoie un numéro pseudo-
random, son identité IKE et, si vous utilisez des certificats, le certificat du destinataire.
ü Troisième message : l’initiant authentifie le destinataire, confirme l’échange
25 OUZAOUIT
Protocoles de gestion des clés
IKE
} Phase 2 de la négociation du tunnel IPsec
} Une fois que les participants ont établi un canal sécurisé et authentifié, ils passent à
la phase 2, au cours de laquelle ils négocient des associations de sécurité (AS)
pour sécuriser les données à transmettre via le tunnel IPsec.
} À l’instar du processus de la phase 1, les participants échangent des propositions
pour déterminer quels paramètres de sécurité utiliser dans l’AS. Une proposition de
phase 2 comprend également un protocole de sécurité (ESP ou AH) et des
algorithmes de chiffrement et d’authentification sélectionnés.
} Quel que soit le mode utilisé dans la phase 1, la phase 2 fonctionne toujours en mode
rapide et implique l’échange de trois messages.
26 OUZAOUIT
Protocoles de gestion des clés
IKE
27 OUZAOUIT
Protocoles de gestion des clés
IKE
28 OUZAOUIT
Relation entre IPsec, SPD et la SAD
29 OUZAOUIT
Relation entre IPsec, SPD et la SAD
1. IPSec reçoit les données à envoyer ;
2. Consulte la base de données des politiques de sécurité (SPD) ;
3. Si indication d’application des mécanismes de sécurité, elle récupère les
caractéristiques requises pour la SA correspondante et va consulter la base des
SA (SAD) ;
4. Si la SA existe déjà, elle est utilisé pour traiter le trafic ;
5. Dans le cas contraire, IPSec fait appel à IKE pour etablir une nouvelle SA.
30 OUZAOUIT
Relation entre IPsec, SPD et la SAD
1. IPSEC reçoit les données en provenance du réseau ;
2. Examine l’en-tête pour savoir si ce paquet s’est vu appliquer un ou plusieurs
services IPSEC et si oui, quelles sont les références de la SA ;
3. Consulte alors la SAD pour connaître les paramètres à utiliser pour la
vérification et/ou le déchiffrement du paquet ;
4. Consultation de la SPD pour savoir si l’association de sécurité appliquée au
paquet correspondait bien à celle requise ;
5. Dans le cas où le paquet reçu serait un paquet IP classique, la SPD permet de
savoir s ’il a néanmoins le droit de passer.
31 OUZAOUIT
Critiques d’IPSec
• Les performances sur le lien IPSec sont réduites à cause du chiffrement.
• IPSec ne supporte pas le multicast : AH et ESP l’autorisent, mais IKE ne prévoit
pas de négocier des SAs entre plus de deux firewalls.
• La complexité de IKE conduit à des incompatibilités entre les différents
constructeurs.
• Le trafic est suspendu pendant le renouvellement des SAs.
• La gestion des messages ICMP n’est pas triviale : si un message ICMP vient d’un
équipement par lequel transite le tunnel, il ne peut remonter que jusqu’au firewall
d’origine. Il faut alors que ce firewall sache prévenir la vraie source des données
pour lui faire comprendre que le VPN est indisponible.
• Il ne doit pas y avoir de NAT au dessus de VPN (le NAT en dessous de VPN est
courant, voire obligatoire sur un firewall).
32 OUZAOUIT
OpenVPN
OpenVPN cumule de nombreux avantages car il est :
} open source et fiable ;
} gratuit au niveau logiciel ;
} multi-plates-formes (c'est-à-dire compatible Windows, Linux, Mac OS X...) ;
} très répandu ;
} capable de tourner sur n'importe quel port en écoute côté serveur (y
compris 80 ou 443).
33 OUZAOUIT
DMVPN (Dynamic Multipoint VPN)
} D’un point de vue High-level, il s’agit de “Point to Multipoint
overlay VPN Tunneling” où Overlay veut dire que le DMVPN
fonctionne au dessus d’autres protocoles (GRE / IPsec).
} D’un point de vue Low-level, il s’agit de tunnels GRE over IPsec
site-to-site tunnels – Gérables dynamiquement et évolutifs.
} High-level design & operations
–Les sites distants (spokes) montent des tunnels statiques vers un
central (Hub).
–Les Spokes échangent des informations de routage avec les hub
au travers du tunnel statique (EIGRP, OSPF, RIP…).
–Le trafic Spoke to hub est routé directement dans le tunnel
statique.
–Le trafic Spoke to Spoke est routé dynamiquement avec des
tunnels à la demande.
34 OUZAOUIT
Pourquoi DMVPN?
} La gestion de la configuration est simple (les spokes utilisent un template standard)
et celà facilite le provisioning (Aucune configuration supplémentaire sur le Hub quand
on ajoute d’autres spokes).
} Le DMVPN supporte le transport de nombreux protocoles (IPv4, v6, unicast,
multicast, static & dynamic routing) et utilise n’importe quel transport IP (DSL, Cable,
Différents ISPs..). Il fonctionne aussi au travers du NAT.
DMVPN vs Others:
IPsec statique
} L’IPsec statique est difficile à faire évoluer d’un point de vue “management”, ajouter
des nouveaux sites requière beaucoup de configuration. Ce type de VPN ne supporte
pas le routage dynamique ou le Multicast (de base).
MPLS L3 VPN
} Ajoute une complexité de routage supplémentaire, ils ne supportent pas forcément
IPv6 or IPv4/v6 Multicast.
} L’Interopérabilité avec les fournisseurs d’accès pour le MPLS L3 VPN est difficile à
mettre en place, et besoin de circuits séparés pour l’accès internet.
35 OUZAOUIT
Fonctionnement du DMVPN
} Il s’agit d’un réseau Full mesh de tunnels IPsec à la demande,
avec un minimum de configuration grâce aux protocoles
suivants :
–Multipoint GRE Tunnels (mGRE)
–NHRP (Permet au Hub de retrouver les adresses IP des spokes
dynamiquement).
–IPsec crypto profiles (Encryption).
–Routage (underlay/overlay)
} La technologie DMVPN réduit le besoin de configurer un full
mesh (n*(n-1)/2) de tunnels statiques, ici nous n’avons qu’un
seul tunnel mGRE sur le Hub pour tous. Les tunnels sont ensuite
montés à la demande entre les différents nœuds, selon le trafic,
entre les spokes. Le chiffrement via IPsec est optionnel.
36 OUZAOUIT
Fonctionnement du DMVPN
Voici le schéma à titre d’exemple dans cette partie:
Deux IGP sont requis:
Underly: Pour la connectivité IP publique et monter les tunnels GRE.
Overlay: Pour s’échanger des routes privées une fois le tunnel monté.
37 OUZAOUIT
Fonctionnement du DMVPN
Ici les adresses IP Underlay, dans un réseau directement connecté, mais qui pourrait
très bien être un réseau publique internet, en IPv4 ou en IPv6 car les deux
protocoles sont supportés. Ce sont des IP “Publiques”.
38 OUZAOUIT
Fonctionnement du DMVPN
ci les adresses IP Overlay, qui sont en fait les adresses IP que l’on donne aux tunnels
GRE. Ce sont des IP Privées.
39 OUZAOUIT
Fonctionnement du DMVPN
Fonctionnement – Hub to spoke
} 2 composants:
–DMVPN Hub / NHRP Servers (NHS).
–DMVPN Spokes / NHRP Clients (NHC).
} Les Spokes (Clients) s’enregistrent avec le Hub (Serveur):
–Ils spécifient manuellement l’adresse du Hub dans le Tunnel
GRE (tunnel destination…).
–Ils envoient cela via le NHRP Registration Request
–Les Hub apprennent dynamiquement les adresses VPN
(Privées) et adresses NBMA (Publiques).
} Les Spokes établissent les tunnels vers les Hub, puis ils
échangent ensuite les infos de routage IGP au travers du
Tunnel.
40 OUZAOUIT