Vous êtes sur la page 1sur 33

DOAN Olivier

DOAN Grard
MINGAUD Aymeric
CHARLES Sullyvan
MMOIRE DE PROJET TUTOR
RSEAU ET SCURIT
LICENCE PROFESIONELLE DES SSTEMES INFORMATIQUES ET LOGICIELS
Sommaire
Introduction................................................................................................2
I Prsentation du projet....................................................................................3
A-Le sujet..................................................................................................................................................................3
a)nonc du sujet...................................................................................................................3
b)Prsentation et motivations du client..................................................................................3
c)Cahier des charges...............................................................................................................4
B-L'equipe et les moyens.........................................................................................................................................5
a)L'quipe...............................................................................................................................
b)Contacts humains................................................................................................................
c)Moens matriels et logiciels..............................................................................................6
II Cour du projet.............................................................................................
A-tude.....................................................................................................................................................................8
a)OpenVP et OpenSSL........................................................................................................
b)Mise en place du site...........................................................................................................9
c)Modiications a prvoir sur le Pareeu..............................................................................10
B-Axes de travail et methodes................................................................................................................................11
a)OpenVP..........................................................................................................................11
b)Modiication du pareeu....................................................................................................11
c)Serveur HTTPS et portail capti........................................................................................12
d) Site Web...........................................................................................................................13
C-Contraintes renontrees.....................................................................................................................................16
a)OpenVP mode rout ou bridg.......................................................................................16
b)Contraintes concernant le serveur web et le portail capti................................................17
III Mise en place............................................................................................1
A-erveur VP et as aux reseaux....................................................................................................................18
a)Installation.........................................................................................................................1
b) Prparation des ponts thernets........................................................................................19
c) Coniguration...................................................................................................................20
d) Installation du client ........................................................................................................21
e) Coniguration du client.....................................................................................................22
) Modiication du pareeu...................................................................................................23
g) Lancement du serveur et des clients................................................................................23
B-erveur HP et Portail aptij.......................................................................................................................2
a)Coniguration du serveur Web pour l'HTTPS et le Portail capti.....................................24
b)Problemes rencontrs........................................................................................................2
C-ite Web..............................................................................................................................................................26
a)Annuaire LDAP.................................................................................................................26
b)Redirection de requtes.....................................................................................................27
c)Changement de l'arborescence..........................................................................................27
IV Pour aller plus loin...................................................................................2
A-Problmes non resolus.......................................................................................................................................28
B-Ameliorations possibles......................................................................................................................................28
Conclusion...............................................................................................30
Annexes...................................................................................................31
Coniguration rseau et scurit 1/32
Mmoire de Projet tuteur
Introduction
La scurisation d'un rseau inormatique est un enjeu important pour n'importe quelle structure. A
aucun moment, il n'est prudent de laisser des utilisateurs inconnus et non identiiables l'utiliser.
Dans le cadre de l'amlioration de la scurit du rseau du dpartement inormatique,
l'administrateur souhaite changer l'acces du rseau dja existant, par une solution plus sure.
Lors de notre ormation en licence proessionnelle sstemes inormatiques et logiciels , nous
avons eu pour projet la conception de cet acces au rseau. lle a pour but de permettre aux tudiants
du dpartement inormatique de se connecter au rseau de aon scurise. Pour rpondre a ce
probleme, nous avons dcid d'tablir un acces VP. Ce projet nous permet d'avoir des notions en
ssteme et en rseaux en relation avec notre licence.
Pour mieux expliquer notre dmarche, nous allons voir dans un premiers temps la prsentation du
projet. ous vous prsenterons les membres de l'quipe, le cahier des charges et la principale
motivation du client.
nsuite, nous aborderons sa partie thorique. ous expliquerons l'tude du projet, les axes de travail
et les solutions utilises, ainsi que les problemes que nous avons rencontrs.
Par la suite, nous verrons la mise en place pratique. n d'autres termes, comment nous avons mis
en place le serveur VP et son acces, la cration du serveur web hbergeant le site web.
nin, nous inirons par les dirents problemes que nous avons rencontrs lors de son laboration,
les problemes nonrsolus, et les amliorations possibles pour approondir le travail dja accompli.
Coniguration rseau et scurit 2/32
Mmoire de Projet tuteur
I Prsentation du projet
A- Le sujet
a) Enonce du sujet
Con[iqurorion reseou er securire .
Il s'agit de l'tude et de la mise en place d'un serveur OpenVP pour le dpartement inormatique. Il
aura un acces distant a grer.
L'objecti principal est de scuriser l'utilisation du serveur DHCP du dpartement, et de pouvoir
authentiier les utilisateurs.
b) Presentation et motivations du client
otre projet est destin a Adrien atet, administrateur inormatique du dpartement inormatique
de l'IT du Limousin. Pour lui, ce projet est avant tout une scurisation du rseau dont il a la
charge. Avant notre travail, il tait possible d'accder au rseau du dpartement puis a internet sans
tre authentii. Tout utilisateur tait donc diicilement identiiable.
ne autre motivation tait de modiier l'acces distant au rseau du dpartement. n eet pour toute
connexion distante, il allait se connecter via un client SSH comme Putt en tunnel puis via
l'utilitaire de bureau a distance pour une session Windows. Ce tpe de connexion a rencontr un vi
succes aupres des tudiants, mais tait inadapte pour cet usage. La connexion via un VP permet
d'viter cette procdure.
La procdure de connexion distante au rseaux du dpartement devra donc tre la suivante
L'tudiant va d'abord se connecter sur le serveur HTTPS via Internet, il renseignera ses
identiiants d'tudiant.
Le serveur enverra ces identiiants vers le serveur LDAP de l'universit pour une
authentiication, via le portail du site.
Si elles sont valides, le serveur HTTPS gnerera le certiicats, les cles.
L'tudiant sera invit a tlcharger le logiciel client VP et il pourra ainsi cr le lien avec
le serveur VP, grce a ses cles.
ne ois la connexion tablie, il pourra travailler dans le rseau du dpartement.
Pour un tudiant souhaitant se connecter via un poste de travail personnel, il devra s'identiier de la
mme aon sur le portail du site pour pouvoir continuer a naviguer sur Internet, via le tunnel VP
gnr.
Coniguration rseau et scurit 3/32
Mmoire de Projet tuteur
Le schma suivant reprsente ces direntes procdures
Eropes Je connexion ou reseoux Ju Jeporremenr vio l'OpenVPN er le sire
c) Cahier des charges
Pour la mise en ouvre de ce projet, nous avions donc a respecter ces direntes tapes
tude du rseaux et identiication du travail a aire.
tude du logiciel OpenVP coupl avec OpenSSL pour en comprendre le onctionnement,
l'installer sur une machine Debian Linux et le conigurer.
tude des commandes Iptables pour apporter des modiications au pareeu.
tude du pacet ridgeutils pour crer des switch virtuels
Mettre en ouvre un serveur Web Apache scuris ouvert au HTTPS) avec redirection des
requtes web portail capti) sur la mme machine.
n site Web qui permet de s'authentiier et d'obtenir une version client d'OpenVP, ainsi
que des inormations.
Le client souhaite minimiser le nombre d'applications lies au VP pour diminuer le risque
de panne. Le risque qu'un ssteme ne onctionne plus est gal a la somme du risque de
panne de chacun de ses composants.
Pour la mise en place des changements sur le Pareeu du dpartement, ce n'tait pas a nous dans
nous en occuper, mais nous devions tout de mme en comprendre le onctionnement et le
documenter.
Coniguration rseau et scurit 4/32
Mmoire de Projet tuteur
B- L'quipe et les moyens
a) L'equie
Americ Mingaud 20 ans, issu d'une ormation en DT inormatique a l'IT du Limousin.
A dja eu l'occasion de travailler sur un ssteme Debian Linux en stage, et sur Apache.
rard Doan 23 ans, diplm d'un TS inormatique de gestion. Lors de son TS, a tudi
les applications rseau sous Debian, ainsi que durant ses stages et s'est amiliaris avec les
notions de pareeu linux avec les commandes Iptables.
Olivier Doan 21 ans, diplm d'un DT inormatique obtenu galement a l'IT du
Limousin.
Sullvan Charles 23 ans, diplm d'un TS inormatique de gestion. Pendant ses stages a
eu l'occasion de travailler sur apache et sur la cration de vpn sur ipcop.
b) Contacts humains
Adrien atet administrateur de tout l'inormatique du dpartement, et galement client
de notre projet.
mmanuel Rodes enseignant tuteur de notre projet, et galement enseignant de rseau au
sein du dpartement inormatique de l'IT du Limousin. Il travaille galement a l'institut de
recherche lim de l'universit de Limoges.
Coniguration rseau et scurit /32
Mmoire de Projet tuteur
c) Moyens materiels et logiciels
1- Le reseou Ju Jeporremenr in[ormoriue
otre environnement de travail, le rseau du dpartement inormatique, correspond au schma
suivant
Scemo Ju reseou simpli[ie Ju Jeporremenr in[ormoriue
otre travail se concentre donc que le serveur VP/HTTPS, et sur les connexions depuis l'Internet
et les connexions de postes personnels depuis le rseaux nomm Ino .
2- Loqiciels urilises
OpenVPN logiciel phare de notre projet. Son tude est dveloppe dans la suite du
rapport.
OpenSSl OpenSSL est un utilitaire crptographique qui implmente les protocoles rseau
Secure Socets Laer SSL v2/v3, Couche de socets scuriss) et Transport Laer Securit
TLS v1, scurit pour la couche de transport) ainsi que les standards crptographiques lis
dont ils ont besoin.
Iptables: Logiciel libre de l'espace utilisateur Linux grce auquel l'administrateur ssteme
peut conigurer les chanes et regles dans le pareeu en espace noau et qui est compos
par des modules etilter). Dirents programmes sont utiliss selon le protocole emplo
Iptables est utilis pour le protocole IPv4, Iprobles pour IPv6, Arprobles pour ARP ou
encore brobles, spciique aux trames thernet.
Coniguration rseau et scurit 6/32
Mmoire de Projet tuteur
Bridge-utils ou brctl: Il est utilis pour crer des ponts ethernet dans le noau linux. n
pont ethernet est utilis pour connecter dirents interaces rseaux ethernet entre eux, de
sorte a qu'ils ne orment qu'une seule interace ethernet dans le rseau.
Apace2: Serveur Web que nous utilisons pour la mise en place de l'HTTPS et
l'hbergement du site permettant l'authentiication et le tlchargement du client VP.
L'avantage principal d'Apache est l'utilisation de tres nombreux modules, permettant de aire
de nombreuses utilisations du logiciel.
edian Lenny Linux : Ssteme d'exploitation prvu sur la machine virtuelle qui hberge
notre projet. Il s'agit d'un noau Linux scuris et prvu pour les utilisations serveur. Il s'agit
galement du ssteme de base d'autres distributions Linux telles qu'buntu ou noppix.
Coniguration rseau et scurit 7/32
Mmoire de Projet tuteur
II Cur du projet
A- tude
a) OenVPN et OenL
Le serveur sera sous Debian et utilisera OpenVP pour dploer les services. OpenVPN est un
logiciel libre permettant de crer un rseau priv virtuel, ou VP. Il a t crit par ames onan.
OpenVP permet de s'authentiier a l'aide d'une cl prive partage a l'avance, de certiicats ou de
couples de noms d'utilisateur/mot de passe. Il utilise la bibliotheque d'authentiication OpenSSL
ainsi que le protocole SSLv3/TLSv1.
Il ore de nombreuses onctions de scurit et de contrle.
OpenVP n'est pas compatible avec IPsec ou d'autres logiciels VP. Le paquet tout entier contient
un binaire pour les connexions du client et du serveur, un ichier de coniguration optionnel et une
ou plusieurs cls suivant la mthode d'authentiication choisie.
ridger ou Router
Il existe deux modes de onctionnement VP dirents dans le ssteme propos par ames onan,
Routed et ridged . lobalement, si vous ne souhaite que mettre en relation entre elles des
machines distantes, oriente vous vers un mode Routed . Si vous souhaite mettre en relation des
rseaux entre eux mette en place un mode ridged .
Le mode ridged ou pont, permet de aire un pont thernet entre deux rseaux. Les interaces
VP et LA sont alors lies entre elles en une seule entit et permettent de communiquer entre les
sous rseaux concerns.
Si votre station cliente du VP possede une interace en 192.16.0.4 vers son LA et une interace
virtuelle de VP en 10.0.0.4, le serveur tant en 10.0.0.1 cot VP et dans un LA en 192.16.1.4,
si vous bridge les interaces du client et du serveur, les rseaux 192.16.0.0/24 et 192.16.1.0/24
se verront entre eux. Le client aura acces au rseau 192.16.1.0/24 avec les mmes iltrages que la
machine 192.16.1.4 et de la mme aon, le serveur aura acces au rseau 192.16.0.0/24.
Il existe bien sur des considrations non ngligeables de scurit a ce sujet, car la permabilit inter
rseaux peut mettre en danger les rseaux concerns si l'un des membres du VP est compromis.
Les entreprises souhaitant interconnecter plusieurs sites rseaux) distants et les joueurs en lignes
souhaitant se aire un rseau priv opteront plus pour un rseau bridg et les entreprises qui dsirent
un rseau pouvant accueillir des nomades et les iltrer de aon plus ines seront probablement plus
intresses par le mode rout.
OpenSSL est une boite a outils de chirement comportant deux bibliotheques une de
crptographie gnrale et une implmentant le protocole SSL), ainsi qu'une commande en ligne.
Les bibliotheques qui sont crites en langage C) implmentent les onctions basiques de
crptographie et ournissent un certain nombre de onctions utiles. Il est possible d'utiliser la
bibliotheque OpenSSL dans une grande varit de langages inormatiques.
Pour le projet que nous avons eu a aire au cours de cette anne nous avons dcider d'utiliser
openVpn car il dispose de script openssl dja rdiger pour la cration des certiicats et la cration
des cle privs et public,si nous avons dcider d'utiliser openssl c'est pour pouvoir modiier et cre
nos certiicats avec nos propre parametre entre autres nous voulions cre un script qui gnrerais un
Coniguration rseau et scurit /32
Mmoire de Projet tuteur
beau de 0 cle par exemple que nous aurions du distribu au client dsirant se connecter au rseau
virtuel de l'iut.Pour notre projet il allut prendre le principe de cl asmtrique
b) Mise en lace du site
Le rle du site est de distribuer le certiicat et les cles a chaque utilisateur. Chaque personne aura
son certiicat nominati et ses cles. Le site permet aussi de tlcharger l'application client du VP
pour se connecter au rseau. ne authentiication permet de s'assurer que seul les personnes du
dpartement Inormation pourront accder au tlchargement.
Coniguration rseau et scurit 9/32
Mmoire de Projet tuteur
U t i l i s a t e u r
T e l e c h a r g e r l i n s t a l
A u t h e n t i f i c a t i o n
La page d'accueil du site, et une page d'authentiication. On explique pourquoi l'utilisateur
a t redirig vers cette page. Les cles et certiicats sont tlchargeable sur la page ''installation''
n utilisateur ne pourra accder a la page ''installation'' si et seulement s'il est authentii. Il
doit utiliser son login et mot de passe de l'universit et non celui du dpartement inormatique.
Dans le cas o le login/mot de passe est incorrecte, il est redirig vers la page d'authentiication.
c) ModiIications revoir sur le PareIeu
otre projet devra tre mis en place sur un rseau dja existant, entre autre le rseau de l'IT
possede plusieurs serveurs, sousrseaux et des postes clients, naturellement ce rseau possede un
pareeu avec ses regles de scurit.
Pour le bon droulement de notre projet, nous devons nous aussi apport nos propre regles au
pareeu, ain que les direntes connexions onctionnent entre le serveur HTTPS et les clients du
rseau interne, le serveur VP, et les ponts ethernet ncessaire a la coniguration du serveur VP.
La plupart des regles concernent le iltrage de port ncessaire au serveur HTTP, HTTPS, VPet le
AT pour translater les adresses IP issu du serveur DHCP pour atteindre le serveur VP et la
DM.
Coniguration rseau et scurit 10/32
Mmoire de Projet tuteur
P a g e d ' a u t h e n t f c a t o n
S a s e o g n / p a s s w o r d
P a g e n s t a a t o n
o g n / p a s s w o r d O K
L o g n / p a s s w
D b u t
C t r L o g n / p a s s w o r d
B- Axes de travail et mtodes
a) OenVPN
ous avons commenc a rechercher de la documentation sur OpenVP sous Debian, pour nous
aire une ide sur le onctionnement du logiciel.
Lors de nos recherches nous avons dcouvert un tutoriel d'installation d'OpenVP sous Debian que
nous avons suivi pour commencer nos phases de test d'installation, de cration de certiicat avec les
cls qui sont lis et le parametre Diie Hellman, qui permet l'change de message chir par
l'intermdiaire d'une cl, entre deux personnes sans qu'une troisieme puisse dcouvrir cette cl.
nsuite nous avons conigur le serveur VP d'abord en mode rout, mais pour des soucis de
scurit nous sommes pass en mode bridg, d'o l'utilisation du pacet bridgeutils qui permet de
crer des pont ethernets sous linux.
De ce ait, nos premieres tests client/serveur VP, taient conigurs en mode rout, sont devenu
obsoletes.
b) ModiIication du areIeu
ous avons assist a un cours introducti sur iptables avec notre tuteur de projet, pour nous
sensibiliser, sur les notions de iltre et de AT sur le pareeu de l'IT, ain d'apporter des
modiications au pareeu de l'IT pour le bon onctionnement des connexions du serveur VP, des
dirents clients connects au rseau de l'IT et de la DM. la suite nous avons approondis nos
connaissances sur iptables, ain de crer nos propres regles.
Coniguration rseau et scurit 11/32
Mmoire de Projet tuteur
c) erveur HTTP et ortail catiI
Pour l'authentiication des utilisateurs du rseaux avant qu'ils puissent accder a Internet, nous
avons mis en place un serveur Web Apache acceptant l'HTTPS. Sur celuici nous avons hberg un
site qui permet l'authentiication, de gnrer les cls et certiicats pour un client VP, ainsi que le
tlchargement. Le contenu du site sera dtaill dans la suite du rapport.
Concernant le portail capti, c'est le mcanisme principal qui permet de bloquer l'acces au net sans
authentiication. Il repose sur la redirection des requtes web depuis le pareeu du dpartement
inormatique, et sur une coniguration spciale du serveur Apache. n eet, quand le serveur reoit
les requtes web qui lui sont totalement inconnues. Le comportement par daut de Apache est de
dclencher la ameuse rreur 404 . ous avons modii cet appel pour aicher notre portail. ne
ois identii, l'utilisateur accede aux dirents services proposs par le site. t une ois la
connexion VP tablie, il peut se connecter a Internet sans avoir a s'inquiter de ce ssteme.
n eet, les requtes web sont envoes par le serveur VP, et donc ne sont pas iltres et
redirigs par le pareeu.
ous avons du donc conigurer tout d'abord Apache pour le HTTPS, ensuite modiier les
conigurations de base pour qu'il tolere la redirection.
Coniguration rseau et scurit 12/32
Mmoire de Projet tuteur
d) ite eb
'tant pas de rel exigence sur l'interace graphique du site, nous avons commenc par rcuprer
la charte graphique une page d'authentiication dja existant du dpartement. Pour tre prcis, nous
nous sommes largement inspir de celui de la connexion ''MSDAA''.
xrroir Je lo poqe Je connexion msJnoo
Pour vriier l'identit d'un utilisateur, l'universit a mise en place un annuaire LDAP.
n annuaire LDAP est, par analogie a un annuaire papier, une source inormatique
hirarchis o les inormations sont tres peu mise a jour, en gnral une ois par an. L'annuaire
LDAP est consultable par protocole TCP/IP, soit par Internet. Pour accder, une authentiication
est ncessaire. Dans notre cas, chaque personne de l'universit possede un mot de passe permettant
de s' connecter. Ainsi, si un utilisateur russi a s'authentiier sur l'annuaire, cela signiie qu'il
''appartient'' a l'universit.
ne ois authentii, un utilisateur peut consulter les ressources de l'annuaire. Les ressources
sont identiis par un ''distinguised name'' ou ''dn'', c'est a dire un identiiant unique de la ressource.
n accdant a une ressource, on peut consulter l'ensemble des donnes qui lui sont lies Ils sont
aussi appeles des ''attributs''. l'authentiication sur l'annuaire, le dn de la ressource recherch a
pour onction de login.
Coniguration rseau et scurit 13/32
Mmoire de Projet tuteur
Dans le cas prsent, l'annuaire LDAP de l'universit contient des inormations sur les personnes de
l'universit. ntre autre, l'annuaire contient l'anne universitaire ou la structure auquel une personne
est aecte. Ces inormations sont regroupes par personne sur une ressource prcis. Ces donnes
supplmentaires vont nous tre utile car l'authentiication a elle seule ne suit pas pour la ntre.
n eet, l'authentiication permet uniquement de vriier si l'utilisateur est bien de
l'universit. ous voulons que seul ceux du dpartement inormatique puissent rcuprer leur
certiicat et leurs cles. Il nous aut ''iltrer'' les personnes.
ous utiliserons la onctionnalit ''recherche'' de l'annuaire qui permet de rechercher une
ressource selon des criteres. Les criteres correspondent aux attributs des ressources. Ainsi, il nous
suira de rechercher la ressource dont les attributs correspond aux personnes du dpartement
inormatique pour s'assurer si la personne est bien du dpartement ou non. L'ensemble des criteres
d'une recherche est appel ''iltre''.
xemple Je [ilrre LDAP Jons un scripr PHP
Avec ce [ilrre seul les personnes Je l'IUT sonr rrouvees
Coniguration rseau et scurit 14/32
Mmoire de Projet tuteur
Le site doit rpondre a un autre point la modiication de l'RL. Pour un soucis de conort,
lorsqu'un utilisateur est redirig vers le site, l'RL de son navigateur doit tre modiie pour lui
aire comprendre qu'il a bien t redirig. Pour cela, nous allons modiier l'entte HTTP de la
rponse du serveur.
Le protocole HTTP est largement utilis pour transert de page sur Internet. n gnral,
lorsque qu'un navigateur demande une ressource, l'adresse RL de la ressource est prcis dans
l'entte de la requte HTTP. Cette adresse est ensuite recopie dans l'entte de la rponse du
serveur pour que le navigateur puisse l'aicher.
Scemo clossiue Jes econqes HTTP
Cependant, la redirection vers la page ne modiie pas l'entte de la rponse, et par
consquent, le navigateur se retrouve avec une RL errone de la page qu'il aiche. Il a t dcid
de rgler ce probleme au niveau du site, car la coniguration d'un nouvelle RL est plus simple a ce
niveau la
Sons moJi[icorion J'URL / Avec moJi[icorion J'URL
Coniguration rseau et scurit 1/32
Mmoire de Projet tuteur
C- Contraintes rencontres
a) OenVPN mode route ou bridge
ous avons cit prcedement que notre premiere coniguration du serveur VP tait en mode rout,
le probleme est que le mode rout du serveur, crer, certes un tunnel tun scuris en ssl, mais
aussi un rseau virtel derriere le serveur VP, les clients VP aant ouvert le tunnel, appartiennent
a ce rseau virtuel et doivent travers le serveur pour accder a la DM, par l'intermdiare de route,
ce qui est un inconvnient au niveau scurit, s'est lors de leur intervention dans la DM, que
l'administrateur rseau ne pourra pas identii les dirents intervenants car ils auront tous la mme
adresse rseau, attribu par le serveur VP.
La solution est de passer en mode bridg pour que les clients VP possedent une adresse IP de
mme tpe que celles attribu dans la DM.
L'acces a la DM se era par le pont thernet.
Coniguration rseau et scurit 16/32
Mmoire de Projet tuteur
b) Contraintes concernant le serveur web et le ortail catiI
ous avions deux contraintes principales
La premiere concerne les cls que nous avons utilis pour le crptage HTTPS. n eet,
celles sont autosignes, ce qui dclenche des erreurs et des avertissements che les
navigateurs qui accedent a notre site. ous avons donc du penser diremment pour la
coniguration du site pour rendre ces erreurs moins contraignantes et moins eraantes pour
l'utilisateur.
La deuxieme contrainte concerne un dtail technique du a l'utilisation de notre ssteme de
portail capti. n eet, de base l'RL charge par le navigateur reste mme apres
redirection. Ce qui peut tre une gene pour l'utilisateur, et donc nous avons du changer cela.
Coniguration rseau et scurit 17/32
Mmoire de Projet tuteur
III ise en place
A- Serveur VPN et acces aux rseaux
a) lnstallation
Le serveur onctionne sous une machine Debian lenn, nous allons procd a l'installation des
pacages d'OpenVP et d'OpenSSL, par l'intermdiaire du terminal administrateur
aptitude install openvpn openssl
Avec OpenVPN, il est possible de compresser les donnes passant dans le tunnel VP pour limiter
lutilisation de la bande passante. Cest la paquet liblo22 qui permet deectuer cette
compression. Ce dernier est normalement install par daut.
Pour scuriser le tunnel VP avec des cls et des certiicats, OpenVP, utilise OpenSSL. Ce
dernier est normalement install par daut.
ne autorit de certificat est une entit qui signe et dlivre des certiicats d'identit numriques
certiiant le groupe identii. n ce sens, elle reprsente une tierce partie scurise entre deux
transactions.
OpenVPN est livr avec plusieurs scripts permettant de gnrer plus acilement les cls et les
certiicats pour OpenSSL. Ces scripts sont enregistrs dans le dossier easy-rsa
cd usrsaredocopenvpnexampleseasy-rsa
Avant dutiliser les scripts, il aut diter le ichier vars pour initialiser les variables par daut
indiques a la in de ce ichier
nano vars
Champs a modiier dans le ichier vars
COTRFR
PROVICFrance
CITLimoges
OR"IUTduLimousin"
MAIL"mailQadminvpn.fr"
ne ois le ichier modii, la ligne suivante permet dinitialiser les variables pour les scripts
. .vars
Le commande suivante, permet de crer ou de rinitialiser le sousdossier keys par
l'intermdiaire d'un script
.clean-all
Le script suivant permet de crer dans keys le certiicat principal du serveur ca.crt et la cl
correspondante ca.key
Coniguration rseau et scurit 1/32
Mmoire de Projet tuteur
.build-ca
Lors de la cration du certiicat la plupart des renseignements sont dja renseign, grce au variable
que nous avons initialis.
La commande suivante permet de crer le certiicat et la cl du serveur, nous nommeront le serveur,
servervpn
.build-key-server servervpn
Dans le dossier keys apparatront les ichiers servervpn.crt , serverkey.key .
Les commandes suivantes permettent de crer le certiicat et la cl de notre premier client VP,
nous l'appellerons client
. .vars
.build-key client
Les ichiers client.crt et client.key apparatront dans le dossier keys .
La commande suivante va crer dans keys le ichier d1024.pem
.build-d
Maintenant nous allons copier les certiicats et les cls gnrs dans le dossier /etc/openvpn , qui
sont les composantes ncessaire au onctionnement du serveur VP
cd usrsaredocopenvpnexampleseasy-rsakeys
cp ca.crt etcopenvpn
cp servervpn.crt etcopenvpn
cp servervpn.keys etcopenvpn
cp d1024.pem etcopenvpn
Pour limiter les risques dattaques sur OpenVP, il est important que le processus dOpenVP
onctionne sur un utilisateur naant aucun droit sur le ssteme.
Souvent, lutilisateur nobody est utilis par daut, mais il est encore plus scurisant de aire
tourner chaque processus avec un utilisateur dirent. Donc, pour le processus OpenVP, nous
allons crer lutilisateur openvpn
groupadd openvpn
useradsd -d devnull -g openvpn -s binfalse openvpn
b) Preparation des ponts ethernets
ous allons utilis le mode bridg d'openvpn pour cela il aut nous pass par crer les pont ethernet.
ous ditons un script dans /etc/init.d/bridgestart
nano etcinit.dbridge-start
Contenu du script
Coniguration rseau et scurit 19/32
Mmoire de Projet tuteur
!/bin/bash
brctl addbr br0 //Crer le pont br0
brctl addi br0 eth0 //Va li le pont br0 avec l'interace du serveur eth0
brctl addi br0 tap0 //Va li le pont br0 avec le tunnel tap du serveur VP
iconig tap0 0.0.0.0 promisc up //Conigure le tunnel tap0 en coute
iconig eth0 192.16.0.1 promisc up //Conigure l'interace eth0 en coute
iconig br0 192.16.1.24 netmas 2.2.2.0 broadcast 192.16.1.2 //Attribue l'adresse
IP du pont, son masque et son broadcast.
nsuite nous allons crer uns script qui va supprimer les ponts ethernet
nano etcinit.dbridge-stop
Contenu du script
!/bin/bash
iconig br0 down //Supprime l'interace du pont br0
brctl delbr br0 //Supprime le pont br0
iconig tap0 10.0.0.1 netmas 2.2.2.0 broadcast 10.0.0.2 //Attribue une IP,
un masque et un broadcast au tap0
iconig eth0 192.16.0.1 netmas 2.2.2.0 broadcast 192.16.0.2 //Attribue l'adresse
IP du pont, son masque et son broadcast.
Mettre un chmod 7 sur les deux scripts.
e lancer le bridge qu'apres avoir lancer OpenVP sinon les interaces a bridger ne seront pas
encore prsentes.
c) Conjiquration
Par daut OpenVP est ourni avec plusieurs ichiers dexemples enregistrs dans le dossier
usrsaredocopenvpnexamplessample-config-files/
Pour conigurer le serveur, utilisons l'exemple de coniguration du serveur server.conf.gz , quil
aut donc dcompresser et mettre en place dans etcopenvpn
cd usrsaredocopenvpnexamplessample-config-files
gunzip server.conf.gz
cp server.conf etcopenvpn
Il suit ensuite dadapter ce ichier en onction des besoins
cd etcopenvpn
nano server.conf
Coniguration rseau et scurit 20/32
Mmoire de Projet tuteur
Contenu des options utiliss server,con
port 1194 //PORT sur lequel vos clients se connecteront
proto udp //tilise le protocole DP
dev tap //Signiie que nous allons utiliser le mode ethernet bridging, via une
interace tap
mode server //Indique que nous l'utilisons en mode serveur
persiste //Ces lignes permettent de rendre persistante la connexion
persisttun
status openvpnstatus.log //dite un journal des connexions rcentes qui s'crase toutes les
minutes
ca ../es/ca.crt //Le chemin ou vous ave stoc le ichier ca.crt certiicat de
l'autorit de certiication)
cert ../es/servervpn.crt //Le chemin o vous ave stoc le certiicat du serveur
e ../es/servervpn.e //Le chemin o vous ave stoc la cle prive du serveur
dh ../es/dh1024.pem //Le chemin o vous ave stoc la cle diiehellman
serverbridge 192.16.1.24 2.2.2.0 192.16.1.201 192.16.1.23 //ne directive
lie aussi au bridging. n ait chaque client se connectant obtiendra, ici, une IP entre 192.16.1.201
et 192.16.1.23 par une mthode DHCP.
Iconigpoolpersist //Dinit le ichier qui stoce les correspondances entre IP dnamique
et nom d'host. Il permet de rattribuer les mmes IP aux mmes clients en onction du champ
Common ame de leur certiicat.
eepalive 10 120 //nvoi un ping toutes les 10 secondes vers le serveurs pendant 120
seconde pour vriier la connexion avec le tap
complo //Cette ligne active la compression
user openvpn //Cette ligne indique un utilisateur particulier pour le processus
group openvpn //Cette ligne indique un groupe particulier pour le processus
logappend /usr/local/openvpn/log/openvpn.log //Situe les log d'OpenVP
verb 4 //iveau du log
d) lnstallation du client
Avec OpenVP, la notion de client et de serveur nexiste pas tant donn que cest le mme
logiciel qui peut aire oice de client ou de serveur.
Sous Windows:
Il existe une version dOpenVP avec une installation simpliie tlchargeable a cette adresse
http//openvpn.se/iles/installpacages/openvpn2.0.gui1.0.3install.exe
Lors de linstallation de ce programme, la carte rseau virtuelle TAPWin32 Adapter V est
installe. ne ois le programme install, il est lanc automatiquement et a chaque dmarrage de
Coniguration rseau et scurit 21/32
Mmoire de Projet tuteur
Windows. n icne pour le conigurer est disponible a cot de lheure.
nsuite, il est possible de ranciser OpenVP en remplaant le binaire enregistr dans CProgram
FilesOpenVPbinopenvpngui.exe par le binaire tlchargeable a ladresse cidessous
Attention Il aut le renommer apres lavoir tlcharg)
http//openvpn.se/iles/localied/binar/1.0.3/openvpngui1.0.3r.exe
Sous Linux:
Linstallation du client est identique a celle du serveur, car cest le mme logiciel qui ait oice de
serveur ou de client en onction de sa coniguration
aptitude install openvpn liblzo1
e) ConIiguration du client
Sous Windows:
La premiere chose a aire est de copier dans le dossier CProgram FilesOpenVPconig les
ichiers servant a lauthentiication du client via OpenSSL
ca.crt, client.crt et client.key
nsuite, il aut modiier le ichier de coniguration pour ladapter a nos besoin. Pour diter le
ichier, il est possible de aire un clic droit sur licne OpenVP situ a gauche de lheure et de
choisir loption diter la coniguration .
Contenu de ichier client.con
client //tilise le mode client
dev tap
proto udp
remote 192.16.0.1 1194 //L'adresse IP et le port du serveur VP
resolvretr ininite //ssae de rsoudre indiniment le nom d'hte du serveur
nobind //Le client n'a pas besoin d'utiliser un port local
persiste
persisttun
ca ca.crt
cert client.crt
e client.e
complo
verb 4
Coniguration rseau et scurit 22/32
Mmoire de Projet tuteur
Sous Linux:
Les ichiers ncessaire au client Linux sont les mmes que Windows, ainsi que la coniguration,
sau qu'il aut les copier dans etcopenvpn .
I) ModiIication du areIeu
Dans un premier temps, les regles suivantes devraient nous permettre de aire marcher notre VP,
ensuite a nous de restreindre toute cela de la aon adquate pour le rseau l'IT.
Regles de filtrage:
Pour accepter les connexions OpenVP
iptables A IPT s 0.0.0.0/0 d 192.16.0.1p udp dport 1194 j ACCPT //Accepte
le traic entrant de toutes sources vers le serveur VP et de son port 1194
Pour les VP bridgs
iptables A IPT i tap0 j ACCPT //Accepte le traic entrant de l'interace tap0
iptables A FORWARD i tap0 j ACCPT //Accepte les routes entrant de l'interace tap0
iptables A FORWARD o tap0 j ACCPT //Accepte les routes sortant de l'interace tap0
iptables A OTPT o tap0 j ACCPT //Accepte le traic sortant de l'interace tap0
iptables A IPT i br0 j ACCPT //Accepte le traic entrant de l'interace br0
iptables A FORWARD i br0 j ACCPT //Accepte les routes entrant de l'interace br0
iptables A OTPT o br0 j ACCPT //Accepte le traic sortant de l'interace br0
Pour accepter les connexions du serveur HTTP/HTTPS/DS
iptables A IPT p udp dport 0 j ACCPT //Accepte le traic entrant du port 0
iptables A IPT p udp dport 443 j ACCPT //Accepte le traic entrant du port 443
iptables A IPT p udp dport 42 j ACCPT //Accepte le traic entrant du port 42
Regles de NAT:
iptables t nat A PRROTI s 172.16.3.0 p tcp dport 0 j DAT todestination
192.16.0.10 //at les adresses rseaux sources 172.16.3.0 a destination du port 0 du
serveur VP, 192.16.0.1
iptables t nat A POSTROTI d 172.16.3.0 p tcp dport 0 j DAT tosource
192.16.0.10 //Fait la mme chose mais avec le chemin inverse
g) Lancement du serveur et des clients
Il nous aut d'abord lanc le serveur VP
etcinit.dopenvpn start
Coniguration rseau et scurit 23/32
Mmoire de Projet tuteur
Si tous c'est bien pass nous devons avoir une interace tap0, en vriiant avec iconig.
nsuite nous allons cr le pont thernet entre eth0 du serveur VP et le tap0
etcinit.dbridge-start
Maintenant que le cot serveur est prt, passons au lancement des clients
Sous Windows:
Pour lancer la connexion, il suit de aire un clic droit sur licne OpenVP situ a gauche de
lheure et de choisir loption Connecter .
Si tout se passe bien, une entre aichant les logs doit saicher et une ois la connexion eectue,
le rseau est oprationnel.
Sous Linux:
Dans un terminal
etcinit.dopenvpn start
B- Serveur HTTPS et Portail captif
a) ConIiguration du serveur eb our l'HTTP et le Portail catiI
Comme expliqu prcdement, notre serveur doit accepter le HTTPS pour la scurit de
l'authentiication, et ne pas dclencher d'erreur 404 lors de la redirection des requtes.
ous avons donc conigu le ichier /etc/apache2/apache2.con pour modiier le ichi dclench
par l'erreur 404.
ous avons ensuite modii les ichiers /etc/apache2/siteavalaibles/deault et deaultssl pour les
besoins du site. Concernant deaultssl, nous avons ajout les mmes cls que pour le serveur VP,
de maniere a simpliier leur gestion.
nin, dans le site internet, pour complter la redirection, nous avons crit un code permettant de
modiier l'url charge par le navigateur. C'est le script php contenant ce code qui est appel par le
dclenchement de la 404 par notre serveur.
Voila donc les lignes de coniguration des dirents ichiers
error.php ichier dclench par la 404, permettant de modiier l'RL
<?php
$hostname='164,81,20,18';
header (sprintf ('Location = https://%s/',$ hostname));
?>
Coniguration rseau et scurit 24/32
Mmoire de Projet tuteur
apache2.con
uste la ligne suivante a rajouter pour le dclenchement de 404
ErrorDocument 404 /error.php
nin, il regarde directement dans le Document Root du site par daut.
Deault
Les lignes suivantes ont t modiies
DocumentRoot /var/www/PortailOpenVPN/root
ErrorLog /var/log/apache2/PortailOpenVPN/error.log
CustomLog /var/log/apache2/PortailOpenVPN/custom.log
deaultsll
Les lignes suivantes ont t modiies
DocumentRoot /var/www/PortailOpenVPN/root
ErrorLog /var/log/apache2/PortailOpenVPN/error.log
CustomLog /var/log/apache2/PortailOpenVPN/access.log
SSLEngine on
SSLCertificateFile /etc/ssl/certs/vpnserv.crt
SSLCertificateFile /etc/ssl/private/vpnserv.key
nin, il aut penser a reactiver les sites deault a2ensite omdusite), et redmarer Apache.
b) Problmes rencontres
Le principal probleme a t l'activation d'HTTPS. ous avons ini par utiliser les cls de VP au
lieu d'en gnrer sparement.
Les cls gnrs manuellement et autosignes dclenchaient des erreurs au niveau du navigateur, et
direntes solutions testes. Aucune n'a permi de lever ces erreurs, et inalement les cls gnres
pour OpenVP correspondaient au besoin d'HTTPS et nous les avons utilises. A partir de ce
moment, le serveur HTTPS onctionnait correctement.
Coniguration rseau et scurit 2/32
Mmoire de Projet tuteur
C- Site Web
a) Annuaire LDAP
L'authentiication se ait en deux temps
D'abord nous aisons un authentiication au niveau de l'annuaire pour voir si l'utilisateur est
de l'universit
nsuite, nous vriions dans les attributs de la ressource qu'il est du dpartement
inormatique
La ressource nous intressant a un dn compos du login de l'utilisateur. Le probleme est que
le dn doit tre a la ois dnamique, selon le login renseign, et conigurable, dans un ichier
coniguration, si le dn de la ressource est modii.
Pour cela, nous avons utiliser un ssteme de ''moti''. C'est a dire qu'au niveau du ichier de
coniguration , le ''dn'' de la ressource est renseign avec un caractere ''joer''. t au moment de
l'authentiication, le caractere ''joer'' sera remplac par le login de l'utilisateur.
Ici le corocrere jo|er esr ''%s''
Pour consulter un annuaire LDAP, il aut demander une connexion a l'annuaire dans un
premier temps et puis s'authentiier. Dans notre situation, avec le mot de passe de l'utilisateur et le
dn de la ressource lui correspondant.
Avonr l'oppel Je l'ourenri[icorion on remploce le ''jo|er'' por le loqin
Maintenant, nous allons appliquer le ''iltre''. La recherche ne retourne qu'un seul rsultat
l'utilisateur, si et seulement si il est du dpartement.
Mais, la onction de recherche retourne aussi un rsultat ''vide'' quand l'utilisateur ne
correspond pas au iltre. ous sommes oblig de compter le nombre de rsultat. Si, il un rsultat,
alors la onction peut compter et retourne bien un rsultat. Sinon, aucun rsultat n'a t trouv, et
par consquent, la onction de comptage retourne un indicateur ''Faux''.
Un inJicoreur Jevienr 'Vroi' si lo recerce esr un succes
Coniguration rseau et scurit 26/32
Mmoire de Projet tuteur
b) edirection de requtes
La modiication de l'RL se ait en modiiant le champ ''Location'' de l'entte de la page
''rponse''. Le traitement n'est pas eectu si ''Location'' correspond dja au site du VP.
MoJi[icorion Je url
c) Changement de l'arborescence
Les direntes pages d'un site internet sont stoces selon un ssteme de ichier/rpertoire.
n d'autre terme, lorsqu'un utilisateur consulte une page, il peut avec son navigateur, accder a tout
le contenue du rpertoire o se trouve le ichier, aussi bien les ichiers que les rpertoires.
ous avons modii l'organisation des rpertoires et des ichiers du site pour viter que
l'utilisateur est acces a certain ichier sensible, comme la coniguration du site, tout en lui
permettant de rcuprer ce qu'il a besoin pour l'aichage sur son navigateur, comme les images.
Depuis le reperroire ''Roor'' on peur occeJer ou reperroire ''Imq'' mois pos ''Con[''
Coniguration rseau et scurit 27/32
Mmoire de Projet tuteur
IV Pour aller plus loin
A- Problemes non rsolus
La cration des cles, des certiicats et leur mise a disposition au niveau du site n'a pas t
implment. n eet, la gnration des certiicats et des cles par script n'aant pas t aite, leur
utilisation au niveau du site est reste bloque.
B- Amliorations possibles
Ce que nous n'avons pas pu mettre en place.
La cryptograpie asymtrique, ou crptographie a cl publique est onde sur l'existence
de onctions a sens unique une ois la onction applique a un message, il est extrmement diicile
de retrouver le message original.
n ralit, on utilise en crptographie asmtrique des onctions a sens unique et a breche secrete.
ne telle onction est diicile a inverser, a moins de possder une inormation particuliere, tenue
secrete, nomme cl prive
partir d'une telle onction, voici comment se droulent les choses on souhaite pouvoir recevoir
des messages chirs de n'importe qui. On gnere alors une valeur a partir d'une onction a sens
unique et a breche secrete a l'aide d'un algorithme de chirement asmtrique par exemple RSA
Rivest Shamir Adleman ou RSA est un algorithme asmtrique de crptographie a cl publique,
tres utilis dans le commerce lectronique, et plus gnralement pour changer des donnes
conidentielles sur Internet. Cet algorithme a t dcrit en 1977 par Ron Rivest, Adi Shamir et Len
Adleman, d'o le sigle RSA. RSA a t brevet par le MIT en 193 aux tatsnis.)
Pour mieux expliquer comment onctionne le ssteme asmtrique nous avons dcid de vous
montrer un schma
1ere tape On gnere deux cls. La cl publique verte) est envoer au client et la cl prive
rouge)est conserv prcieusement sans tre divulguer a quiconque.
Coniguration rseau et scurit 2/32
Mmoire de Projet tuteur
2e et 3e tapes le client chire le message avec la cl publique du serveur et envoie le texte
chir. Le serveur dchire le message grce a sa cl prive.
Tout d'abord il aut gnr des cl rsa via cette commande.
openssl genrsa -out ca.key 409
Cette commande nous permet de cre un cle RSA priv chir sur 4096 bits la onction out
permet de donner un nom.
Il aut ensuite gnrer un pr certiicat qui contiendra les inormations relative au ca.
openssl req -utf -new -x09 -days 000 -key ca.key -out ca.crt
en tapant cette commande nous pourrons complt les inormations et signer le certiicat, das
indique le nombre de jour que nous voulons qu'il soit acti x09 sert a la gestion des donns
une ois le certiicat cre il aut cre le certiicat serveur
openssl genrsa -out serveur.key 409
openssl req -utf -new -x09 -days 000 -key ca.key -out serveur.crt
Comme prcdemment nous allons recr une cle et un certiicat mais cette oisci ces ichier
sont destins au serveur par contre il aut spcii que l'on signe le certiicat avec la cl prives
ca.e pour chirer le certiicat .
ne ois que le certiicat ca et le certiicat serveur sont cre il aut gnr des certiicat pour les
clients.
Pour cela nous allons gnr un script qui va gnr 2 ichiers
openssl genrsa -out 1.key 409
openssl req -utf -new -x09 -days 000 -key ca.key -out 1.crt
ce script sera excut quand le client cliquera sur un lien dini dans le site web ainsi il rcupera les
ichiers dont il a besoin pour se connecter
$1 est un argument qui rcupra la donne rentr par un utilisateur et permettra ainsi la gnration
des cls.
ne autre onctionalit pouvant tre raliser La rvocation des certiicats
La question de la dure de vie des certiicats n'a t abord concretement avec le client. t,
nous n'avons pas dvelopp cette onctionnalit parce qu'il n'tait pas prsent dans le cahier des
charges. anmoins, Cela reste un probleme a rgler car cette question remet en cause la scurit du
uture rseau VP.
Coniguration rseau et scurit 29/32
Mmoire de Projet tuteur
Conclusion
Le VP est un moen robuste de scuriser une connexion externeur a rseau inormatique.
Il permet de crer des tunnels SSL scuriss grce a la gnration de certiicats et de cles pour
l'authentiication des utilisateurs extrieurs.
Suite a la mise en place du serveur VP, il ne aut pas oublier les regles de scurit du
pareeu, sans pour autant dgrader les regles actuelles du rseau du dpartement.
Cependant, la mise en place du VP pose d'autre probleme au niveau de la scurit. Les
cles et les certiicats sont stocs sur les machines clients, mais le niveau de scurit du client n'a
pas t prit en compte. ne tude devra tre ralis.sur ce probleme. La mise en place d'une
protection supplmentaire sur les postes clients pourra peut tre envisag. De plus, la politique de
scurit du dpartement devra tre modiier pour prendre en compte l'utilisation du VP.
Coniguration rseau et scurit 30/32
Mmoire de Projet tuteur
Annexes
Glossaire
HTTPS HyperTexr Trons[err Prorocol Secure. Il s'agit du protocole web crpt et scuris
utilis entre un serveur web et un navigateur pour communiquer sans pouvoir tre espionns.
VPN Virruol Privore Nerwor|. Il s'agit du rseau mis en place entre un serveur VP et
un client VP. Ils crent ce rseau pour la communication entre les deux machines pour que
les autres applications l'utilisent comme un rseau rel.
Iptables logiciel permettant a une machine nix de aire du iltrage, et donc de serveur de
pareeu sur un rseau.
LAP service d'annuaire permettant l'identiication d'utilisateurs.
Brctl: pacet linux permettant de pont thernet entre deux interaces.
Coniguration rseau et scurit 31/32
Mmoire de Projet tuteur
oures
Site Internet de la distribution Debian http//www.r.debian.org/
Article Wiipdia sur VP http//r.wiipedia.org/wii/R%C3%A9seaupriv
%C3%A9virtuel
Site Internet d'Apache2 http//httpd.apache.org/
Tutoriel OpenVP sous Debian http//www.coagul.org/spip.phparticle422
Tutoriel OpenVP sous Debian http//www.nbssstem.com/dossiers/howto
openvpn2.html
Man brctl http//linuxcommand.org/manpages/brctl.html
uide Iptables http//www.linuxrance.org/prj/inetdoc/guides/iptablestutorial/
Tutoriel sur la gnration des cls http//artisan.armalab.net/node/113
Source du langage PHP http//php.net/manual/r/index.php
Coniguration rseau et scurit 32/32
Mmoire de Projet tuteur