Chapitre 11. Déploiement et guide des opérations OpenVPN

$Revision: 1.9 $

$Date: 2007/07/06 20:49:09 $

Table des matières

11.1. Installation
11.2. Configuration
11.2.1. Génération des paramètres Diffie-Hellman
11.2.2. Génération de la requète de signature de certificat client
11.2.3. Signature de la demande de signature
11.2.4. Fichier de configuration serveur
11.2.5. Fichier de configuration client
11.2.6. Test de la configuration
11.2.7. Autres paramètres
11.2.8. Démarrage au boot
11.3. Filtrage

Résumé

Pour créér un VPN quelques années en arrière, il y avait deux possibilités : IPsec et le reste du monde. Le reste du monde était assez hétéroclite : vendeurs interlopes de boitiers SSL et autres produits fermés, produits OpenSource aux fondements cryptographiques douteux, empilements protocolaires aussi inéficaces que prétentieux (A over B over C over... head). IPsec de son coté cumulait presque toutes les tares possibles : interopérabilité hasardeuse, complexité des protocoles mis en oeuvre (notamment pour l'échange de clefs), imbrication importante dans le kernel, fonctionnement hors des principes habituels (bypass des tables de routage, pas d'interface associée au traffic encapsulé selon les implémentations, ...).

Avec ce panorama, on comprend mieux l'interêt porté à OpenVPN lors de son arrivée en 2001-2002. Parmi ses qualités on retiendra notamment :

  • simplicité : OpenVPN est un simple binaire, identique coté client et serveur. Un fichier de configuration de moins de 10 lignes suffit en général pour déployer un VPN.

  • sécurité : OpenVPN n'invente pas sa cryptographie, et s'appuie sur OpenSSL.

  • portabilité : OpenVPN tourne sur la quasi totalité des OS du marche (Linux, Windows 2000/XP/Vista 32 et 64bits, {Open,FreeBSD,Net,DragonFly}BSD, MacOS X, Solaris, PocketPC...).

  • intégration : OpenVPN s'intègre naturellement dans la gestion du réseau sur les machines. Une interface est créée pour chaque tunnel chiffré et les règles de la table routage s'appliquent. OpenVPN ne crée pas « d'exception » au fonctionnement habituel du réseau.

  • userspace : OpenVPN fonctionne complètement en espace utilisateur.

Ce chapitre détaillera les étapes à suivre pour déployer OpenVPN entre des clients nomades et une passerelle de sécurité.

11.1. Installation

Le paquetage OpenVPN est très léger. Décompacté il pèse à peine 1 Mo dûs presque exclusivement à la documentation et aux fichiers example.

root@ubuntu:~# apt-get install openvpn
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Reading state information... Fait   
Les NOUVEAUX paquets suivants seront installés :
  openvpn
0 mis à jour, 1 nouvellement installés, 0 à enlever et 2 non mis à jour.
Il est nécessaire de prendre 336ko dans les archives.
Après dépaquetage, 1012ko d'espace disque supplémentaires seront utilisés.
Réception de : 1 http://fr.archive.ubuntu.com feisty/universe openvpn 2.0.9-5...
336ko réceptionnés en 14s (23,4ko/s)                                                                                                   
Préconfiguration des paquets...
Sélection du paquet openvpn précédemment désélectionné.
(Lecture de la base de données... 18598 fichiers et répertoires déjà installés.)
Dépaquetage de openvpn (à partir de .../openvpn_2.0.9-5_i386.deb) ...
Paramétrage de openvpn (2.0.9-5) ...
Starting virtual private network daemon:.

root@ubuntu:~#