Projet � [VPN Redondant] ï¿½

Etude finale

Version 1.3

10 janvier 2006


Historique des r�visions

Date

Version

Description

Auteur

11 octobre 2005

1.0

Cr�ation du document

Guillaume Coqueblin

26 octobre 2005

1.1

R�vision

Guillaume Coqueblin

21 d�cembre 2005

1.2

Etude finale

Christophe CHARNAY

10 janvier 2006

1.3

Etude finale

Christophe CHARNAY


Sommaire

1���� Introduction........................................................................................................................

1.1����� Contexte, objectifs et contraintes..................................................................................

1.2����� Glossaire........................................................................................................................

1.3����� Documents de r�f�rence...............................................................................................

2���� L�existant............................................................................................................................

3���� Recueil des besoins........................................................................................................

3.1����� Utilisateurs.....................................................................................................................

3.2����� Besoins fonctionnels......................................................................................................

3.3����� Besoins non fonctionnels...............................................................................................

4���� Orientations techniques.................................................................................................

4.1����� Architecture g�n�rale de la solution...............................................................................

4.2����� Technologies et outils....................................................................................................

5���� Analyse des risques........................................................................................................

6���� Plan de travail....................................................................................................................

7���� Livrable...................................................................................................................

 

 

 

 

 

 

 

 

 

 

 

 

 

 

��������������������������������������������������������������������������������������������������������������������������������

 


1    Introduction

1.1    Contexte, objectifs et contraintes

 

L'objectif du projet est de faire l��tude et la r�alisation d�un prototype montrant une interconnexion de deux r�seaux priv�s (ou plus) via un VPN chiffr� utilisant IPsec.

Les passerelles d�interconnexions (� In�tech INFO) seront en bin�me et redondantes.

 

Les principaux intervenants du projet, sont :

 

Commanditaire : ������������ In�Tech Info

Contacts et r�f�rences : Eric Lalitte

���������������������������������������� Aur�lien Bordes

Membres du projet : ������� Alexis Carle

���������������������������������������� Christophe Charnay (Chef De Projet)

���������������������������������������� Guillaume Coqueblin

Utilisateurs : El�ves In�Tech Info

 

 

Objectifs de la solution propos�e 

�����������

-       R�alisation de la plate-forme

 

-       Installation d�OpenBSD sur les passerelles

 

-       Une solution VPN doit permettre aux utilisateurs distants de se connecter aux ressources du r�seau local.

 

-���� Configuration r�seau (routage, filtrage avec pf)

-        

-       Configuration IPsec

 

-���� La solution doit assurer la confidentialit� et l'int�grit� des donn�es � travers Internet.

 

-       Mise en place de la redondance (CARP, pfsync, sasync)

 

-���� Pour l'utilisateur aucune diff�rence ne doit appara�tre dans son utilisation des ressources du syst�me d'information.

 

-���� Mise en place de l�authentification par certificats

 

-���� La solution doit g�n�rer et mettre � jour les clefs pour le chiffrement des donn�es pour le client et le serveur.

 

- ��� Analyse du trafic et des logs.

 

-���� Connaissance d�OpenBSD, configuration du syst�me

-       Conception et r�alisation de d�monstration

-       Connaissance de pf

-       Utilisation de CARP et pfsync

-       Connaissance d�IPsec

B�n�fices attendus

-       �tude de sasyncd

-       Acqu�rir des automatismes pour le d�bogage des syst�mes et des r�seaux.

 

Contraintes :

Utilisation d�OpenBSD 3.8 car IPsec est implant� nativement dans OpenBSD, entre autres, avec le service isakmpd bas� sur le protocole IKE. Il int�gre aussi nativement les services n�cessaires a la redondances : carp, sasync et pfsync.

Le projet est en d�veloppement sur un r�seau, � a priori ï¿½ de confiance, et sur lequel nous n�avons ni contr�le, ni supervision.

 

Le basculement d�une machine � l�autre doit s�effectuer de mani�re totalement transparente et s�curis�e pour les clients.

 

1.2    Glossaire

Openbsd : distribution de base Unix

VPN : Virtual Private Network (R�seau Priv� Virtuel) liaison entre 2 r�seaux distants

Redondant : La redondance, d'une fa�on g�n�rale, se rapporte � la qualit� ou � l'�tat d'�tre en surnombre, par rapport � la normale ou � la logique. Ce qui peut avoir la connotation n�gative de superflu, mais aussi un sens positif quand cette redondance est voulue afin de pr�venir un dysfonctionnement.

IPsec : IPsec est un protocole permettant le transport de donn�es chiffr�es sur un r�seau IP pour �tablir un r�seau priv� virtuel.

Sasync : Service de synchronisation des r�gles de chiffrement d�IPsec lors d�un crash d�une passerelle.

Carp: Common Address Redundancy Protocol (Protocole de redondance d�adresse commune), ARP permet a plusieurs h�tes dans 
un m�me r�seau local de partager un plage d�adresse IP. Son but premier est de s�assurer 
que les adresses sont toujours disponibles, mais dans certaines configurations, carp, permet aussi de fournir de la balance de charge.
 
Pf: Packet Filter, fichier de configuration des r�gles du firewall.
 
Routage: Dans le cas pr�sent, le routage est le transfert de paquets d�un r�seau � un autre
 
Filtrage: R�gles �tablies par le firewall qui autorisent ou refusent le routage des paquets
 
NAT: Network Adress Translation, permet de rendre des adresses du r�seau local routable sur internet.
 
Haute Disponibilit�: Le cluster de haute disponibilit� est un ensemble de serveurs physiques, 
au nombre minimum de deux, afin d'obtenir une activit� de services par tous temps, en toutes conditions
 

1.3    Documents de r�f�rence

�         http://www.openbsd.org,

�         pages man d�Openbsd,

�         Plan d�Assurance Qualit�,

�         planning.doc

2    L�existant

Nous avons d�j� � notre disposition 2 machines sous Openbsd et le r�seau Itinet.

3    Recueil des besoins

3.1    Utilisateurs

 

Les �l�ves d�In�tech INFO, et par la suite, suivant le niveau de qualit� de r�alisation de ce projet et du projet � firewall redondant ï¿½, la commercialisation d�une solution firewall-vpn redondants aupr�s des soci�t�s et SSII.

3.2    Besoins fonctionnels

 

Le syst�me � r�aliser se doit de faire la liaison entre 2 r�seaux distants de mani�re redondante et s�curis�e, mais il doit passer la NAT.Tout ceci doit se faire de mani�re transparente pour l�utilisateur, m�me en cas de perte de connexion sur l�une des machines VPN.

3.3    Besoins non fonctionnels

 

Nos besoins non fonctionnels sont de l�ordre du mat�riel. Le chiffrement des donn�es circulant � travers les machines faisant office de serveur VPN pouvant �tre assez cons�quent, la machine devra disposer d�un processeur d�au moins 1GHz, de 256Mo de m�moire vive, ainsi que la connectique li�e � la redondance (au total 6 cartes r�seau, 5 c�bles torsad�s, dont 1 crois�).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4    Orientations techniques

4.1    Architecture g�n�rale de la solution

 

 

 

 

 

Sch�ma g�n�ral de la solution VPN redondant

 

 

4.2    Technologies et outils

Le syst�me d�exploitation qui est utilis� est Openbsd 3.8, ainsi que des outils n�existant que dans la version 3.8, comme par exemple :

 

 

�        Carp :

CARP veut dire "Common Address Redundancy Protocol". L'objectif premier de ce protocole est de permettre � un groupe d'h�tes sur un m�me segment r�seau de partager une m�me adresse IP. On appelle un groupe d'h�tes utilisant CARP un "groupe de redondance". Le groupe de redondance se voit attribuer une adresse IP partag�e entre les membres du groupe. Au sein de ce groupe, un h�te est d�sign� comme "ma�tre". Les autres membres sont appell�s "esclaves". L'h�te ma�tre est celui qui "prend" l'adresse IP partag�e. Il r�pond � tout trafic ou requ�te ARP � l'attention de cette adresse. Chaque h�te peut appartenir � plusieurs groupes de redondance.

Nous utilisons CARP pour cr�er un groupe de VPN redondants. L'adresse IP virtuelle attribu�e au groupe de redondance est d�sign�e comme l'adresse du routeur par d�faut sur les machines clientes. Dans le cas o� le VPN ma�tre rencontre une panne ou est d�connect� du r�seau, l'adresse IP virtuelle sera prise par un des VPN esclaves et le service continuera � �tre rendu sans interruption.

CARP supporte IPv4 et IPv6.

L'h�te ma�tre du groupe envoi des annonces r�guli�res sur le r�seau local afin que les h�tes esclaves puissent savoir qu'il est toujours disponible. Si les h�tes esclaves ne re�oivent plus d'annonce de la part du ma�tre durant une p�riode de temps configurable, alors l'un d'eux devient le nouveau ma�tre. Ce dernier est celui dont les valeurs configur�es pour advbase et advskew sont les plus faibles.

Afin d'emp�cher un utilisateur malicieux sur le segment r�seau d'usurper les annonces CARP, chaque groupe peut �tre dot� d'un mot de passe. Ainsi chaque paquet CARP envoy� au groupe est prot�g� par SHA1 MAC.

 

 

 

�        Isakmpd :

 

Le r�le d�ISAKMP est d'�tablir, de n�gocier, de modifier ou de supprimer des Associations de S�curit� et leurs attributs.

Ce protocole constitue un cadre g�n�rique ind�pendant des

m�canismes en faveur desquels la n�gociation a lieu et de ceux par lesquels la s�curisation est r�alis�e ; c'est pour cette derni�re raison qu'un document appel� DOI (Domain Of Interpretation - Document d�finissant les param�tres n�goci�s et les conventions relatives a l'utilisation de ISAKMP dans un cadre pr�cis-) est n�cessaire.

 

ISAKMP se d�roule en deux phases :

- Tout d'abord, cr�ation de la SA ISAKMP, qui servira � la s�curisation de l'ensemble des �changes futurs : on a donc n�gociation d'attributs relatifs � la s�curit�, authentification des identit�s des tiers, g�n�ration des clefs...

- Ensuite, n�gociation de param�tres de s�curit� relatifs � une SA � �tablir pour un m�canisme donne (par exemple AH ou ESP), via la SA ISAKMP �tablie dans la phase pr�c�dente.

 

 

������ Ent�te d�ISAKMP

 

 

 

Connexion d�un client � Isakmpd

 

 

 

 

 

 

 

 

�        IKE :

 

IKE est le protocole de gestion des clefs impl�mente par IPSec. Il comprend 4 modes, qui g�rent les �changes de param�tres entre les entit�s souhaitant communiquer ; le but est de cr�er la SA dans les deux pairs a l'aide des deux phases d'ISAKMP. La premi�re phase est utilis�e pour cr�er une SA IKE - via les �changes identity protect exchange et aggressive exchange d'ISAKMP-, la deuxi�me pour n�gocier les param�tres n�cessaires a la cr�ation de la SA IPSec.

 

 

Echange IKE classique

 

 

 

 

 

 

 

 

 

 

 

 

 

 

�        Ipsec :

 

A l'heure actuelle, plusieurs solutions VPN existent et sont utilis�es sur Internet : IPsec est celle que l'on retrouve le plus souvent, et de nombreux facteurs indiquent que cette situation tend � se g�n�raliser (supporte nativement par de nombreux syst�mes d'exploitation, protocole ouvert, etc.).

Notre �tude suivante se limitera donc � IPsec et aux m�canismes qu'il engendre; avant d'entrer dans les d�tails techniques, revenons aux principes de base d'IPsec.

 

IPsec se pr�sente sous la forme d'un ensemble de m�canismes permettant d'initier, au niveau r�seau, des connexions entre syst�mes distants.

 

Le sch�ma suivant rappelle les principes de son fonctionnement :

 

 

 

On note � la vue de ce sch�ma qu'IPsec repose sur le protocole IKE, qui permet une connexion s�curis�e entre les entit�s d�sirant communiquer, et les protocoles AH et ESP, qui traitent les donn�es utiles de la couche IP afin de les prot�ger selon la politique choisie ; c'est donc ces protocoles que nous allons �tudier en d�tail.

 

Avant que les paquets puissent �tre s�curis�s par IPsec, une SA (Associations de S�curit�) doit exister. Elle peut �tre cr��e manuellement ou dynamiquement.

 

Le protocole IKE est utilis� pour la cr�ation dynamique de cette SA; il s'agit d'un protocole hybride bas� sur les protocoles ISAKMP, Oakley et SKEME : il utilise les bases d�ISAKMP, les modes d�Oakley et les techniques de partage des clefs de SKEME.

 

�        Pf (Packet Filter) :

Packet Filter est le syst�me utilis� par OpenBSD pour filtrer le trafic TCP/IP et effectuer des op�rations de Traduction d'Adresses IP ("NAT"). PF est aussi capable de normaliser, de conditionner le trafic TCP/IP, et de fournir des services de contr�le de bande passante et gestion des priorit�s des paquets. PF fait partie du noyau GENERIC d'OpenBSD depuis la version 3.0. Les pr�c�dentes versions d'OpenBSD utilisaient un ensemble logiciel pare- feu/NAT diff�rent qui n'est plus support�.

 

�        Pfsync :

Pfsync prend en charge la r�plication des tables de sessions entre les firewalls. En d�autres mots chaque firewall poss�dant une interface pfsync activ�e �met des informations sur les sessions qu�il prend en charge sur le r�seau.

( Pfsync utilise des interfaces virtuelles pfsync0 )

Par exemple il envoie un paquet multicast sur le r�seau pour indiquer qu�une session tcp a �t� ouverte ou ferm�e, avec toutes les informations sur la session. Ce qui permet aux �quipements configur�s pour se synchroniser sur pfsync de se mettre � jour par rapport aux changements des tables des autres firewalls.

Cette derni�re fonctionnalit� coupl�e � CARP, permet de cr�er des backup du firewall ma�tre. Avec la synchronisation activ�e (pfsync), lorsqu�un �quipement de backup prend la main, il poss�de toutes les informations sur les tables de sessions et peu continuer � filtrer le trafic r�seau sans interruption. Dans nos tests il y a un temps de latence tr�s court lors du basculement d�un serveur � l�autre.

Au niveau des services et des utilisateurs passant par ce firewall il n�y a pas de coupure de sessions lorsque la ou les adresses ip des firewalls basculent d�un serveur � l�autre.

Note : Les adresses Ip prisent en charge par Carp, sont appell�es VIP (Virtual Ip).

Il est aussi important de noter que lorsque le firewall ma�tre ressuscite, il ne reprend la main que lorsque pfsync � effectu� sont travail de synchronisation par rapport au serveur ma�tre en cours, ceci gr�ce a la combinaison de carp et pfsync.

R�sultat : pas de coupure de session m�me lorsque le premier serveur r�appara�t sur le r�seau.

 

 

 

 

 

 

 

 

 

 

 

�        Sasyncd :

 

Le d�mon sasyncd synchronise les informations des SA et SPD IPsec entre plusieurs passerelles IPsec. La m�thode la plus utilis� est de faire fonctionner sasyncd  sur un serveur isakmpd et de partager une m�me IP gr�ce � l�outil carp.

Le d�mon fonctionne soit en mode ma�tre soit en esclave, dans lequel le ma�tre r�cup�re tous les paquets de changement d�SA IPsec et envoie les informations � tous les clients afin qu�ils disposent des m�mes donn�es.

Lorsqu�un esclave se connecte ou se reconnecte, Le maître transmet instantan�ment toutes les informations des SA et SPD IPsec en cours.

 

 

 

 

 

�         Certificat X509

 

Les certificats X509 permettent l'authentification entre le serveur et le client vpn. Pour cela nous devons générer la clef RSA, le certificat pour le CA et le CSR (Certificate Signing Request) en utilisant openssl.

 

5    Analyse des risques

 

Le risque majeur est que le fait de mettre en place une solution sur la base d'un syst�me d'exploitation encore en version � testing ï¿½ ne soit pas tout à fait au point, et les outils fiables et sécurisés.

 

 

 

 

6    Plan de travail

Suivant ce qui a été établi lors d'une réunion avec Aurélien Bordes et Eric Lalitte les étapes sont les suivantes :

 

-       Etude et mise en place de la redondance, en utilisant carp

-       Sécurisation de la connexion sortante grace à IPsec et isakmpd

-       Configuration du firewall par les r�gles pf

-       Synchronisation des r�gles de sécurité avec SAsyncd

-       Synchronisation des r�gles de filtrage entre les deux serveurs grace à pfsync

-       Tests finaux et écoute du trafic

-       Rédaction d�une documentation

-       Démonstration en temps réel.

 

7    Livrable

 

Nous restituons � l��cole les 2 machines, installées et configurées, accompagnées d'une documentation décrivant notre �tude.

La maintenance sera à la charge du client.