• Aucun résultat trouvé

[PDF] Cours d'introduction au éseaux privés virtuel mérhodes et application - Cours réseau

N/A
N/A
Protected

Academic year: 2021

Partager "[PDF] Cours d'introduction au éseaux privés virtuel mérhodes et application - Cours réseau"

Copied!
33
0
0

Texte intégral

(1)

Eric DENIZOT José PEREIRA Anthony BERGER

(2)

Introduction : ... 4

Présentation : rôle et fonctionnement des VPN : ... 5

I.

Clés, chiffrement, sécurité : ... 7

1.

Les éléments du chiffrement : ... 7

2.

Le chiffrement : ... 7

a. Chiffrement symétrique :... 8

b. Chiffrement asymétrique : ... 8

II.

Description du fonctionnement : ... 9

1.

le protocole PPP : ... 9

2.

les différents protocoles utilisés pour l’établissement d’un VPN : . 10

a. Le protocole PPTP :... 10

b. Le protocole L2F : ... 11

c. Le protocole L2TP :... 11

3.

Le protocole de Niveau 3 : IPSEC :... 13

a. Protocoles liée au traitement des paquets (ou Format IPSec)... 13

b. SA (Seturity Association) : ... 16

c. Les protocoles IPSec de gestion et d’échange de clés : ... 17

d. Fonctionnement d’IPSec: ... 19

III.

Les différentes architectures possibles : ... 21

1.

De poste à poste : ... 21

2.

De poste à site : ... 21

(3)

IV.

Les offres du marché : ... 23

a.

Les solutions intégrées... 23

b.

Les serveurs VPN... 23

c.

L'option du service aménagé... 24

Conclusion : ... 25

Glossaire... 26

Bibliographie ... 27

Table des illustrations : ... 28

Annexes : ... 29

A. Fonctionnalités des solutions commerciales : ... 29

B. Quelques fournisseurs et commentaires :... 30

C. entête AH :... 31

(4)

Introduction :

Un VPN (Virtual Private Network ou RPV Réseau Privé Virtuel), au sens le plus

large, consiste à établir un réseau logique entre deux points, en utilisant les ressources de réseaux physiques.

Les techniques VPN sont utilisées depuis longtemps par les opérateurs télécoms. Depuis quelques années, des protocoles tels qu’IPSec permettent de créer des VPN en utilisant Internet. Cette utilisation peut concerner les employés nomades d’une entreprise mais aussi les utilisateurs d’un site ayant accès aux ressources d’un autre site. Par exemple, un siège et ses filiales.

Quelques soient les choix techniques effectués, l’objectif est de fournir aux utilisateurs des conditions d’utilisation identiques à un réseau privé (intranet), à travers le réseau public (Internet). L’utilisateur doit pouvoir effectuer les mêmes opérations que s’il était physiquement sur le réseau de l’entreprise. Il existe aussi une utilisation « interne » des VPN ; par exemple dans le cadre de l’utilisation d’un réseau sans fils que l’on souhaite distinguer de l’intranet.

Dans ce projet, nous commencerons par rappeler comment les opérateurs télécoms construisent et proposent des VPN (niveau 2 et 3). Nous expliquerons ensuite les diverses utilisations qui peuvent être faites des VPN au sein d’une entreprise.

Afin de pouvoir comprendre pourquoi et comment on sécurise une communication, nous expliquerons les mécanismes clés des VPN, c'est-à-dire l’authentification et le chiffrement.

Nous avons privilégié les VPN de niveau 3 en détaillant particulièrement IPSec. Nous expliquerons ce parti pris.

Les architectures réseau nécessaires pour établir des VPN peuvent être très variées, nous proposerons diverses organisations possibles pour finir sur les typologies d’offres que l’on retrouvera sur le marché.

Enfin nous tenterons de conclure ce projet, avec la simple ambition d’avoir résumé les points essentiels de ce vaste sujet.

(5)

Présentation : rôle et fonctionnement des VPN :

Réseaux d’opérateurs de télécommunication, offre VPN de niveau 2 et 3

Les VPN sont à la base des offres des opérateurs. Leur métier est de fournir des accès WAN (opérateurs data et voix). A partir des liaisons dont l’opérateur dispose il crée un ou plusieurs réseaux interconnectant ses propres sites. Il propose ensuite la location à ses clients d’une bande passante et un service d’exploitation sur son réseau. Le

partitionnement logique du réseau est réalisé grâce aux circuits virtuels, qui permettent de constituer autant de VPN qu’il y a de clients.

Les circuits virtuels (CV) sont des liaisons logiques, se partageant un même support physique. Grâce aux CV, un réseau physique peut être partitionné en plusieurs réseaux logiques indépendants et étanches les uns des autres, créant ainsi ce qu’on appelle des VPN. Pour l’utilisateur, le VPN se comporte conne s’il était seul sur le réseau, alors qu’il est partagé.

Limites de responsabilité VPN niveau 2 et 3 :

Figure 1 : service Niveau 2 ou 3. Les VPN de niveau 2 :

Ils reposent sur Frame Relay et ATM. L’opérateur garantit au client la bande passante demandée ainsi que le niveau de service souhaité, avec des engagements de résultats.

Les VPN de niveau 3 :

Ils reposent sur IP et MPLS. L’opérateur s’engage sur une qualité de service équivalente voire supérieure, à celle pouvant être offerte par le niveau 2.

Les VPN IPSec (niv 3) :

Ils reposent sur le protocole de cryptage IPSec (protocole IPSec détaillé plus loin). On crée un tunnel crypté qui garantit la confidentialité des informations vis-à-vis des autres utilisateurs. Si le réseau IP est celui de l’opérateur, celui-ci peut s’engager sur une qualité de service. Si le réseau IP est l’internet, l’opérateur ne s’engage quasiment sur aucune qualité de service.

(6)

Les VPN en entreprise :

Les entreprises font de plus en plus appel à des réseaux privés virtuels (VPN) pour relier à leurs réseaux, leurs filiales, leurs télétravailleurs, leurs partenaires et d'autres utilisateurs. Alternative aux solutions d'appels à distance et aux lignes spécialisées qui

ont un coût récurrent. Les VPN permettent de transférer en sécurité des données, pour

un coût plus faible par l’utilisation d’Internet, à priori, déjà disponible. Il existe en fait trois catégories d’utilisation :

ƒ VPN Intranet : réseau virtuel privé entre des réseaux internes d'une entreprise, parmi ses départements par exemple.

ƒ VPN Remote Access : réseau virtuel privé entre une entreprise et des employées distants ou mobiles.

ƒ VPN Extranet : réseau virtuel privé entre une entreprise et ses partenaires, clients, ou fournisseurs.

Un VPN utilise donc des connexions de réseau déjà en place. Les technologies de réseau privé virtuel exploitent le protocole TCP/IP en service sur Internet. Le paquet sécurisé est crée par l’équipement sur lequel fonctionne le VPN, puis ce dernier l’expédie à un autre équipement situé à l’autre bout (du tunnel) en se servant du dispositif de transport mis à sa disposition. Par conséquent, un VPN peut être implémenté n’importe où sur un réseau privé.

Un des inconvénients majeur de l’utilisation d’Internet dans le cadre de communications d’entreprise est le manque de garantie du réseau, les congestions sont possibles et il n’y a pas de qualité de service (QoS), à moins d’utiliser un réseau d’opérateur comme nous l’avons vu plus haut.

La création d’un VPN nécessite la création d’un tunnel. Un tunnel est un canal de communication dans lequel circulerons les données cryptées.

Le principe du VPN est donc basé sur la technique du tunnelling. Cela consiste à

construire un chemin virtuel après avoir identifié l’émetteur et le destinataire. La source peut ensuite éventuellement chiffrer les données (on parle alors de VPN chiffrés) et les achemine en empruntant ce chemin virtuel.

Les données à transmettre peuvent appartenir à un protocole différent d’IP. Dans ce cas le protocole de tunnelling encapsule les données en rajoutant une entête. Permettant le routage des trames dans le tunnel.

Le tunneling est l’ensemble des processus d’encapsulation, de transmission et de désencapsulation.

(7)

I. Clés, chiffrement, sécurité :

Les technologies ont considérablement évoluées depuis l’antiquité. Du papyrus au papier, puis au télégramme, au télex, au téléphone, à la télécopie, à l’email, mais la sécurité a toujours occupée une place importante.

La sécurité dépend du support de communication. Plus le support est ouvert, plus il devient probable que le message puisse tomber entre des mains indésirables.

Les méthodes de communications moderne sont ouvertes au public ce qui permet à une entité située entre les deux extrémités de la communication d’intercepter les messages. Au départ, le chiffrement repose sur un secret partagé par l’émetteur et le destinataire du message.

Le plus souvent, l’algorithme de chiffrement est connu mais la clé, elle, ne l’ai pas. Le problème est alors de faire en sorte que la clé reste réellement secrète c'est-à-dire qu’elle ne puisse être obtenue que par ceux qui sont véritablement censés la détenir.

1. Les éléments du chiffrement :

Tout système peut faire l’objet d’une attaque ou d’un accès illégal aux données.

Chaque intrusion représente une menace différente plus ou moins importante et doit être analysée pour en déterminer la viabilité et les dommages encourus.

Grâce à ces analyses, une contre-mesure adaptée doit être mis en place.

Les outils de chiffrement sont ces contre-mesures et il en existe de nombreuses formes. Différentes techniques de chiffrement de message pouvant être utilisées pour garantir l’échange sécurisé des clés, le maintient de l’intégrité et l’authenticité des messages.

Tous ces outils constituent un crypto système auquel on peut attribuer une puissance en fonction de sa complexité.

Pour qu’un système soit bien protégé, l’attaque doit nécessiter une quantité de calculs informatiques très importante.

2. Le chiffrement :

La confidentialité est assurée par un chiffrement qui converti un message clair en une suite de signes inintelligible et vice versa.

Il existe deux sortes d’algorithme de chiffrement : ™ Symétrique.

™ Asymétrique.

Cependant, quelque soit la « symétrie » de l’algorithme, le résultat est : TexteClair = DECHIFFREMENT(CHIFFREMENT(TexteClair))

(8)

a. Chiffrement symétrique :

Le chiffrement symétrique utilise une clé unique que ce soit pour le chiffrement ou pour le déchiffrement.

Il existe deux types de chiffrement, celui par blocs (AES, CAST et Blowfish), utilisé par IPSEC et celui par flux. En ce qui concerne le traitement par blocs, la taille des blocs dépend du protocole mais chaque opération sur les blocs est traitée isolément.

En revanche, le traitement par flux, comme RC4, traite les données bit par bit.

A l’aide d’une clé, le chiffrement des flux produit un flux auquel une fonction XOR est appliquée avec l’entrée. Le chiffrement et le déchiffrement doivent être synchronisés pour faire en sorte que le bit du flux employé pour chiffrer un bit du texte clair soit également utilisé pour déchiffrer le bit correspondant du texte brouillé.

Le chiffrement par blocs traite les données en commençant par les décomposer en paquets de même taille (il peut être nécessaire d’utiliser des bits de remplissage).

Pour faire du chiffrement par blocs, deux modes principaux sont utilisés : le mode ECB (Electronic Code Book) pour lequel un même texte clair codé par la même clé produit le même texte brouillé ce qui rend la construction et l’utilisation d’un livre de code (si l’on sait qu’un datagramme IP a été codé, les 20 premiers octets correspondent aux adresses IP ce qui permettrait, en s’aidant d’un livre de code, de retrouver la clé) et le mode CBC (cipher Bock Chaining) pour lequel un bloc de texte brouillé est obtenu en effectuant un XOR entre le texte clair et le précédant bloc de texte brouillé.

Le premier bloc nécessite l’utilisation d’un vecteur d’initialisation (VI).

Il existe également le mode CFB (Cypher FeedBack Mode) et le mode OFB (OutPut FeedBack Mode).

b. Chiffrement asymétrique :

Les algorithmes asymétriques sont également connus sous le nom de algorithme à clé public. On utilise 2 clés, l’une publique et l’autre privée, servant, l’une pour le chiffrement et l’autre pour le déchiffrement.

Ce chiffrement à clé publique a été inventé par Whit-field Diffie et Martin Hellman.

L’algorithme à clé publique le plus répandu de nos jour est l’algorithme RSA du nom de ses inventeur : Ron Rivest, Adi Shamir et Leonard Adleman.

La sécurité de RSA repose sur la complexité de la factorisation du produit de deux nombres premiers de valeur élevé.

La particularité de RSA est que les deux clés peuvent servir à chiffrer des données.

Mais RSA présente également des inconvénients : il est relativement lent et ne peut fonctionner sur les données que jusqu’à la taille du modulo de sa clé.

(9)

II. Description du fonctionnement :

1. le protocole PPP :

Le protocole PPP n’est pas un protocole permettant l’établissement d’un VPN mais il est très souvent utilisé pour transférer les informations au travers d’un VPN. PPP fut développé pour transférer des données sur des liens synchrones ou asynchrones entre deux points en utilisant HDLC comme base d’encapsulation et un Frame Check Sequence (FCS) HDLC pour la détection des erreurs. Cette liaison permet le full duplex et garantit l’ordre d’arrivée des paquets.

Ce protocole permet le multiplexage simultané de plusieurs protocoles de niveau 3 du modèle OSI. Il encapsule des paquets IP, IPX et NetBEUI, ... dans des trames PPP, puis transmet ces paquets PPP encapsulés à travers la liaison point à point. PPP est donc utilisé entre un client distant et un serveur d’accès distant.

Les différentes méthodes d’authentification : Le protocole PAP :

Le protocole d'authentification par mot de passe (PAP) est une méthode simple pour établir l'identité du site distant. Elle est semblable à la procédure login d'une session sur un serveur. Cette procédure est effectuée seulement après que la liaison ait été établie. Dans le cadre d’une authentification utilisant le protocole PAP, le client s'authentifie auprès du serveur en lui envoyant un paquet « Authentication-Request » contenant l'identité du client et le mot de passe associé. Le serveur compare ces données à celle contenu dans son fichier d'authentification. L'inconvénient de cette technique est que le mot de passe transite « en clair » sur la liaison.

Le protocole CHAP :

Dans le cadre de l’utilisation du protocole CHAP, le serveur envoie au client un paquet contenant un challenge (mot de 16 bits) défini aléatoirement et son nom. Le client récupère dans sa table définie localement, à l'aide du nom du serveur, le secret correspondant. Le client combine le secret approprié avec le challenge, chiffre ce résultat et le résultat du chiffrement est retourné au serveur avec le nom du client. Le serveur effectue alors les mêmes opérations et si les deux résultats sont identiques la connexion du client est acceptée.

Format de la trame PPP :

(10)

2. les différents protocoles utilisés pour l’établissement

d’un VPN :

Il existe quatre protocoles principaux permettant l’établissement d’un VPN :

ƒ le protocole PPTP (Point to Point Tunneling Protocol) mis au point par la société Microsoft ;

ƒ le protocole L2F (Layer Two Forwarding) mis au point par la société CISCO ; ƒ le protocole L2TP (Layer Two Tunneling Protocol) propose par l’IETF;

ƒ le protocole IPSEC.

PPTP et L2TP sont tous deux des protocoles de niveaux 2.

a. Le protocole PPTP :

PPTP (Point to Point Tunneling Protocol) est le protocole standard pour créer des VPN sous Windows. Il encapsule les paquets dans du PPP, lui-même encapsulé dans du GRE (Generic Routing Encapsulation). PPTP permet à PPP d’être transporté dans un tunnel au travers d’un réseau IP mais n’apporte aucun changement au protocole PPP.

PPTP emploie deux canaux : une connexion de contrôle et une connexion de données avec GRE.

PPTP permet le chiffrement des données PPP mais aussi leur compression et confère au protocole, un niveau supplémentaire de sécurité et de communication multi protocolaire sur internet.

Figure 3 : format de trame PPTP.

L’avantage principal de ce protocole est que le client est disponible pour toutes les versions de Windows depuis Windows 95. De plus il est extrêmement facile à configurer. Cependant PPTP a un gros inconvénient. Effectivement ce protocole a de nombreuses failles de sécurité :

• hachage de mot passe faible

• défaut de conception du protocole challenge/réponse • erreur dans l’implémentation du protocole de chiffrement • …

(11)

Pour palier à ces failles, Microsoft ont crée PPTPv2. Ce protocole a donc supprimé une grande partie des failles de sécurité. Cependant ce protocole est toujours vulnérable à des attaques hors-ligne visant à deviner le mot de passe. C’est pourquoi, actuellement, PPTP n’est pas recommandé pour des applications où la sécurité est un facteur très important.

b. Le protocole L2F :

Protocole développé par CISCO, Northern telecom et Shiva.

Il permet à un serveur d’accès distant de véhiculer le trafic sur PPP et transférer ces données jusqu’à un serveur L2F (routeur). Le serveur L2F désencapsule les paquets et les envoie sur le réseau.

Figure 4 : tunnel L2F.

c. Le protocole L2TP :

L2TP résulte de la fusion des protocoles PPTP et L2F et permet d’encapsuler PPP et de le transporter sur UDP.

L2TP permet le transport en tunneling de trames PPP par-dessus un réseau de transit de manière aussi transparent que possible pour les applications et les utilisateurs.

Le client se connecte à un LAC (L2TP Access Concentrator), qui est un serveur d’accès, appelé NAS (Network Access Server). L’encapsulation dans L2TP s’effectue entre le LAC et un LNS (L2TP Network Server). Un client peut également initier une session L2TP directement. Comme pour PPTP, L2TP utilise deux canaux.

Les tunnels sont dits ˝Voluntary˝ si le client initie le tunnel directement avec le concentrateur VPN et ˝Compulsory˝ lorsqu’un équipement intermédiaire (le LNS) initie le tunnel avec le concentrateur VPN en lieu et place du client.

(12)

L2TP apporte des fonctionnalités de sécurité comme l’authentification et le chiffrement (CHAP, secret communs, etc.). Cependant ces fonctionnalités semblent peu importante par rapport aux mécanismes apportés par IPSec. De plus ces fonctionnalités, sur L2TP, ne sont pas forcément de bout en bout. Une des alternatives est de sécuriser L2TP avec IPSec, qui encapsule le L2TP dans l’en-tête ESP.

Expliquons le processus d’établissement du tunnel basé sur Internet entre un utilisateur extérieur et une entreprise :

Figure 5 : établissement de tunnel.

1. L’utilisateur extérieur établie une connexion PPP avec le LAC (appartient au FAI).

2. Le LAC vérifie les informations d’authentification du client.

3. Un tunnel et établie entre le LAC et le LNS (par exemple un concentrateur VPN). De plus les informations d’authentification récoltés lors de l’étape 1 sont expédiées à la passerelle du point de concentration. L’utilisateur est alors identifié par le LNS.

4. L’utilisateur possède alors un lien PPP de bout en bout.

Au final, le raccordement entre l'utilisateur distant et le réseau de l’entreprise est semblable à n'importe quel raccordement PPP. Quand le LAC reçoit les trames de l'utilisateur à travers le lien PPP, elles sont encapsulées dans L2TP, et expédiées à travers le tunnel jusqu’au LNS. La passerelle du point de concentration reçoit ces trames, désencapsule la trame L2TP, et les traite en tant que trames entrantes normales.

(13)

3. Le protocole de Niveau 3 : IPSEC :

Aujourd’hui, le protocole le plus utilisé pour la mise en place des VPN est IPSec. Il est l’un des standards les plus diffusé et le plus ouvert. Effectivement IPSec offre plusieurs services : le chiffrement, le contrôle d’intégrité et l’authentification. De plus, il est nativement implémenté dans IPV6 qui le rend par conséquent comme le protocole incontournable pour les communications sécurisées dans les années à venir.

Les objectifs de la sécurité d’IPSec sont :

- Authentification de l’origine des données pour le trafic IP par signature RSA. - Contrôle d’intégrité des paquets IP par le fonction hmac_md5, hmac_sha_1.

- Confidentialité des données assurée par le chiffrement symétrique DES, 3DES, AES…

- Confidentialité limitée du flux d’esprit.

- Protection anti-rejeu : les paquets chiffrés capturés ne seront pas acceptés en cas de rejeu.

- Contrôle des accès : seul le trafic qui rencontre une politique spécifique est autorisé au niveau des accès.

Les fonctionnalités d’IPSec peuvent être implémentées soit directement dans le système d’exploitation, soit ajoutées en tant que composant optionnel sous la forme d’un ensemble logiciel spécifique ou d’un équipement matériel indépendant.

IPSec fonctionne selon deux modes différents : mode transport et mode tunnel.

Le mode transport conserve l’en-tête IP original. Le mode tunnel crée un nouvel en-tête IP pour envoyer le paquet original par le tunnel.

Ces deux modes s’appliquent aux VPN. Le mode transport est utilisé pour sécuriser le trafic dans les tunnels créés par L2TP ou GRE, tandis que le mode tunnel combine sécurité et tunneling pour IPSec.

a. Protocoles liée au traitement des paquets (ou Format IPSec)

IPSec autorise deux formats d’en-tête : AH et ESP.

• AH (Authentification Header), défini dans le RFC 2402

Le protocole AH garantit l’authentification de l’origine des données, le contrôle d’intégrité de l’ensemble du paquet (données + en-têtes IP) et des services anti-rejeu limités et optionnel. AH ne garantit pas la confidentialité et n’est donc pas accompagné d’un algorithme de chiffrement.

L’en-tête AH est positionné entre l’en-tête IP et l’en-tête du protocole de la couche supérieure.

(14)

En-tête IP En-tête L4 Data IPv4

Authentification et contrôle d'intégrité

En-tête IP AH En-tête L4 Data IPv4 + IPSec(AH)

0 7 15 31

Suivant Longeur RESERVE

SPI (Security Parameter Index)

Numéro de séquence

Données d'authentification

Figure 6: En-tête AH

Le champ le plus important de cet en-tête est le champ Données d’authentification. Ce champ est de taille variable et contient le résultat de la fonction de vérification de l’intégrité. Cette fonction calcule l’ICV (Integrity Check Value) qui est généré à partir des champs immuables de l’en-tête IP (version, taille, source, …), des champs de l’en-tête pouvant être modifiés mais prédictibles (adresse de destination), de certain champs de l’en-tête AH et des données (au sens IP du terme, soit tout qui ce qui reste après l’en-tête AH). L’ICV est un MAC (Message Authentification Code).

Tous les champs de cet en-tête sont détaillés dans l’annexe.

• ESP (Encapsulating Security Payload), défini dans le RFC 2406

Le protocole ESP est un en-tête de protocole inséré dans un datagramme IP pour garantir la confidentialité, l’authentification de l’origine des données, l’anti-rejeu et les services d’intégrité des données.

ESP garantit la confidentialité grâce à une unité de chiffrement et l’intégrité des données grâce à un authentifiant.

Dans un paquet IPv4, un nouvel en-tête généré par ESP est inséré immédiatement après l’en-tête IP. Avec IPv6, l’en-tête généré par ESP devient l’une des extensions d’en-tête. Avant d’ajouter l’en-tête qui lui est propre, le protocole ESP réalise le chiffrement des données et ajoute les octets de padding (remplissage due à l’utilisation de certains algorithmes de chiffrement), si nécessaire.

(15)

Figure 7 : En-tête ESP

Le SPI permet d’identifier de manière unique la SA associée au paquet. Ainsi les paquets reçus ne correspondant pas à la SA identifiés sont détruits.

Comme pour l’en-tête AH, le champ Données d’authentification contient un ICV qui est calculé de la même manière que pour le protocole AH en utilisant les champs de l’en-tête ESP. Tous les champs de cet en-tête sont détaillés dans l’annexe.

La figure suivante montre l’établissement du tunnel VPN en utilisant le protocole ESP.

(16)

• AH et ESP

Il est également possible de cumuler les deux modes, ESP et AH afin d’obtenir la protection des données (chiffrement via ESP et authentification et contrôle d’intégrité de la partie ESP) et l’authentification et le contrôle d’intégrité de tout le paquet grâce à AH.

Figure 9 : En-tête AH et ESP.

b. SA (Seturity Association) :

Il est important que la politique de sécurité IPSec soit configurée de manière cohérente sur les homologues IPSec. Pour cela, on définit des associations de sécurité (SA) qui sont conservées dans une base de données et, comme cette dernière contient des informations sensibles, elle doit être placée dans un endroit sûr dont l’accès est sévèrement contrôlé. Cette SA définit l’ensemble des opérations IPSec devant être appliquées aux datagrammes qui y affèrent.

Chaque SA contient un certain nombre de paramètres. Quelques-uns peuvent être utilisés comme des sélecteurs désignant quels types de paquets doivent être protégés. On peut utiliser l’adresse IP de la source et de la destination, les numéros de port et les types de protocoles comme sélecteurs.

Une SA est une relation à sens unique entre un émetteur et un destinataire. Par conséquent les SA sont unidirectionnelles. Pour protéger le trafic dans les deux directions, on doit établir deux SA.

Les SA contiennent les éléments suivants :

• L’index des paramètres de sécurité ou SPI. • L’adresse IP de la source et de la destination.

• Le nom : soit l’identifiant d’un utilisateur, soit le nom d’une machine. Un identifiant d’utilisateur permet de différencier le trafic issu d’une personne en particulier.

• Le protocole de sécurité : AH ou ESP.

• Les paramètres d’authentification : algorithme de chiffrements, clés…

• Les protections contre la réplication : un compteur de séquences et un indicateur de dépassement de séquence. Le compteur génère le numéro de séquence des en-têtes AH et ESP. Il est positionné à 0 lors de l’établissement de la SA et est incrémenté de 1 chaque fois que vous utiliser la SA pour sécuriser un paquet.

(17)

• Le mode utilisé : mode transport ou mode tunnel.

• La durée de vie de la SA indiquée en unité de temps ou en nombres d’octets. Lorsqu’une association de sécurité expire, les paquets qui lui sont associés sont généralement détruits jusqu’à ce qu’une nouvelle SA soit négociée. Pour éviter la destruction des paquets, il est possible de négocier une nouvelle SA avant que la précédente expire.

• Les paramètres de fragmentation (PMTU).

SPI IP source IP destination Protocole de sécurité Mode Paramètres de la SA (clés, etc) Type Pointeur vers les entrées SPD

580 192.168.2.1 192.168.4.1 ESP Tunnel … Entrant 7

Figure 10 : exemple d’une base SA

c. Les protocoles IPSec de gestion et d’échange de clés :

La présence de mécanismes de chiffrement implique la prise en compte des problématiques de gestion de clés et de leur distribution à l’ensemble des systèmes destinés à être source et/ou destination d’une communication IPSec.

Pour la gestion et la distribution des clés, on peut, soit opter pour une gestion manuelle dans le cas de petites infrastructures, soit pour une gestion automatique. Pour cela le protocole IKE (Internet Key Exchange), défini dans le RFC 2409, a été défini comme protocole par défaut pour la gestion et la distribution des clés. IKE est un protocole qui combine des éléments, des définitions et des fonctionnalités issus de protocoles tels que ISAKMP, SKEME et Oakley pour la gestion et l’échange de clés ou de SA.

Le protocole ISAKMP (Internet Security Association and Key Management Protocol), défini dans le RFC 2408, apporte une infrastructure permettant de définir et d’administrer des SA entre deux ordinateurs devant communiquer de manière sécurisée. ISAKMP a un DOI (Domain of Interpretation) défini pour être utilisé avec IPSec. Ce DOI permet de spécifier les formats et les conditions requises lorsque ISAKMP est appliqué à IPSec.

Le protocole IKE utilise l’infrastructure du protocole ISAKMP pour échanger des clés et définir des SA entre deux machines. IKE utilise également le protocole Oakley pour la création des clés et le protocole SKEME pour les échanger.

IKE permet donc de négocier automatiquement des SA. Il fonctionne sur UDP via le port 500.

Les négociations IKE se font en deux phases :

• phase I : elle permet de mettre en place un canal sécurisé afin de protéger les négociation qui se déroulent lors de la deuxième phase.

• Phase II : elle permet de négocier les SA qui seront utilisées par IPSec pour protéger le trafic.

(18)

Figure 11 : Echanges ISAKMP IKE.

IKE phase I :

Le canal sécurisé est mis en place en négociant une SA ISAKMP entre les terminaisons. Il est à noté que ces SA sont bidirectionnelles contrairement aux SA IPSec qui sont unidirectionnelles.

Il existe deux modes de fonctionnement pour cette phase : le mode principal et le mode agressif. Dans le mode principal, six échanges sont nécessaires (3 aller-retour). Les deux premiers échanges permettent de négocier les méthodes d’authentification (clés prépartagées, algorithme de clés publique, signatures numériques) et de chiffrement (DES, 3DES, AES), ainsi que les algorithmes de hachages (MD5, SHA-1) et les groupes Diffie-Hellman (algorithme d’échange de clés). En effet le premier échange consiste en quelque sorte à une proposition de l’homologue IPSEC A sous forme d’une liste de protocoles au sein de laquelle l’homologue IPSec B doit faire son choix. Ce choix est spécifié dans le deuxième échange. Dans les deux échanges suivants, les extrémités mettent en place les clés partagées qui sont échangés par l’intermédiaire du protocole Diffie-Hellman. Pour finir la phase I, les extrémités s’identifie mutuellement en utilisant les méthodes négociées lors des premiers échanges.

Dans le mode agressif, seulement trois échanges sont nécessaires. Ce mode est en fait une forme compacte du mode principal. Le nombre d’échange entre les terminaisons est le principal avantage de ce mode. Cependant il requiert une grande puissance de calcul puisque les opérations sont effectuées immédiatement en réponse au premier message et il est plus vulnérable. C’est pourquoi le groupe de travail d’IPSec songe à faire disparaître ce mode.

(19)

IKE phase II :

Le protocole pour la deuxième phase des négociations s’appelle QM (Quick Mode). Ce mode rapide permet l’échange de trois messages et autorise les négociations ayant recours à une ou plusieurs SA. N’importe quelle extrémité peut prendre l’initiative et les SA qui seront négociées seront stockés dans la base de données SA de chaque extrémités. Avec QM, les deux parties se trouvent dans l’obligation de négocier un protocole IPSec ou une combinaison de protocoles qui sera utilisé par chaque SA. Comme dans la phase I, les extrémités échangent des propositions. Cette proposition comprend une liste de procédure de protection pour chaque SA négociée. De plus, chaque proposition est accompagnée d’informations complémentaires comme la durée de vie de la SA, un groupe de Diffie-Hellman, un indicateur de mode (mode transport ou tunnel) et des informations sur les clés.

d. Fonctionnement d’IPSec:

Pour comprendre le fonctionnement d’IPSec, nous allons voir comment est traité le trafic sortant et le trafic entrant.

• trafic sortant

Lorsque vous voulez envoyer un paquet IP vers l’extérieur du réseau local et que le protocole IPSec est activé, votre système décidera de la marche à suivre de ce paquet. Il peut le détruire, l’envoyer tel quel ou le sécuriser en appliquant les règles propres à IPSec. Pour savoir ce qu’il doit faire de ce paquet, IPSec consulte la base de donnée SPD (Security Policy Database) crée par l’administrateur du système. Cette dernière contient les règles et les stratégies de sécurité auxquelles IPSec doit se conformer pour le traitement des paquets.

Si un paquet doit être sécurisé, IPSec détermine les paramètres qui seront utilisé pour la protection du paquet. Pour déterminer ces paramètres, IPSec doit consulter la SA associé au paquet dans la base SPD.

Règle IP source IP destination Port

Source DestinationPort Action Protocole IPSec Mode Index

1 192.168.2.1 192.168.4.1 Tous 80 IPSec ESP Tunnel 580

2 192.168.2.1 192.168.10.69 Tous 22 Accept - - 85000

(20)

• trafic entrant

Imaginons qu’un paquet protégé par le protocole IPSec vienne d’arriver. IPSec va déterminer la SA associé au paquet entrant. Les SA se trouvent dans la base de données SA stockée sur la machine destinataire et comprend les éléments suivants : le SPI, l’adresse IP de destination et le protocole IPSec de manipulation de données (AH ou ESP).

Rappelons que le SPI est un nombre de 32 bits, servant d’index à la base des SA de la machine destinataire. Ces trois éléments sont extraits de l’en-tête du paquet reçu.

Une fois que la SA a été identifié, le système effectue les opérations d’authentification et de décryptage. Cela permettra de vérifier l’identité de l’expéditeur et d’extraire les données encapsulés.

L’extraction des données avant la vérification de la base SPD s’impose car le paquet peut contenir un en-tête TCP encrypté. Les informations contenues dans ce dernier (par exemple le numéro de port) peuvent être nécessaires pour déterminer les règles SPD applicables, ce qui explique qu’il faut d’abord le décrypter.

Une fois les données décryptées, IPSec consulte le base SPD dont l’entrée concernée est trouvée en utilisant la référence contenue dans la SA. Le paquet peut être alors relayé vers une autre destination, détruit ou remis à la couche transport.

(21)

III. Les différentes architectures possibles :

1. De poste à poste :

C’est le cas d’utilisation le plus simple. Il s’agit de mettre en relation deux serveurs. Le cas d’utilisation peut être le besoin de synchronisation de bases de données entre deux serveurs d’une entreprise disposant de chaque coté d’un accès Internet. L’accès réseau complet n’est pas indispensable dans ce genre de situation.

Figure 13 : VPN de poste à poste.

2. De poste à site :

Un utilisateur distant a simplement besoin d’un client VPN installé sur son PC pour se connecter au site de l’entreprise via sa connexion Internet. Le développement de l’ADSL favorise ce genre d’utilisation.

Attention toutefois à interdire l’accès Internet depuis le poste « localement ». Pour une question de sécurité, la navigation devra se faire via le réseau de l’entreprise.

Ce point est important et rejoint la réflexion plus large de la sécurité des sites mis en relation par un VPN. Lorsque les niveaux de sécurité sont différents, lorsque les deux sites sont reliés, le niveau de sécurité le plus bas est applicable aux deux. S’il existe une faille de sécurité sur un site (ou sur un poste nomade), celle-çi peut être exploitée.

(22)

3. De site à site :

Différentes installations peuvent être mis en place pour la connexion de deux sites distants à l’aide d’un VPN :

a. Routeur/VPN placé après le pare-feu :

b. Routeur/pare-feu/VPN intégré :

c. Passerelle VPN situé en parallèle du pare-feu : le flux de données passant par la passerelle VPN n’est pas traité par le pare-feu :

(23)

IV. Les offres du marché :

a. Les solutions intégrées

L'offre actuelle de solutions VPN est répartie en deux catégories: VPN autonomes et VPN intégrées, comprenant par exemple les pare-feu (firewall) ou les routeurs VPN.

Ce sont les solutions VPN intégrées qui offrent potentiellement les plus importantes économies de coûts. Actuellement, des pare-feu déjà déployés, comme le "Cisco PIX", le "Nokia Checkpoint Firewall" et le "Watchguard Firebox", intègrent déjà des capacités VPN en option.

Pratiquement tous les routeurs, y compris les routeurs d'accès modulaires Cisco, intègrent également une solution VPN. Le coût associé à ces solutions est généralement déjà compris dans le coût du routeur ou du pare-feu. Dans ce type de scénario, activer des services VPN ne nécessite que quelques paramétrages du pare-feu ou du routeur. Comme l'utilisation de réseaux VPN se fait généralement dans le cadre d'une politique de sécurité réseau complète, disposer d'une solution VPN intégrée peut permettre de réaliser des économies considérables en termes d'administration, notamment dans des environnements qui comprennent plusieurs pare-feu, routeurs et passerelles VPN.

Les solutions VPN autonomes, que l'on appelle généralement des concentrateurs VPN, trouvent principalement leur place dans les entreprises ayant besoin de gérer plusieurs milliers de connexions VPN simultanées. Aucune solution VPN intégrée et aucun serveur VPN n'offre autant de fiabilité, de performances et une telle capacité de montée en puissance. Le coût est beaucoup plus important.

b. Les serveurs VPN

Il faut aussi considérer les options offertes par la mise en place d'un serveur VPN pour des connexions sécurisées via internet.

Microsoft, Novell, UNIX, AS400 et Linux permettent d'utiliser des services VPN. Mettre en place un serveur VPN peut faire réaliser des économies importantes si l’on ne dispose pas d'un pare-feu ou d'un routeur VPN.

Utiliser des serveurs VPN implique généralement une meilleure intégration dans le réseau, notamment pour l'authentification. Les entreprises qui utilisent principalement Microsoft pourront bénéficier de l'intégration transparente des services VPN dans Windows 2000 et éventuellement de ISA Server quand il s'agit de créer des services VPN en conjonction avec Active Directory, les certificats et les cartes à puce (smart cards ).

Mais les économies de coûts s'arrêteront là. En termes de sécurité, de fiabilité et de coût, les serveurs VPN ne sont pas les mieux placés. Une solution VPN matérielle offre une meilleure fiabilité qu'une solution basée sur un système d'exploitation serveur comme ceux de Microsoft. Il en va de même pour les pare-feu et les routeurs. Les coûts associés à la maintenance et à l'administration s'ajoutent au forfait mensuel.

(24)

c. L'option du service aménagé

Les fournisseurs de service managé sont une troisième possibilité. Des opérateurs proposent des services VPN gérés au niveau régional, national et même international. Ce type de service permet aux entreprises de bénéficier d'une solution VPN à l'échelle de la société sans devoir investir lourdement en matériel ou en ressources humaines. La plupart des fournisseurs de services VPN managés surveillent les connexions VPN de l'entreprise 24h/24 et 7j/7, vérifiant qu'elles restent disponibles lorsque les utilisateurs en ont besoin. Les services de pare-feu gérés et une assurance de disponibilité sont gérés.

(25)

Conclusion :

Le sujet n’est pas simple contrairement à la présentation que peuvent en faire certains articles trouvés sur Internet. Les VPN vont bien au-delà d’une communication IPSec entre deux postes Windows XP connectés à Internet.

A travers ce sujet, nous avons appréhendé une partie de cette complexité et nous avons souhaité la transcrire de manière assez large pour les autres étudiants.

L’installation de VPN impose la prise en considération de nombreux paramètres. Une analyse fine des besoins doit être effectuée en tenant compte de ceux exprimés mais aussi en anticipant, autant que possible, les besoins futurs...

L’étude de l’existant doit permettre de déterminer la ou les solutions possibles, qui comme nous l’avons vu sont nombreuses.

Compte tenu des délais, des coûts et des autres paramètres précédemment cités, l’administrateur réseau en charge de la mise en place d’un VPN doit faire le bilan exact de ses connaissances sur le sujet afin de proposer un plan d’action réaliste. Les conséquences sur les flux réseaux et la sécurité du site peuvent être importantes, aussi faut il utiliser ces techniques avec un maximum de clairvoyance.

(26)

Glossaire

AH : Authentification Header. ECB : Electronic Code Book.

ESP : Encapsulating Security Payload. FAI : Fournisseur d’Accès Internet. IKE : Internet Key Exchange.

ISAKMP : Internet Security Association and Key Management Protocol L2F : Layer Two Forwarding.

L2TP : Layer Two Tunneling Protocol. LAC : L2TP Access Concentrator. LNS : L2TP Network Server. NAS : Network Access Server. POP : Point of Presence. PPP : Point to Point Protocole.

PPTP : Point to Point Tunneling Protocol. SA : Security Association.

SLA : Service Level Agrement.

(27)

Bibliographie

™ Les Livres :

¾ IPSec, édition 2003 CampusPress.

¾ Les VPN sous Linux, édition 2003 CampusPress. ¾ Misc n°10 novembre decembre 2003.

¾ linux Magazine n°31 septembre 2001

¾ Les réseaux d’entreprises par la pratique, Luc Montagnier. ¾ Cours réseaux et télécoms, G.Pujolle.

™ Les sites Internet : ¾ www.guill.net ¾ www.zdnet.fr ¾ www.cisco.fr ¾ www.01net.com ¾ solutions.journaldunet.com ¾ www.francetelecom.com ¾ www.easynet.fr ¾ www.urec.cnrs.fr ¾ www.Supinfo-Projects.com

(28)

Table des illustrations :

Figure 1 : service Niveau 2 ou 3. ... 5

Figure 3 : format de trame PPTP... 10

Figure 4 : tunnel L2F. ... 11

Figure 5 : établissement de tunnel. ... 12

Figure 6: En-tête AH ... 14

Figure 7 : En-tête ESP... 15

Figure 8 : ESP en mode tunnel... 15

Figure 9 : En-tête AH et ESP. ... 16

Figure 10 : exemple d’une base SA ... 17

Figure 11 : Echanges ISAKMP IKE. ... 18

Figure 12 : exemple de base SPD... 19

Figure 13 : VPN de poste à poste... 21

(29)

Annexes :

A. Fonctionnalités des solutions commerciales :

Référence : www.solutions.journaldunet.com Date : 12/09/2003.

Les solutions de VPN Solution/

fournisseurs Serveur de VPN VPN Autonome Parefeu VPN Routeur VPN Fonctions de filtre d'AntivirusFonctions

Checkpoint VPN-1

X

Cisco System Cisco VPN 3005

X

Computer Associates eTrust VPN

X

Fortinet FortiGate

X

X

X

Microsoft Microsoft VPN

X

NetScreen NetScreen-5400

X

Netopia Netopia R3100

X

Nokia Nokia VPN

X

Nortel Networks Contivity 5000 Secure IP Services Gateway

X

OpenBSD OpenBSD

X

Lucent VPN Firewall Brick

X

SonicWALL

Firewall & VPN Appliances

X

X

X

WatchGuard

Firebox

X

X

X

Solution/

(30)

B. Quelques fournisseurs et commentaires :

Les solutions de VPN

Solution/ fournisseur Commentaire

Checkpoint

VPN-1

Solution de VPN multisite (IPSec) basée sur une interface d'administration centralisée. Elle est livrée en option avec un pare-feu (FireWall-1). (Logiciel)

Cisco System

Cisco VPN 3005

Plate-forme de VPN (IPSec) pour administrer des accès distants de façon centralisée. Cisco fournit aussi des dispositifs de pare feu et de routeur VPN. (Matériel)

Computer Associates

eTrust VPN

Solution de VPN multisite supportant notamment les systèmes de chiffrement triple DES (168 bit) et DES. (Logiciel)

Fortinet

FortiGate Pare-feu compatible avec les systèmes de chiffrement DES et AES, et le protocole IPSec (tunnel IP). (Matériel)

Microsoft

Microsoft VPN

Services de VPN qui s'adossent à Windows Server 2003 (intègre les protocoles L2TP et IPSec). (Logiciel)

NetScreen

NetScreen-5000 Outil de pare-feu couplé à un VPN (IPSec) incluant notamment des fonctions de protection contre les attaques par déni de services. ( Logiciel)

Netopia

Netopia R3100

Routeur présentant des passerelles pour IPSec et 3DES, mais également pour le protocole PPTP. (Matériel)

Nokia

Nokia VPN Combinaison des technologies de Check Point avec la plate-forme Firewall/VPN de Nokia. (Matériel)

Nortel Networks

Contivity 5000 Secure IP Services Gateway

Plate-forme de VPN supportant les protocoles IPSec, PPTP et L2TP et technologies de chiffrement 3DES, AES et RC4. Nortel Networks fournit aussi des routeurs et des pare-feu VPN. (Matériel)

OpenBSD

OpenBSD OpenBSD, système d'exploitation issu de l'univers du logiciel libre, permet également de déployer des fonctions de VPN. ( Logiciel)

Lucent Technologies

VPN Firewall Brick Produit pour sécuriser les connexions de site à site. Lucent fournit aussi des outils de routeurs VPN (support de IPSec et L2TP). (Logiciel)

SonicWALL

PRO 330 Plate-forme conçue pour la sécurisation de réseaux distribués (support de 3DES et IPSec). (Matériel)

WatchGuard

Firebox Plate-forme de VPN compatible avec IPSec et PPTP ainsi que les mécanismes de chiffrement 3DES et RSA. (Matériel) Solution/ fournisseurs Commentaire

(31)

C. entête AH :

En-tête IP En-tête L4 Data IPv4

Authentification et contrôle d'intégrité

En-tête IP AH En-tête L4 Data IPv4 + IPSec(AH)

0 7 15 31

Suivant Longeur RESERVE

SPI (Security Parameter Index)

Numéro de séquence

Données d'authentification

Fig. : En-tête AH

Le champ En-tête suivant indique ce qui suit l’en-tête AH. En mode tunnel, ce champ prend la valeur 4 pour IPv4 et la valeur 41 pour IPv6, indiquant une encapsulation IP dans IP.

Le champ Longueur indique la longueur des données.

Le champ Réservé n’est pas exploité et par conséquent sa valeur est positionnée à 0. Le champ SPI (index du paramètre de sécurité) sert à identifier l’association de sécurité employée pour authentifier le paquet.

Le numéro de séquence est un numéro croissant unique inséré dans l’en-tête par l’expéditeur.

Le champ Données d’authentification est un champ dont la taille est variable qui contient le résultat de la fonction de vérification de l’intégrité. Cette fonction calcule l’ICV (Integrity Check Value) qui est généré à partir des champs immuables de l’en-tête IP (version, taille, source, …), des champs de l’en-tête pouvant être modifiés mais prédictibles (adresse de destination), de certain champs de l’en-tête AH et des données (au sens IP du terme, soit tout qui ce qui reste après l’en-tête AH). L’ICV est un MAC (Message Authentification Code).

(32)

D. en-tête ESP :

L’en-tête ESP contient un champ SPI (Index de paramètre de sécurité). Le SPI est un numéro arbitraire sélectionné par le destinataire. Ce numéro est authentifié, mais pas chiffré, car il sert à identifier l’état (algorithme et clé de chiffrement) utilisé pour déchiffrer le paquet.

Le numéro de séquence fournit à ESP des services anti-rejeu. Cette valeur est un numéro croissant unique inséré dans l’en-tête par l’expéditeur. Ce numéro est authentifié mais pas chiffré. Effectivement on doit pouvoir déterminer si le paquet est un doublon pour pouvoir le supprimer sans utiliser des ressources pour le déchiffrer. Les véritables données à protégées par ESP sont contenues dans le champ Données. La longueur de ce champ dépend de celle des données. De plus, ce champ contient tous les IV (Initialization vector) dont un algorithme de chiffrement peut avoir besoin. L’IV correspond aux 8 premiers octets des champs Données.

Le champ Padding (remplissage) est requit par certains algorithmes de chiffrement demandant explicitement des blocs d’une longueur donnée. Son contenu dépend de l’algorithme utilisé. Si ce dernier définit une certaine valeur, c’est celle-ci qui doit être utilisée. Si l’algorithme ne définit aucune valeur de remplissage, ESP stipule que le premier octet du remplissage doit être la valeur 1 et que tous les autres octets à venir possèdent une valeur croissante.

Le champ Longueur du remplissage est important car il permet de définir la quantité de remplissage afin que le destinataire puisse restaurer la longueur réelle des données.

(33)

Le champ En-tête suivant indique le type de données contenues dans le champ Données. En mode tunnel, ce champ prend la valeur 4 pour IPv4 et la valeur 41 pour IPv6, indiquant une encapsulation IP dans IP.

Le champ Données d’authentification contient le résultat du contrôle de l’intégrité des données du paquet ESP. Le résultat, le ICV, est calculé de la même manière que pour le protocole AH en utilisant les champs de l’en-tête ESP. La longueur de ce champ dépend de l’algorithme d’authentification utilisé par la SA qui sert à traiter ce paquet.

Figure

Figure 1 : service Niveau 2 ou 3.
Figure 3 : format de trame PPTP.
Figure 4 : tunnel L2F.
Figure 5 : établissement de tunnel.
+7

Références

Documents relatifs

Je me propose d’illustrer ces tentatives à travers l’étude de The Forgotten, un documentaire aborigène consacré à la reconnaissance des soldats aborigènes qui se sont battus

:ةيلاتلا سسلأا ىلع ديدجتلا ىلإ هتوعد هدبع دمحم ماملإا ىنب 1 - لهجلا ىلع يضقي يذلا ميلعتلا رشن نم ديزملا ىلإ اعدف تافارخلاو ديلقتلاو لهجلا لئاذر نع

Au niveau européen, les institutions de recherche s’engagent en octo- bre 2003, au travers de la déclaration de Berlin [4] , dans le mouvement du libre accès avec le soutien

La transition des revues sur abonnement vers le modèle de l'open access donne lieu à de nouveaux modes de financement : le Réseau Canadien

The objective is to build a Mediation Information System (MIS), in support of collaborative situations, whose architecture must be (i) built to be relevant to the

we propose a solution based on the PANA protocol to deliver the Home Agent Information to the Mo- bile Node during the network access authentication phase.. In section 2, the

Les mécanismes pour la configuration de l’adresse de l’hôte distant pour l’interface Internet sont bien définis ; c’est-à-dire, le protocole de contrôle IP de PPP (IPCP, PPP

• r+: mise à jour (lecture et écriture) en mode texte d’un fichier qui doit exister. • w+: mise à jour (lecture et écriture) en mode texte d’un fichier qui peut exister