2013

OpenVPN - TLS

Un Travail de ISMAIL RACHDAOUI et MOUNIA EL ANBAL
Encadré Par: Mr.ANAS ABOU ELKALAM

Génie Réseaux et Télécommunications ENSA Marrakech
Objectif
Mettre en place une architecture OpenVPN combiné avec SSL/TLS.

Architecture Cible

Tunnel VPN/TLS

Client Windows

VPN Server

Cinématique de configuration
1.
2.
3.
4.
5.
6.
7.

Création du CA ( CertificatAuthority).
Création d’un certificat pour le serveur.
Création d’un certificat pour le client.
Création des paramètres DH ( deffi-hellman).
Créations des fichiers de configuration pour le client et le serveur.
Lancement du Test.
Capture des paquets sous Wiresahrk.

A la configuration !
‘Avant de commencer il est préferable de copier les fichier du
repertoire/usr/share/doc/openvpn/examples/easy
/usr/share/doc/openvpn/examples/easy-rsa/2.0/ à /home/user/openvpn/’
1. Création du CA ( CertificatAuthority) :
n
Le client et le serveur doivent avoir le CA, comme nous faisons le test en local donc ca
sera une certificat auto-signée, OpenVPN nous offre un script pré
-signée,
pré-developer pour
faciliter la création des certificats, mais avant tous on doit initialiser les variabl du
variables
fichiers vars.

1

Module : Sécurité - GRT5 2013
Maintenent on va executer les des commandes suiavantes pour suprimer les anciens
valeurs du fichiersvars.
. ./vars
./clean-all
On passe maintenent à la création du CA à l’aide du script build-ca.

On se met dans le répertoirekeys et on remarquera le création de deux fichiers ca.keyet
ca.crt.

Ps : Ca.crt doit obligatoirement être présent chez le client et le serveur.

2

Module : Sécurité - GRT5 2013
2. Création d’un certificat pour le serveur :
On va utiliser le script build-key-server pour créer et signer le certificat du serveur.

On se met encore une fois dans le répertoire keys pour s’assurer de la création du
certificat.





openVPN.crt : contient la clé publique.
openVPN.key : la clé privée du serveur.
openVPN.csr : le fichier d’extension Signature Request utilisé généralement par les
CA pour créer un certificat SSL.

3

Module : Sécurité - GRT5 2013
3. Création d’un certificat pour le client :
De même on va créer et signer un certificat pour le client, on doit créer autant de
certificat que de client qu’on a.

On va transférer à notre client client1.key (clé privée) et client1.crt (clé public).

4

Module : Sécurité - GRT5 2013
à ce stade là on a créer :

Certificat

Clé privé

ca.crt

ca.key

openVPN.crt

openVPN.key

client1.crt

client1.key

Traitement
Ca.crt doit être transférer au
client et au serveur.
Doivent être transfère au serveur
seulement.
Doivent être transfère au client
seulement.

4. Création des paramètres DH (Deffi-Hellman):
Création des paramètres DH pour l’échange des clés entre le client et le serveur.

Les paramètres sont créés sous le nom dh1024.pem

dh1024.pem doit être présent uniquement dans le serveur.

5

Module : Sécurité - GRT5 2013
5. Création des fichiers de configuration pour le client et le serveur :
 Fichier de configuration côté serveur

 Fichier de configuration côté client

Ps : Redirect-gateway sert à encapsuler tout le traffic dans le tunnel VPN.

6

Module : Sécurité - GRT5 2013
6. Lancement des Test :
 Sous le serveur :

La capture montre très bien le bien déroulement du lancement.

 Sous le client :

7

Module : Sécurité - GRT5 2013
Voilà ! Notre client arrive à se connecter au serveur VPN et établir le tunnel SSL.
7. Capture des paquets sous Wiresahrk :
Pour s’assurer du bon fonctionnement du Tunnel on va essayer d’accéder à une page
Web hébergé sur le serveur et on sniffe le trafic qui circule pour l’analyser et voir l’effet
du Tunnel.

On remarque que tous le trafic passe pas le tunnel et impossible de voir le contenue des
paquets transmissent.

8

Module : Sécurité - GRT5 2013

Authentification TLS/SSL sous OpenVPN

  • 1.
    2013 OpenVPN - TLS UnTravail de ISMAIL RACHDAOUI et MOUNIA EL ANBAL Encadré Par: Mr.ANAS ABOU ELKALAM Génie Réseaux et Télécommunications ENSA Marrakech
  • 2.
    Objectif Mettre en placeune architecture OpenVPN combiné avec SSL/TLS. Architecture Cible Tunnel VPN/TLS Client Windows VPN Server Cinématique de configuration 1. 2. 3. 4. 5. 6. 7. Création du CA ( CertificatAuthority). Création d’un certificat pour le serveur. Création d’un certificat pour le client. Création des paramètres DH ( deffi-hellman). Créations des fichiers de configuration pour le client et le serveur. Lancement du Test. Capture des paquets sous Wiresahrk. A la configuration ! ‘Avant de commencer il est préferable de copier les fichier du repertoire/usr/share/doc/openvpn/examples/easy /usr/share/doc/openvpn/examples/easy-rsa/2.0/ à /home/user/openvpn/’ 1. Création du CA ( CertificatAuthority) : n Le client et le serveur doivent avoir le CA, comme nous faisons le test en local donc ca sera une certificat auto-signée, OpenVPN nous offre un script pré -signée, pré-developer pour faciliter la création des certificats, mais avant tous on doit initialiser les variabl du variables fichiers vars. 1 Module : Sécurité - GRT5 2013
  • 3.
    Maintenent on vaexecuter les des commandes suiavantes pour suprimer les anciens valeurs du fichiersvars. . ./vars ./clean-all On passe maintenent à la création du CA à l’aide du script build-ca. On se met dans le répertoirekeys et on remarquera le création de deux fichiers ca.keyet ca.crt. Ps : Ca.crt doit obligatoirement être présent chez le client et le serveur. 2 Module : Sécurité - GRT5 2013
  • 4.
    2. Création d’uncertificat pour le serveur : On va utiliser le script build-key-server pour créer et signer le certificat du serveur. On se met encore une fois dans le répertoire keys pour s’assurer de la création du certificat.    openVPN.crt : contient la clé publique. openVPN.key : la clé privée du serveur. openVPN.csr : le fichier d’extension Signature Request utilisé généralement par les CA pour créer un certificat SSL. 3 Module : Sécurité - GRT5 2013
  • 5.
    3. Création d’uncertificat pour le client : De même on va créer et signer un certificat pour le client, on doit créer autant de certificat que de client qu’on a. On va transférer à notre client client1.key (clé privée) et client1.crt (clé public). 4 Module : Sécurité - GRT5 2013
  • 6.
    à ce stadelà on a créer : Certificat Clé privé ca.crt ca.key openVPN.crt openVPN.key client1.crt client1.key Traitement Ca.crt doit être transférer au client et au serveur. Doivent être transfère au serveur seulement. Doivent être transfère au client seulement. 4. Création des paramètres DH (Deffi-Hellman): Création des paramètres DH pour l’échange des clés entre le client et le serveur. Les paramètres sont créés sous le nom dh1024.pem dh1024.pem doit être présent uniquement dans le serveur. 5 Module : Sécurité - GRT5 2013
  • 7.
    5. Création desfichiers de configuration pour le client et le serveur :  Fichier de configuration côté serveur  Fichier de configuration côté client Ps : Redirect-gateway sert à encapsuler tout le traffic dans le tunnel VPN. 6 Module : Sécurité - GRT5 2013
  • 8.
    6. Lancement desTest :  Sous le serveur : La capture montre très bien le bien déroulement du lancement.  Sous le client : 7 Module : Sécurité - GRT5 2013
  • 9.
    Voilà ! Notreclient arrive à se connecter au serveur VPN et établir le tunnel SSL. 7. Capture des paquets sous Wiresahrk : Pour s’assurer du bon fonctionnement du Tunnel on va essayer d’accéder à une page Web hébergé sur le serveur et on sniffe le trafic qui circule pour l’analyser et voir l’effet du Tunnel. On remarque que tous le trafic passe pas le tunnel et impossible de voir le contenue des paquets transmissent. 8 Module : Sécurité - GRT5 2013