Post on 16-Apr-2017
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Thème : Mise en place d’un OpenVPN sous PfSense
Présenté par
Laoualy Ibrahim Bassirou
bassiroulaouali@gmail.com
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
i Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Dédicace
C’est avec un grand plaisir que je dédie ce travail à mon cher
pays le Niger et à toute la communauté Nigérienne au Maroc.
Ce travail est aussi dédié à tous les membres de la famille et à
toutes mes connaissances.
A mes tuteurs du Maroc ainsi ceux du Niamey.
Une dédicace spéciale à ma future épouse inchallah
Rouweibaassirou
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
ii Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Remerciement
C’est avec un grand honneur que j’ai consacré cette page en
signe de gratitude et de reconnaissance à mon encadreur Mme
Ibtihal Mouhib qui a assuré la supervision de la réalisation de
ce projet par ses conseils et leurs aides précieux.
Notre sincère gratitude s’adresse également à tous nos
enseignantes et enseignants du département
informatique du sup’ management.
De même nous tenons à remercier les membres de jury
pour l’honneur qui nous ont fait en acceptant de juger
notre travail.
Mes remerciements vont à l’endroit de tous les camarades
de la 5ème Année Réseaux, Sécurité et Télécoms.
A tous ceux qui m’ont aidé de près ou de loin à la
réalisation de ce rapport de stage.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
iii Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Sigle et Abréviation
CA : Certificate Authority
Free BSD : Berkeley software distribution (BSD)
HTTPS: Hypertext Transfert Protocol
IEEE: Institute of Electrical and Electronics Engineers
IETF : Internet Egineering Task Force
IDS : Instrusive Detection System = détecteur d'intrusion
IPSec: Internet Protocol Security
L2F : Layer 2 Forwarding
L2TP: Layer 2 Tunneling Protocol
MAC : Media Access Control
MAN: Metropolitan Area Network
NAT : Network Address Translation
OSI: Open System Interconnect
PPP : Point to Point Protocol
PPTP: Point-to-Point Tunneling Protocol
QOS: Quality Of Service
RADIUS : Remote Authentication Dial-In User Service
RFC: Request Form Comment
SSL: Secure Sockets Layer
VLAN: Virtual Locan Area Network
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
iv Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Table des matières Dédicace ..........................................................................................................................................................
Remerciement ............................................................................................................................................... ii
Sigle et Abréviation ...................................................................................................................................... iii
Introduction générale ....................................................................................................................................1
I. Généralités sur les attaques dans un réseau ........................................................................................2
1. Les motivations des attaques ............................................................................................................2
2. Mesure des risques ............................................................................................................................2
2.1 Risques humains ........................................................................................................................2
2.2 Risques techniques ....................................................................................................................3
2.3 Risques juridiques ......................................................................................................................3
3. Les types d'attaques ..........................................................................................................................3
3.1 Denial of Service ........................................................................................................................3
3.2 Sniffing .......................................................................................................................................4
3.3 Scanning ....................................................................................................................................4
3.4 Social Engineering ......................................................................................................................5
3.5 Cracking .....................................................................................................................................6
3.6 Spoofing .....................................................................................................................................6
3.7 Man in the Middle .....................................................................................................................7
3.8 Hijacking ....................................................................................................................................7
4. Les solutions de Protections ..............................................................................................................8
4.1 Un pare-feu : ..............................................................................................................................8
4.2 Un logiciel Antivirus ...................................................................................................................8
4.3 Un logiciel anti- spyware ...........................................................................................................8
4.4 Détecteur d'intrusions ...............................................................................................................9
4.5 Cryptage ....................................................................................................................................9
4.6 VPN ............................................................................................................................................9
Les caractéristiques fondamentales d'un VPN : ................................................................................. 10
II. Protocoles utilisés pour réaliser une connexion VPN ........................................................................ 10
1.1 Le protocole Ppp ......................................................................................................................... 10
1.2 Le protocole Pptp : ..................................................................................................................... 10
1.3 Le protocole L2tp : ...................................................................................................................... 11
1.4 Le protocole Ipsec : ..................................................................................................................... 11
1.5 Le protocole MPLS ...................................................................................................................... 11
1.6 Le protocole SSL :........................................................................................................................ 12
III. PRESENTATION GENERALE DE PFSENSE ......................................................................................... 12
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
v Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
1. Présentation de pfSense ................................................................................................................. 12
1.1 FreeBSD .................................................................................................................................. 13
1.2 VirtualBox ............................................................................................................................... 13
2. Présentation OpenVPN ................................................................................................................... 14
2.1 Tableau de comparaison ............................................................................................................ 14
3. Installation et configuration de base de Pfsense .......................................................................... 15
3.1 Activation d’une interface réseau .............................................................................................. 16
3.2 Installation de Pfsense ................................................................................................................ 16
3.3 Poursuite de l'installation via l’interface web ............................................................................ 21
4. Installation du package OpenVPN Client Export Utility .................................................................. 24
5. Création d'une autorité de certification – CA ................................................................................. 24
6. Création d’utilisateur OpenVPN et certificat privé pour l’utilisateur ............................................. 26
7. Configuration du serveur OpenVPN ............................................................................................... 27
8. Configuration du Firewall ............................................................................................................... 30
9. Configurer OpenVPN côté "client" ................................................................................................. 31
10. Export du client openVPN et la configuration ............................................................................ 31
Conclusion .................................................................................................................................................. 33
Bibliographie ............................................................................................................................................... 34
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
1 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Introduction générale
L’informatique a été depuis plusieurs décennie utilisé pour faciliter les taches souvent
difficile pour les humaines. Dans les entreprise, son utilisation est devenue indispensable non
seulement pour son bon déroulement de ses activités mais aussi pour rester en contact avec ses
partenaires distants. Pour une interconnexion sécurisée entre les sites distants d’une même
entreprise partageant les mêmes ressources ou avec des partenaires, on fait recours à des lignes
spécialisées (LS), cette solution bien qu’elle est efficace présente des contraintes de point de vue
cout de réalisation, de maintenance en cas de problème sur les câbles...
Lorsque cette raccordement va se faire à l’échelle d’un pays voire d’un continent, il faut
penser à une solution plus souple tout en minimisant le cout, relié les sites via l’internet peut être
une meilleur solution. Etant donné que l’internet est un réseau non sécurisé, les entreprise vont
recourt à la solution de VPN pour échanger leurs informations en toute sécurité à travers tunnel.
Dans notre rapport, nous allons essayer d’étudier cette solution de VPN à travers OpenVPN.
Ainsi ce rapport est scindé sur trois parties primordiales :
La première partie est portée sur les généralités des attaques dans un réseau.
La deuxième partie présente une étude quelques protocoles utilisés pour réaliser une connexion
VPN
La troisième est réservée pour la partie pratique mais avant dans cette partie nous avons donné
une présentation générale dans outils qui nous ont permis à faire ce travail.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
2 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
I. Généralités sur les attaques dans un réseau
La cybercriminalité se définit communément comme toute action illicite visant l’intégrité d’un
site informatique déterminé, ou bien menée à l’aide d’un outil informatique. Tout ordinateur
connecté à l’internet est potentiellement vulnérable à une attaque.
Une attaque est l'exploitation d'une faille d'un système informatique à des fins non connues par
l'exploitant du système et généralement préjudiciables.
Sur internet des attaques ont lieu en permanence, à raison de plusieurs attaques par minute sur
chaque machine connectée.
Afin de contrer ces attaques il est indispensable de connaître les principaux types
d'attaques afin de mettre en œuvre des dispositions préventives.
1. Les motivations des attaques
Les motivations des attaques peuvent être de différentes sortes :
Obtenir un accès au système ;
voler des informations, tels que des secrets industriels ou des propriétés intellectuelles ;
récupérer des données bancaires ;
s'informer sur l'organisation (entreprise de l'utilisateur, etc.) ;
troubler le bon fonctionnement d'un service ;
utiliser le système de l'utilisateur comme « rebond » pour une attaque ;
menaces répréhensibles diverses, de type «vengeance»;
fraude commerciale;
abus de confiance et escroqueries diverses;
détournements de mineurs;
Usurpation d'identités.
2. Mesure des risques
Dans le monde professionnel, les risques et les moyens de prévention sont essentiellement
évalués en raison de leurs coûts.
2.1 Risques humains
Les risques humains sont les plus importants, même s’ils sont le plus souvent ignorés ou
minimisés.
L’inconscience et l'ignorance ;
L’espionnage ;
Le détournement de mot de passe ;
Le sabotage ;
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
3 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
L’écoute ;
La fraude physique ;
Le vol de matériels ;
Le chantage ;
L’abus de droit ;
L’accès illégitime ;
2.2 Risques techniques
Les risques techniques sont tout simplement ceux liés aux défauts et pannes inévitables que
connaissent tous les systèmes matériels et logiciels. Cependant les pannes ont parfois des causes
indirectes, voire très indirectes, donc difficiles à prévoir.
Incidents liés au matériel
Incidents liés au logiciel
Incidents liés à l’environnement
2.3 Risques juridiques
L’ouverture des applications informatiques par le web et la multiplication des messages
électroniques augmentent les risques juridiques liés à l'usage des technologies de l'information.
On peut citer notamment :
Le non-respect de la législation relative à la signature numérique ;
Les risques concernant la protection du patrimoine informationnel ;
Le non-respect de la législation relative à la vie privée ;
Le non-respect des dispositions légales relatives au droit de la preuve.
3. Les types d'attaques
Etant donné que les systèmes informatiques mettent en œuvre les différentes
composantes, allant de l'électricité pour alimenter les machines au logiciel exécuté via le système
d'exploitation et utilisant le réseau.
Les attaques peuvent intervenir à chaque niveaux de la chaine chaîne, pour peu qu'il
existe une vulnérabilité exploitable.
3.1 Denial of Service
Le déni de service (en anglais denial of service) : technique visant à générer des arrêts de
service, et ainsi d’empêcher le bon fonctionnement d’un système. Ce type d'attaque peut aussi
bien être utilisé contre un serveur d'entreprise qu'un particulier relié à internet.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
4 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
3.2 Sniffing
Le reniflage (en anglais Sniffing) est une technique qui consiste à analyser le trafic pour
récupérer toutes les informations transitant sur un réseau.
Comment s'en protéger ?
Utiliser de préférence un switch (commutateur) plutôt qu'un hub.
Utiliser des protocoles chiffrés pour les informations sensibles comme les mots de passe.
Utiliser un détecteur de sniffer.
3.3 Scanning
Le scanning consiste à balayer tous les ports sur une machine en utilisant un outil appelé
scanner. Le scanner envoie des paquets sur plusieurs ports de la machine. En fonction de leurs
réactions, le scanner va en déduire si les ports sont ouverts. C'est un outil très utile pour les
hackers. Cela leur permet de connaitre les points faibles d'une machine et ainsi de savoir par où
ils peuvent attaquer.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
5 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Comment s'en protégé?
Scanner sa machine pour connaitre les ports ouverts
Surveiller les ports ouverts avec un firewall et fermer ceux qui ne sont pas utiles
Utiliser un IDS (détecteur d'intrusion) ou mieux un IPS (prévention d'intrusion)
3.4 Social Engineering
Le social engineering est l'art de manipuler les personnes. Il s'agit ainsi d'une technique
permettant d'obtenir des informations d'une personne, qu'elle ne devrait pas donner en temps
normal, en lui donnant des bonnes raisons de le faire
Pourtant, une attaque par social engineering bien menée peut se révéler très efficace. Elle n'est
donc pas à prendre à la légère.
Comment s'en protéger ?
Avoir du bon sens pour flairer l'arnaque
Se méfier des personnes que l'on ne connaît pas
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
6 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
3.5 Cracking
Le crackage des mots de passe consiste à deviner le mot de passe de la victime.
Les craqueurs de mots de passe s'appliquent souvent à un fichier contenant le nom des
utilisateurs ainsi que leur mot de passe encrypté.
Ces logiciels peuvent tester des mots de passe selon trois méthodes :
Attaque par dictionnaire : Le logiciel teste tous les mots de passe stockés dans un
fichier texte. Cette méthode est redoutable car en plus de sa rapidité, elle aboutit
généralement puisque les mots de passe des utilisateurs lambda sont souvent des mots
existants.
Attaque hybride : le logiciel teste tous les mots de passe stockés dans un fichier texte et
y ajoute des combinaisons
Attaque brute-force : le logiciel teste toutes les combinaisons possibles Heureusement,
tester toutes les combinaisons prends beaucoup de temps. D'où l'utilité de changer de
mots de passe régulièrement.
Comment s'en protéger
Choisir un mot de passe
Un mot de passe robuste doit satisfaire à plusieurs critères :
o plus de 8 caractères
o utiliser la casse (majuscule/minuscule)
o utiliser des chiffres
Changer régulièrement de mot de passe
3.6 Spoofing
L'usurpation (en anglais spoofing) consiste à se faire passer pour quelqu'un d'autre.
Voici quelques exemples d'usurpations :
o Usurpation de l'adresse IP
o Usurpation de l'adresse e-mail
o Usurpation WEB c’est le principe du phishing
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
7 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Généralement, quand on parle d'usurpation ou de spoofing, on parle de l'usurpation de l'adresse
IP.
Comment s'en protéger ?
On ne peut pas empêcher quelqu'un d'usurper une identité. En revanche, il faut à tout prix être
sûr de l'identité de la machine avec laquelle on dialogue.
Utiliser des protocoles sécurisés comme ssh qui empêche le spoofing.
3.7 Man in the Middle
Man in the Middle signifie l'homme du milieu, cette une attaque qui a pour but de
s'insérer entre deux ordinateurs qui communiquent. Le pirate peut donc intercepter tout le trafic,
pire encore, il peut modifier le trafic avant de le renvoyer vers l'autre ordinateur.
Comment s'en protéger ?
Sur Internet, n'achetez que sur des sites sécurisés.
Les sites sécurisés commencent par "https" au lieu de "http". Il y a également un cadenas
en bas de votre navigateur.
Sur un réseau, utilisez des protocoles sécurisés.
3.8 Hijacking
Un pirate peut craquer (cible) le mot de passe de la session mais avec le mot de passe
robuste, cela lui prendra beaucoup de temps donc il passe au détournement de session.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
8 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Comment s'en protéger ?
S'assurer que la communication est sécurisée
4. Les solutions de Protections
Il existe plusieurs solutions de protections tant sur le niveau infrastructure que dans le réseau,
nous allons voir quelque solution
La meilleure façon de protéger votre ordinateur contre les logiciels malveillants, les logiciels
espions et les virus c’est d’avoir trois types de logiciels de sécurité installés sur votre ordinateur.
La plupart des logiciels de sécurité payants comprennent les trois éléments comme une suite de
sécurités.
4.1 Un pare-feu :
Le pare-feu cela agit comme un portier pour protéger votre ordinateur contre les attaques
entrantes par l’Internet, en surveillant et en filtrant le trafic de données entrant ou sortant de votre
ordinateur.
4.2 Un logiciel Antivirus
Celui-ci contribue à vous protéger contre les virus, les chevaux de Troie et autres
menaces de sécurité en scannant et en arrêtant les virus en cours d’installation sur votre
ordinateur. Si vous avez un virus installé sur votre PC, le logiciel antivirus sera en mesure de le
retirer.
4.3 Un logiciel anti- spyware
Spyware est un logiciel malveillant qui se télécharge secrètement sur votre ordinateur.
Une fois installé, il peut surveiller votre activité, recueillir des informations sur vous et les
envoyer sur Internet, et même contrôler votre navigateur Web (appelé « hijacking » ou
«détournement»). Le logiciel anti-spyware scanne votre ordinateur pour détecter cela, et
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
9 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
supprime tout logiciels espions qu’il trouve. En gardant le logiciel anti-spyware active, il peut
empêcher les logiciels espions d’être installé dès la première fois.
Autres outils de sécurité utiles d’avoir installé sur votre PC comprennent les filtres anti-
spam pour bloquer les messages non sollicités et le contrôle parental pour vous aider à garder vos
enfants en sécurité en ligne.
4.4 Détecteur d'intrusions
Un détecteur d'intrusions (en anglais Instrusive Detection System) est un système capable
de détecter une tentative d'intrusion sur votre système. Il stoppe la majeure partie des attaques
recensées.
L'IDS écoute le trafic réseau et analyse les paquets pour prévenir des actions suspectes et les
arrêter.
4.5 Cryptage
Internet est un réseau non sécurisé, dès que l'on souhaite envoyer des informations
confidentielles à une autre personne, il faut donc les crypter. Il existe deux grands types de
chiffrement :
Le chiffrement à clé privée (dit aussi symétrique)
Le chiffrement à clé privée consiste à utiliser la même clé pour crypter et décrypter le message.
Les personnes voulant communiquer et eux-seules doivent posséder la clé pour pouvoir crypter
et décrypter les messages. Dès lors se pose le problème de l'échange de la clé.
Exemple : DES
Le chiffrement à clé publique (dit aussi asymétrique)
Le chiffrement à clé publique consiste en l'utilisation d'une clé différente pour crypter ou
décrypter. Le propriétaire de la clé privée donne la clé publique à tout le monde et garde l'autre
clé. Ainsi, on peut lui envoyer des messages chiffrés avec la clé publique mais personne ne peut
le décrypter à part le propriétaire à l'aide de sa clé privée. Avec ce chiffrement, le problème de
l'échange de clé ne se pose plus. Mais, la communication ne peut se faire que dans un sens, il
faudrait alors deux autres clés pour dialoguer dans l'autre sens.
Exemple : RSA
4.6 VPN
Un VPN (Virtual Private Network) est une liaison sécurisée entre deux parties via un
réseau public, en général Internet (ligne RTC, Numéris, xDSL, câble…), pour assurer
l’authentification des deux parties, l’intégrité des données et le chiffrage
La mise en place d’un VPN est basée sur des plateformes de cryptage. La technologie VPN
garantit des échanges sécurisés d'informations sensibles, accessibles depuis n'importe quel
endroit, du moment qu'une connexion Internet est disponible.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
10 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Les caractéristiques fondamentales d'un VPN :
Un système de VPN doit pouvoir mettre en œuvre les fonctionnalités suivantes :
Authentification d'utilisateur. Seuls les utilisateurs autorisés doivent pouvoir s'identifier
sur le réseau virtuel.
Gestion d'adresses. Chaque client sur le réseau doit avoir une adresse privée. Cette
adresse privée doit rester confidentielle.
Cryptage des données. Lors de leurs transports sur le réseau public les données doivent
être protégées par un cryptage efficace.
Gestion de clés. Les clés de cryptage pour le client et le serveur doivent pouvoir être
générées et régénérées.
Prise en charge multi protocole. La solution VPN doit supporter les protocoles les plus
utilisés sur les réseaux publics en particulier IP.
II. Protocoles utilisés pour réaliser une connexion
VPN
Nous pouvons classer les protocoles que nous allons étudier en deux catégories:
Les protocoles de niveau 2 comme Pptp et L2tp.
Les protocoles de niveau 3 comme Ipsec ou Mpls
1.1 Le protocole Ppp
Ppp (Point to Point Protocol) Rfc 1661 appuyé de la Rfc 2153.est un protocole qui permet
de transférer des données sur un lien synchrone ou asynchrone. Il est full duplex et garantit
l'ordre d'arrivée des paquets. Il encapsule les paquets Ip, Ipx et Netbeui dans des trames Ppp, puis
transmet ces paquets encapsulés au travers de la liaison point à point. Ppp est employé
généralement entre un client d'accès à distance et un serveur d'accès réseau (Nas).
1.2 Le protocole Pptp :
Le Point-To-Point Tunneling Protocol (PPTP) (RFC) 2637 en juillet 1999, est un
protocole d’encapsulation s’appuyant sur le protocole PPP pour la communication. Ce protocole
ne peut travailler que sur des réseaux IP. Historiquement parlant, ce protocole a été implémenté
pour la première fois par Cisco, il fut ensuite repris par Microsoft dans ses systèmes Windows.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
11 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
1.3 Le protocole L2tp :
L2TP est un protocole combinant les avantages du PPTP de Microsoft et du Layer 2
Forwarding (L2F) de Cisco, décrit dans la RFC 2661 et a été créé par l’Internet Egineering Task
Force (IETF), il s’appuie lui aussi sur le protocole PPP. Le protocole L2TP est aujourd’hui
principalement utilisé par les Fournisseurs d’Accès à Internet (FAI ou ISP en anglais). L2TP est
la plupart du temps couplé à IPSsec pour sécuriser les données, comme décrit dans la RFC 3193,
en effet, L2TP ne s'occupe que du transport des données et non de leur confidentialité.
1.4 Le protocole Ipsec :
IIPsec, définit par la RFC 2401, est un protocole qui vise à sécuriser l'échange de données
au niveau de la couche réseau. Le réseau Ipv4 étant largement déployé et la migration vers Ipv6
étant inévitable, mais néanmoins longue, il est apparu intéressant de développer des techniques
de protection des données communes à Ipv4 et Ipv6. Ces mécanismes sont couramment désignés
par le terme Ipsec pour Ip Security Protocols. Ipsec est basé sur deux mécanismes. Le premier,
AH, pour Authentification Header vise à assurer l'intégrité et l'authenticité des datagrammes IP.
Il ne fournit par contre aucune confidentialité : les données fournies et transmises par Ce
"protocole" ne sont pas encodées. Le second, Esp, pour Encapsulating Security Payload peut
aussi permettre l'authentification des données mais est principalement utilisé pour le cryptage des
informations. Bien qu'indépendants ces deux mécanismes sont presque toujours utilisés
conjointement. Enfin, le protocole Ike permet de gérer les échanges ou les associations entre
protocoles de sécurité. Avant de décrire ces différents protocoles, nous allons exposer les
différents éléments utilisés dans IPsec.
1.5 Le protocole MPLS
Le protocole MPLS est un brillant rejeton du "tout ip". Il se présente comme une solution
aux problèmes de routage des datagrammes IP véhiculés sur Internet. Le principe de routage sur
Internet repose sur des tables de routage. Pour chaque paquet les routeurs, afin de déterminer le
prochain saut, doivent analyser l'adresse de destination du paquet contenu dans l'entête de niveau
3. Puis il consulte sa table de routage pour déterminer sur quelle interface doit sortir le paquet.
Ce mécanisme de recherche dans la table de routage est consommateur de temps Cpu et avec la
croissance de la taille des réseaux ces dernières années, les tables de routage des routeurs ont
constamment augmenté. Le protocole MPLS fut initialement développé pour donner une plus
grande puissance aux commutateurs Ip, mais avec l'avènement de techniques de commutation
comme Cef (Cisco Express Forwarding) et la mise au point de nouveaux Asic (Application
Specific Interface Circuits), les routeurs IP ont vu leurs performances augmenter sans le recours
à Mpls.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
12 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
1.6 Le protocole SSL :
SSL (Secure Sockets Layer) est un protocole de couche 4 (niveau transport) utilisé par
une application pour établir un canal de communication sécurisé avec une autre application. Il
fournit un accès sécurisé (via un tunnel dédicacé) vers des applications spécifiques de l'entreprise
ou de l'administration.
Le grand avantage de cette méthode réside dans sa simplicité: on utilise seulement son browser
habituel et on n'utilise pas de client spécifique ou de matériel spécifique.
Avec SSL VPN, les utilisateurs distants ou les utilisateurs mobiles peuvent avoir un accès à des
applications bien déterminées sur l'intranet de leur organisation depuis n'importe quel accès
Internet. Cependant, l'accès aux ressources internes est plus limité que celui fourni par un VPN
IPSEC, puisque l'on accède uniquement aux services qui ont été définis par l'administrateur du
VPN (par exemple les portails et sites Web, les fichiers ou le courrier électronique).
Contrairement aux techniques VPN de type IPSEC, PPTP, L2TP, la technique VPN SSL se situe
à un niveau du modèle réseau ISO bien supérieur, en l'occurrence le niveau 5, c'est-à-dire
"session applicative". Comme IPSEC, SSL utilise principalement des certificats numériques pour
l'établissement de communications sécurisées.
III. PRESENTATION GENERALE DE PFSENSE
1. Présentation de pfSense
PfSense a été créé en 2004 comme un fork du projet mOnOwall, pour viser une
installation sur un PC plutôt que sur du matériel embarqué. PfSense est basée sur Free BSD, en
visant les fonctions de firewall et routeur.
PfSense est puissante, en bonne partie car elle est basée sur Free BSD, mais aussi assez simple
d'accès, car elle fournit une interface web pour la configuration, (en plus de l'interface console).
Je recommande quand même de connaitre les commandes basiques de Free BSD en mode
console, au moins pour pouvoir récupérer la configuration en cas d'erreur (par exemple une
mauvaise route qui vous empêche de joindre le firewall...). Cette interface web n'est accessible
par défaut qu'à partir du LAN.
PfSense est une distribution Free BSD dédié firewall / routeur.
Le firewall est basé sur Paquet Filter. Toute la configuration du système est stockée dans
un fichier xml (/cf/conf/config.xml).
Performances sont liées au matériel.
L’installation ainsi que la configuration PfSense va se réaliser sur un système
d’exploitation de type Free BSD. Il est possible d’émuler le système d’exploitation Free
BSD grâce à VMware ou Virtualbox.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
13 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Plusieurs packages disponibles dans PfSense permettent de mettre en place un VPN client
suivant différentes technologies telles que (OpenVPN, IPSec, L2TP, PPTP) :
OpenVPN: OpenVPN est une solution flexible, puissante solution de VPN SSL
supportant une large gamme de systèmes d’exploitation client. Elle peut être mise en
œuvre en PfSense à partir du package http://openvpn.net/
IPSec: permet la connectivité avec tout dispositif de support standard IPsec. Ceci est le
plus généralement utilisé pour la connectivité du site aux installations PfSense. IPSEc
peut être mise en œuvre en PfSense à partir du package
http://tools.ietf.org/html/rfc4301
L2TP: Cette option va gérer le Layer 2 Tunneling Protocol (L2TP) qui signifie protocole
de tunnellisation de niveau 2. Il s’agit d’un protocole réseau utilisé pour créer des
réseaux privés virtuels (VPN). Cette technologie peut être mise en place à partir du
package http://tools.ietf.org/html/rfc7546
PPTP: est une option populaire VPN, car presque tous les OS sont dotés d’un client
PPTP, y compris toutes les versions de Windows depuis Windows 95 OSR2. Le serveur
Pfsense PPTP peut utiliser une base de données d’utilisateur local, ou d’un serveur
RADIUS pour l’authentification. PPTP peut être utilisé en pfSense à partir du package :
http://www.ietf.org/rfc/rfc2637.txt
1.1 FreeBSD
FreeBSD® est un système d'exploitation avancé pour les plates-formes modernes de
type serveur, station de travail et systèmes embarqués. Le code de base de FreeBSD a été
développé, amélioré et optimisé continuellement pendant plus de trente ans. Il est développé et
maintenu par une importante équipe de personnes. FreeBSD propose des fonctionnalités réseau
avancées, une sécurité poussée et des performances de haut niveau. FreeBSD est utilisé par
certains des sites web les plus visités ainsi que par la plupart des systèmes embarqués orientés
réseau et des systèmes de stockage les plus répandus. En savoir plus
https://www.freebsd.org/fr/about.html
1.2 VirtualBox
VirtualBox est un x86 et AMD64 puissante / Intel64 virtualisation produit pour
l'entreprise ainsi que l'utilisation de la maison. Non seulement est VirtualBox extrêmement riche
en fonctionnalités, produit de haute performance pour les clients de l'entreprise, il est également
la seule solution professionnelle qui est disponible gratuitement en Open Source Software sous
les termes de la licence GNU General Public License (GPL) version 2 Voir "A propos de
VirtualBox "pour une introduction.
Actuellement, VirtualBox fonctionne sur Windows, Linux, Macintosh, et les hôtes Solaris
et prend en charge un grand nombre de systèmes d'exploitation invités, y compris mais non
limité à Windows (NT 4.0, 2000, XP, Server 2003, Vista, Windows 7, Windows 8, Windows 10
), DOS / Windows 3.x, Linux (2.4, 2.6, 3.x et 4.x), Solaris et OpenSolaris, OS / 2, et OpenBSD.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
14 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
2. Présentation OpenVPN
OpenVPN est un logiciel libre permettant de créer un réseau privé (VPN). Ce logiciel,
disponible dans PfSense, permet à des paires de s’authentifier entre eux à l’aide d’une clé privée
partagée à l’avance ou à l’aide de certificats. Pour chiffrer ses données, OpenVPN utilise le
protocole SSLv3 de la librairie OpenSSL aussi présente dans PfSense.
2.1 Tableau de comparaison
OpenVPN IPSec PPTP
Clients mobiles Oui Ne supporte pas
NAT- T ce qui
empêche
l’utilisation de
client mobiles
derrière du NAT
Oui
Utiliser IP statiques ou
dynamiques
Static IP : Oui
Dynamic IP :
V2.0
Static IP : Oui
Dynamic IP : Un
seul point final
autorisé
Static IP :
Oui Dynamic
IP : Oui
Filtrage de traffic VPN Prévu dans la
V2.0
Oui Oui
Type d’authentification Shared Key,
Certificat
Pre Shared
Key,
Certificat
Local user
database,
RADIUS server
(Authentification,
Accounting)
Fonctionnalités du
mécanisme non encore
implémentées dans
PfSense
Celles
manquantes dans
la V2.0
DPD, XAuth,
NAT-T
et autres
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
3. Installation et configuration de base de Pfsense
Notre travail se fera sur la machine Virtualbox, nous avons pris :
une machine Serv2008r2 pour le test
une machine Pf_Site1
une machine Pf_Site2
L’installation ainsi que la configuration Pfsense va se réaliser sur un système d’exploitation de type
FreeBSD.
Pour commencer, on télécharge l’iso https://www.pfsense.org/download/
Les prérequis matériels
Minimale
CPU 400 Mhz (100Mhz)
Mémoire RAM 512M (256 min).
Disque Dur 2Go
Cartes réseaux 2 ou plus suivant le réseau
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
16 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Pour créer notre machine virtuelle, il est nécessaire de suivre les étapes suivantes :
1. Cliquez sur « Nouveau » afin de commencer l’installation de la nouvelle machine.
2. Cliquez sur « Suivant » puis rentrez le nom de votre ordinateur «Pf_Site1 » et sélectionnez le système
d’exploitation que vous voulez virtualiser « BSD - FreeBSD ».
3. Choisissez la mémoire que vous voulez disposez sur votre système virtualisé (256 Mo).
4. Sélectionnez « Créer un nouveau disque dur » en vérifiant que la case « Disque dur d’amorçage » est
cochée.
5. Afin de créer un disque dur ayant une taille variable (conseillé), il est nécessaire de sélectionner « Image
disque à taille dynamique » puis sélectionnez la taille de disque (2Go)
6. Cliquez ensuite deux fois sur « Terminer » afin de terminer la mise en place de la machine
virtuelle.
3.1 Activation d’une interface réseau
Pour l’utilisation de Pfsense, il est nécessaire d’activer deux interfaces réseaux, dont l’une pour le WAN et
l’autre pour LAN
3.2 Installation de Pfsense
Démarrez votre ordinateur à partir du cd de l’image iso de pfSense ;
A à l'écran de bienvenue, tapez 1 pour choisir le boot pfSense ou laissez démarrer avec l'option par
défaut.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
17 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Les VLAN ne seront pas utilisés, on tape « n».
Ensuite vient la configuration des interfaces réseaux. FreeBSD détecte le nombre de cartes réseaux, et
y attribue des noms (em0, em1 dans notre cas).
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
18 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Une fois les interfaces configurées, il est nécessaire d’installer PfSense en dur sur le disque dur, dans
le menu affiché on tape le choix « 99 ».
Nous choisissons la méthode la plus rapide et facile.
L'installation qui va suivre se fait en acceptant toutes les options par défaut. Il suffit d'accepter toutes
les demandes (formatage si nécessaire et création de la partition).
< Accepte these Settings > puis en validant.
À l'invite Sélectionner une tâche, choisissez rapide / Easy Install.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
19 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Cette installation va occuper la totalité du disque dur qui est pourquoi je sélectionne OK pour
continuer.
L'installation démarre .................. ..
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
20 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Redémarrez et retirez le CD / DVD dans le tiroir du lecteur.
Avant tout, il est conseillé de changer l'IP sur la machine de Pfsense pour plus de simplicité par la suite. Pour
cela, dans le menu de Pfsense, tapez lechoix 2 : « Set LAN IP adresse».
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
21 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Enfin au aura le menu suivant
Tableau recaptitatif des interfaces
Pfsense site 1 Pfsense site 2
Type de réseau WAN LAN WAN LAN
IP de interface 10.0.2.20 192.168.2.1 10.0.2.15 192.168.3.1
Masque de sous
réseau
255.255.255.0 255.255.255.0 255.255.255.0 255.255.255.0
3.3 Poursuite de l'installation via l’interface web
Ouvrez ensuite votre navigateur Web, puis entrez http://192.168.2.1, par défaut on met :
Identifiant : admin
Mot de passe : Pfsense
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
22 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Une fois identifiée, on serait appelé à faire la configuration initiale pour préparer notre serveur.
Finalement, on est enfin arrivé à l'interface web :
Allez ensuite dans System, puis General Setup.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
23 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Pour éviter que les mal intentionné branchés sur le LAN essayent de se connecter à l'interface
web. On doit effectuer quelques configurations :
System > Advanced
Activer le https pour que la connexion entre vous et le serveur soit chiffré.
Changer le numéro de port pour accéder à l'interface web. (supérieur à 49152)
Cochez la case pour supprimez la redirection automatique vers l'interface web lors de la
connexion à l'adresse ip du serveur sur le port 80.
Activer le SSH pour éviter de passer par la console.
Entrez un numéro de port supérieur à 49152 différent du port de l'interface web choisi ci-
dessus.
Cochez la case si vous désirez que le mot de passe de l'interface web soit demandé lors de
l'accès à la console.
Pour se connecter en SSH je me connecte avec l'ip du serveur sur le port 54321.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
24 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
4. Installation du package OpenVPN Client Export Utility
Il Le paquet correspondant se nomme « OpenVPN Client Export Utility ». Cet outil permet
l'export directement à partir de pfSense d'un client préconfiguré OpenVPN pour Windows
ou d'un fichier de configuration pour Mac OSX viscosité.
System >> packages >> Available Packages.
Sélectionner Open Vpn Client Export Utility et cliquer sur + pour l’installer.
Confirmer l’installation
A la fin, nous aurons un message
5. Création d'une autorité de certification – CA
Coté serveur OpenVPN
System > Cert Manager :
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
25 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Dans l’onglet « Cas » cliquer sur « + » pour créer une nouvelle autorité de certification
serveur VPN.
On remplit les champs comme suit :
Desciptive name : VPN Server2 CA
Method : Create an internal Certificate Authority
Key length : 2048 bits
Digest Algorithm : SHA256
Lifetime : 3650 (10 ans)
Country Code : Fes
State or Province : Fes
City : Fes
Organization : Fes
Email Address : bassiroulaouali@gmail.com
Common Name : VPNCA
Et on enregistre et Notre certificat CA est créé.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
26 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
6. Création d’utilisateur OpenVPN et certificat privé pour
l’utilisateur
System >> User Manager
Dans l’onglet Users cliquer sur + pour créer un nouvel utilisateur puis on renseigne les
champs :
Cliquer sur « click to create a user certificate » à partir du CA créé plus haut.
Notre certificat pour le client OpenVPN est créé.
Les certificats sont crées
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
27 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Si on remarque qu’on a régénéré les certificats CA et du coté clients
7. Configuration du serveur OpenVPN
OpenVPN est basé sur un mode de fonctionnement client-serveur. PfSense soit définit
comme un client ou un serveur ne changera strictement rien d'un point de vue réseau.
Cependant, si on souhaite connecter plusieurs sites distants sur un site principal, les sites
distants dont des "clients".
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
28 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Configurer OpenVPN côté "serveur"
On commence par la Configuration interface WAN OpenVPN
Il faut qu’on configure le firewall afin qu’il écoute sur le port WAN.
VPN >> OpenVPN puis Onglet Wizard
On définit le type d’authentification comptes locaux, mais sinon on peut faire du LDAP ou
du RADIUS.
On choisit le certificat CA qu’on a créé bien plus haut et qui va valider le certificat donné au
PC mobile.
On sélectionne le certificat du serveur, on fais suivant puis on sélectionne le certificat client
qu’on vient de créer.
Cliquer sur l'icône en forme de "+" pour ajouter un serveur VPN puis on remplit les champs
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
29 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
30 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
8. Configuration du Firewall
Il est maintenant nécessaire d'autoriser le flux VPN au niveau du firewall. Se rendre dans
Firewall >> Rules :
Sur l'interface sur laquelle le serveur OpenVPN est en écoute, créer une règle autorisant le
trafic à atteindre l'adresse IP et le port du serveur OpenVPN.
Dans notre exemple, nous travaillons sur l'interface WAN et l'adresse IP de notre pfSense sur
notre WAN est 10.0.2.15 ce qui donne :
• Interface : WAN
• Protocol : UDP
• Source : si l'adresse IP publique du site distant est connue et fixe, la renseigner en
choisissant le type "Single host or alias"
• Destination : type "Single host or alias", adresse à 10.0.2.15
Destination port range : port choisi lors de la configuration du serveur OpenVPN, soit 1194
Ce qui nous donne la règle suivante :
La configuration côté serveur est terminée. Il nous reste simplement à penser à autoriser ou
filtrer nos flux transitant à travers notre nouvelle interface OpenVPN.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
31 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
9. Configurer OpenVPN côté "client"
Sur le pfSense du site "client", se rendre dans VPN >> OpenVPN. Puis cliquer sur
l'onglet "Client".
Cliquer sur l'icône en forme de "+" pour ajouter un client VPN.
La configuration côté client est terminée. Il nous reste simplement à penser à autoriser ou
filtrer nos flux transitant à travers notre nouvelle interface OpenVPN.
10. Export du client openVPN et la configuration
PfSense permet, grâce au package installé « OpenVPN Client Export Utility », d'exporter
un exécutable pour l'installation et la configuration du client sous Windows.
VPN >> OpenVPN >> onglet 'Client Export'
On télécharge le client qui correspond à notre Système.
Cliquez sur 'Windows Installer' en face de 'nomade' puis suivez les instructions.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
32 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Après l’installation du OpenVPN GUI, nous ouvrons l’archive de configuration et y extraire
les fichiers à cet emplacement sur la machine avec laquelle nous allons établir la connexion
VPN.
Lorsque nous lançons OpenVPN GUI, nous obtenons une icône représentant un petit poste
de travail de couleur rouge qui nous indique que notre connexion au serveur VPN n’est pas
active.
Pour activer notre connexion VPN, nous faisons un clic droit sur l’icône de la barre de tâche
« OpenVPN ». Puis nous cliquons sur Connect.
Une fois que nous aurons cliqué sur Connect, nous obtenons la fenêtre suivante avec une
boîte de dialogue nous demandant d’enter le mot de passe.
Si la connexion VPN se déroule sans aucun problème, l’icône dans notre barre de tâche
change de couleur et devient verte. La connexion à notre serveur VPN est fonctionnelle.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
33 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Conclusion
Le développement de la technologie et de l’informatique en particulier, a beaucoup
facilité les transactions entre les entreprises. Les données peuvent être échangées via l’internet
en toute sécurité avec l’implémentions de protocole de sécurité. Cette implémentation et
l’administration réseau nécessite souvent la maîtrise des différentes technologies et les faire
travailler ensembles. Le travail se complique encore si l’administration et la configuration de
tout cela se fait manuellement.
Heureusement, des outils puissants existent, qui intègre plusieurs solutions de sécurité comme
l’exemple de PfSense.
Cet Outil est en effet un gestionnaire central d’outils réseaux. On peut ainsi faire
travailler ensemble un pare feu, un routeur, un serveur VPN, un Proxy, un outil de détection
d’attaque réseau etc… Le tout sur un seul et même Serveur. On peut par exemple créer très
facilement des « Backups » pour ne pas se retrouver avec un seul point névralgique dans notre
réseau… Bref nous pensons que PfSense est voue à exister et se développer.
Dans notre travail nous avons mis en place et testé une solution OpenVNP au niveau de
chaque site tout en activant le routage entre les deux sites pour que les sites puissent échanger
les données en toute sécurité via le tunnel OpenVPN.
Mise en place d’un OpenVPN sous PfSense
5ème Année Réseaux, Sécurité et Télécoms, Sup’Managemnet Fès
34 Laoualy Ibrahim Bassirou : bassiroulaouali@gmail.com
Bibliographie
Etude des principaux services fournis par PfSense, Rédacteurs :
Anthony COSTANZO, Damien GRILLAT, Lylian LEFRANCOIS
VPN OpenVPN site à site sur pfSense, Auteur : M. Grégory
Bernard - info@osnet.eu
Webographie
https://www.freebsd.org/fr/
https://www.virtualbox.org/
https://doc.ubuntu-fr.org/virtualbox
https://www.pfsense.org/
http://www.senat.fr/rap/r11-681/r11-681_mono.html
http://www.commentcamarche.net/contents/47-piratage-et-
attaques-informatiques
https://www.osnet.eu/fr/content/liste-configuration-pfsense