
Le VPN (Virtual Private Network) a pour but de vous permettre d’acceder à votre réseau personnel ou d’entreprise, depuis un point délocalisé et ce de façon sécurisée. Ainsi, grâce au VPN vous pouvez accéder à votre intranet d’entreprise depuis chez vous ou inversement, pour petits malins, d’accéder à internet depuis votre entreprise comme si vous étiez chez vous (permet de contourner des proxy trop sécurisés qui ne vous permettrai même pas d’acceder à un simple FTP).
Installation de OpenVPN et OpenSSL
apt-get install openvpn openssl
Nous allons utiliser les exemples de configuration livrés dans /usr/share/doc/openvpn/examples/
cd /usr/share/doc/openvpn/examples
Nous copions ./sample-config-files/server.conf.gz et ./easy-rsa/2.0/ dans /etc/openvpn
cp ./sample-config-files/server.conf.gz /etc/openvpn cp -r ./easy-rsa/2.0 /etc/openvpn
On renomme le dossier 2.0 en easy-rsa
cd /etc/openvpn mv 2.0 easy-rsa
On dezippe le fichier de configuration exemple :
gzip -d server.conf.gz
Voilà pour l’installation
Création des Certificats
Ici nous allons configurer les informations de certificat :
cd /etc/openvpn/easy-rsa vi vars
Modifiez ces valeurs pour y mettre vos informations de certificat :
export KEY_COUNTRY=”US” export KEY_PROVINCE=”CA” export KEY_CITY=”SanFrancisco” export KEY_ORG=”Fort-Funston” export KEY_EMAIL=”me@myhost.mydomain”
Puis sauvegardez (escape puis :w et :q pour quitter)
On génère ensuite le Certificat Maitre (CA) et les clés qui vont avec
. ./vars ./clean-all ./build-ca
On génère ensuite le certificat et les clés du serveur (en laissont les valeurs par défaut)
./build-key-server server
On génère ensuite le certificat et les clés pour autant de client (en laissont les valeurs par défaut)
./build-key-server server ./build-key clientVPN1 ./build-key clientVPN2 ... autant de fois que vous souhaitez créer de clients
On Génère les paramètres de clés Diffie Hellman
./build-dh
Configuration du serveur :
On édite le fichier /etc/openvpn/server.conf
vi /etc/openvpn/server.conf
Ces paramètres fonctionnent bien (# = comment):
port 1194 # par defaut modifiable selon besoins proto udp # tcp ou udp, selon vos besoins dev tap #Certificates ca ca.crt cert server.crt key server.key dh dh1024.pem #Server settings server 10.8.0.0 255.255.255.0 # Default VPN ip range. push “redirect-gateway” # DNS push “dhcp-option DNS 208.67.222.222″ push “dhcp-option DNS 208.67.220.220″ # Allow clients to see eachother client-to-client # Service executé par (limite les droits du service) user nobody group nogroup
Ensuite on copie les Certificats et clés générés dans /etc/openvpn
cd /etc/openvpn/easy-rsa/keys cp ca.crt server.crt server.key dh1024.pem /etc/openvpn
Les clients VPN auront besoin de ces fichiers, récupérez les ![]()
clientVPN1.crt
clientVPN1.key
ca.crt
Puis redémarrez le service :
/etc/init.d/openvpn restart
Configurer les règles de routage
Editez le fichier /etc/sysctl.conf et dé commentez la ligne : net.ipv4.ip_forward=1
vi /etc/sysctl.conf
Sauvegardez et quittez (escape, :w puis :q)
Pour éviter de rebooter utilisez cette commande :
sysctl -w net.ipv4.ip_forward=1
Pour confirmer la prise en compte :
sysctl net.ipv4.ip_forward
Ajouter kes regles suivantes dans /etc/rc.local avant exit 0
iptables -P FORWARD ACCEPT iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Un petit /etc/init.d/rc.local start pour activer les règles et c’est parti !!!!
Pour les clients je vous conseille
Windows : OpenVpn
Mac : Viscosity (shareware à 9 euros mais il est très bien foutu : eval 30 jours)


Bonjour
J’ai installe openvpn sur mon serveur ubuntu , mais mon installation c’est déroulé sans que je n’ai a éditer le fichier de conf .
Après l’installation il m’a renvoyé vers une interface web pour la configuration.
Mon soucis est le suivant.
Comment créer les clients VPN?et générer les clefs??
D’avance merci de vos réponses.
Pour la création des clés c’est expliqué dans l’article dans Création des certificats), il faut les générer en mode console avec la commande « ./build-key clientVPN1″
Hello Seb !
Super tuto ! Clair, précis et complet à la fois. Tout y est pour celui qui a déjà galéré comme moi pour mettre en place son premier serveur OpenVPN, c’est du pain béni. Bravo pour ton esprit de synthèse.
A+
tu es le meilleur !!
je n’arrivais pas à ce fichu redirect all traffic, et à la fin de ce post (soit 4 mn d’effort intensif en ligne de commande) j’arrive enfin à rediriger le traffic client. (il y avait eu plusieurs tentatives infructueuses avant aujourd’hui !)
bref, merci beaucoup
(HS: je me posais justement la question de l’édition des ID3tag en ligne de commande sous ubuntu server il y a 2 jours de cela. Quelle ne fut pas ma surprise en lisant ton dernier post
)
ciao ciao