Créer un serveur OpenVPN sous Debian 7/8

1/52/53/54/55/5 (12 votes, moyenne: 3,58 sur 5)
Loading...
C

Attention, cet article a plus d'une année d'ancienneté. Il est possible que les informations présentées ne soient plus à jour, spécialement dans le cadre d'un article technique.


Bonjour à tous,

Aujourd’hui, on va voir comment créer un serveur OpenVPN simplement sous Debian 7 ou Debian 8 (distributions testés, mais ça marche surement avec Ubuntu et dérivés).

On va utiliser un petit script sympathique développer par Nyr, ce script va bien nous simplifier la vie.

 

Installation du serveur OpenVPN :

Connectez-vous sur votre serveur en root et lancez la commande suivante :

wget git.io/vpn --no-check-certificate -O openvpn-install.sh; bash openvpn-install.sh

Plusieurs questions vont être posées par le script.

Dans un premier temps, il va rechercher l’adresse ip publique de votre serveur.

Le choix par défaut doit être le bon :

First I need to know the IPv4 address of the network interface you want OpenVPN listening to.
IP address: XXX.XXX.XXX.XXX

Ensuite, il va vous demander de renseigner le port de votre serveur OpenVPN.

Vous pouvez laisser le port par défaut :

What port do you want for OpenVPN?
Port: 1194

Il va vous demander si OpenVPN doit aussi écouter sur le port 53 (DNS).

Choisissez y, sauf si vous hébergez un serveur DNS sur cette machine.

Do you want OpenVPN to be available at port 53 too?
This can be useful to connect under restrictive networks
Listen at port 53 [y/n]: y

Il va vous demander si vous souhaitez activer l’internal networking entre les clients VPN, c’est-à-dire le contact entre les différents clients du VPN.

Cette option est désactivée par défaut.

Do you want to enable internal networking for the VPN?
This can allow VPN clients to communicate between them
Allow internal networking [y/n]: n

Ensuite, il va vous demander les serveurs DNS que les clients devront utiliser :

What DNS do you want to use with the VPN?
1) Current system resolvers
2) OpenDNS
3) Level 3
4) NTT
5) Hurricane Electric
6) Yandex
DNS [1-6]: 1

Pour finir, il vous demandera le nom du premier client, renseignez votre prénom par exemple :

Finally, tell me your name for the client cert
Please, use one word only, no special characters
Client name: nicolas

Appuyez sur Enter et laissez l’installation suivre son cours :

Okay, that was all I needed. We are ready to setup your OpenVPN server now
Press any key to continue...

Le certificat client sous format .ovpn sera disponible dans le dossier d’exécution du script.

Le dossier où vous vous trouviez lorsque vous avez lancé la première commande donc.

A propos de l'auteur

Nicolas Simond

Ingénieur Systèmes et Réseaux et guitariste hard rock et metal à mes heures perdues.
Je suis le créateur et l'unique rédacteur d'Abyss Project, c'est ici que je note la plupart de mes procédures et quelques divagations.

Si vous l'article vous a aidé, pensez à me payer un café :)

Subscribe
Notify of
guest

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

20 Commentaires
Plus récents
Plus anciens Populaires
Inline Feedbacks
View all comments
anonymous
anonymous
7 années plus tôt

Merci pour ton super script super simple, moi qui galérai depuis des heures sur openvpn, avec ton script 5 minutes et c’est régler.

alex
alex
7 années plus tôt

bon j’ai fait l’install sur le 2ème vps mes j’ai un message fail quand je fait start et je trouve pas ce que c’est 🙁

service openvpn start
[….] Starting virtual private network daemon: serverSIOCSIFADDR: No such device
: ERROR while getting interface flags: No such device
SIOCSIFNETMASK: No such device
SIOCSIFMTU: No such device
SIOCSIFBRDADDR: No such device
: ERROR while getting interface flags: No such device
failed!

alex
alex
Reply to  Nicolas Simond
7 années plus tôt

un server us mes la c’est bon en faite c’était TUN qui bug 🙂 j’ai downgrade et la c’est ok encore merci pour ton super boulot

alex
alex
7 années plus tôt

Re,

tien j’ai essayer de l’installer sur un autres vps debian 7 et j’ai ce message 🙁
GnuTLS: A TLS fatal alert has been received.
Unable to establish SSL connection.

?

merci

Steeven
Steeven
7 années plus tôt

Bonjour,
J’ai suivi votre tuto et j’ai modifier le port 1194 part le port 443 j’ai aussi mis dans le server.conf proto tcp et dans le client proto tcp-client.
Mon client ce connecte bien a mon serveur VPN sauf que je n’arrive pas à avoir accès à mon réseau local et à internet ?
Savez-vous d’ou cela peut venir ?
Cordialement.

Steeven
Steeven
Reply to  Nicolas Simond
7 années plus tôt

Bonjour,
Le routage et le forwarding est bien activé et le kernel c’est le 3.16.0.4 j’ai pas trouver d’information qui me dit que ce n’est pas supporté.

Steeven
Steeven
Reply to  Nicolas Simond
7 années plus tôt

Suite à un iptables -L j’ai ceci

Chain INPUT
Target prot opt source destination

Chain FORWARD
Target prot opt source destination
ACCEPT all — anywhere anywhere
ACCEPT all — anywhere anywhere
ACCEPT all — anywhere anywhere

Chain OUTPUT
Target prot opt source destination
ACCEPT all — anywhere anywhere

Merci de votre aide.
Cordialement,

Nelky
Nelky
8 années plus tôt

Merci. Super pour installer un VPN simplement, il manquerais juste peut-être une option qui demande s’il on veut se connecter avec de ID/MDP.

Nelky
Nelky
Reply to  Nicolas Simond
8 années plus tôt

Oui j’ai vu que l’on pouvais.
Une dernière question comment pouvons-nous supprimer l’accès à un client ? Impossible même avec la commande « ./revoke-full client » j’ai un message d’erreur faut il être ailleurs que dans « /usr/share/easy-rsa » ?
Merci pour tout.

setsuneh
setsuneh
9 années plus tôt

Merci pour le tuto ! En mettant dans adresse de configuration automatique du proxy, l’adresse du VPN sous WPS, c’est normal que l’on voit encore son ip de base? 🙂

alex
alex
Reply to  Nicolas Simond
7 années plus tôt

salut comment crée plusieur client ? les commande normale marche pas ./build-key blabla

alex
alex
Reply to  Nicolas Simond
7 années plus tôt

merci c’est nickel super comme scripte

setsuneh
setsuneh
Reply to  setsuneh
9 années plus tôt

Je l’ai vu après coup. Merci la merveilleuse commande openvpn –config x)