Installer et configurer OpenVPN Server sous Linux | Linux.com – Bien choisir son serveur d impression
Le VPN est très souvent essentiel au travail au sein d’une entreprise. Le travail à domicile étant un attrait si populaire dans de nombreux secteurs, il est toujours nécessaire de pouvoir accéder aux dossiers et au matériel de la société existant dans le réseau local. En dehors de ce réseau local, l’aide d’un VPN est l’un des meilleurs moyens d’obtenir cet accès. De nombreuses solutions VPN sont coûteuses et / ou difficiles à configurer et à gérer. Heureusement, pour la communauté open source / Linux, il existe une solution assez simple à installer, configurer et gérer. OpenVPN est cette solution et vous apprendrez ici à configurer le serveur de ce système.
Ce qui est necessaire
Je vais installer OpenVPN sur Ubuntu 11.04, en utilisant une infrastructure à clé publique avec une interface Ethernet pontée. Cette configuration permet d’accéder rapidement à OpenVPN tout en maintenant un minimum de sécurité.
La première étape (en dehors de l'installation du système d'exploitation) consiste à installer les packages nécessaires. Depuis que je vais installer sur Ubunutu, l'installation est assez simple:
-
Ouvrez une fenêtre de terminal.
-
Courir
sudo apt-get install openvpn
installer le paquet OpenVPN. -
Tapez le mot de passe sudo et appuyez sur Entrée.
-
Acceptez toutes les dépendances.
Il ne reste plus qu’un package à installer: le package permettant l’activation de la mise en réseau pontée. La mise en place du pont est simple, une fois que vous savez comment faire. Mais avant que l'interface puisse être configurée pour gérer la mise en réseau pontée, un seul package doit être installé. Faites ce qui suit:
-
Installez le paquet nécessaire avec la commande
sudo apt-get installer bridge-utils
. -
Editez le fichier / etc / network / interfaces pour refléter les modifications nécessaires (voir ci-dessous).
-
Redémarrer le réseau avec la commande
sudo /etc/init.d/networking restart
.
Ouvrez le fichier / etc / network / interfaces et indiquez les modifications nécessaires pour votre interface réseau, en vous basant sur l'exemple ci-dessous:
auto lo
iface lo inet loopback
auto br0
iface br0 inet statique
adresse 192.168.100.10
réseau 192.168.100.0
masque de réseau 255.255.255.0
diffusion 192.168.100.255
passerelle 192.168.100.1
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
Assurez-vous de configurer la section de pont (illustrée ci-dessus) pour qu'elle corresponde aux informations correctes pour votre réseau. Enregistrez ce fichier et redémarrez la mise en réseau. Il est maintenant temps de commencer à configurer le serveur VPN.
Création de certificats
Le serveur OpenVPN s'appuiera sur l'autorité de certification pour la sécurité. Ces certificats doivent d'abord être créés puis placés dans les répertoires appropriés. Pour le faire, suivez ces étapes:
-
Créer un nouveau répertoire avec la commande
sudo mkdir / etc / openvpn / easy-rsa /
. -
Copiez les fichiers nécessaires avec la commande
sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0/* / etc / openvpn / easy-rsa /
. -
Changez la propriété du répertoire nouvellement copié avec la commande
sudo chown -R $ USER / etc / openvpn / easy-rsa /
. -
Éditer le fichier
/ etc / openvpn / easy-rsa / vars
et changez les variables listées ci-dessous.
Les variables à éditer sont:
export KEY_COUNTRY = "US"
export KEY_PROVINCE = "KY"
export KEY_CITY = "Louisville"
export KEY_ORG = "Monkeypantz"
export KEY_EMAIL = "
Cette adresse e-mail est protégée du spam. Vous devez activer le JavaScript pour la visualiser.
"
Une fois le fichier modifié et enregistré, nous allons exécuter plusieurs commandes pour créer les certificats:
cd / etc / openvpn / easy-rsa /
source vars
./Nettoie tout
./build-dh
./pkitool --initca
./pkitool - serveur serveur
clés cd
sudo openvpn --genkey --secret ta.key
sudo cp server.crt server.key ca.crt dh1024.pem ta.key / etc / openvpn /
Certificats clients
Les clients devront posséder des certificats pour s'authentifier sur le serveur. Pour créer ces certificats, procédez comme suit:
cd / etc / openvpn / easy-rsa /
source vars
./pkitool nom d'hôte
Ici, le nom d'hôte est le nom d'hôte réel de la machine qui sera connectée au VPN.
À présent, des certificats devront être créés pour chaque hôte devant se connecter au VPN. Une fois que les certificats ont été créés, ils devront être copiés sur les clients respectifs. Les fichiers à copier sont:
-
/etc/openvpn/ca.crt
-
/etc/openvpn/ta.key
-
/etc/openvpn/easy-rsa/keys/hostname.crt (où hostname est le nom d’hôte du client).
-
/etc/openvpn/easy-rsa/keys/hostname.key (où hostname est le nom d’hôte du client).
Copiez ce qui précède à l'aide d'une méthode sécurisée, en vous assurant qu'ils sont copiés dans le répertoire / etc / openvpn.
Configuration du serveur VPN
Il est temps de configurer le serveur VPN actuel. La première étape consiste à copier un exemple de fichier de configuration avec lequel travailler. Ceci est fait avec la commande sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz / etc / openvpn /
. Maintenant, décompressez le server.conf.gz
fichier avec la commande sudo gzip -d /etc/openvpn/server.conf.gz
. Les options de configuration à modifier sont dans ce fichier. Ouvrir server.conf
dans un éditeur de texte (avec des privilèges d'administrateur) et modifiez les options suivantes:
local 192.168.100.10
dev tap0
up "/etc/openvpn/up.sh br0"
bas "/etc/openvpn/down.sh br0"
pont-serveur 192.168.100.101 255.255.255.0 192.168.100.105 192.168.100.200
push "route 192.168.100.1 255.255.255.0" "
push "dhcp-option DNS 192.168.100.201"
push "dhcp-option DOMAIN exemple.com"
tls-auth ta.key 0 # Ce fichier est secret
utilisateur personne
groupe de groupe
Si vous n'êtes pas sûr des options, cliquez ici:
-
L'adresse locale est l'adresse IP de l'interface pontée.
-
Le pont serveur est nécessaire dans le cas d'une interface pontée.
-
Le serveur transmettra la plage d'adresses IP 192.168.100.105-200 aux clients.
-
Les directives push sont des options envoyées aux clients.
Faire monter et descendre le VPN
Avant que le VPN ne soit démarré (ou redémarré), deux scripts seront nécessaires pour ajouter l’interface tap au pont (si les réseaux pontés ne sont pas utilisés, ces scripts ne sont pas nécessaires). Ces scripts seront ensuite utilisés par l’exécutable pour OpenVPN. Les scripts sont /etc/openvpn/up.sh
et /etc/openvpn/down.sh
.
#! / bin / sh
#Ceci est /etc/openvpn/up.sh
BR = 1 $
DEV = 2 $
MTU = 3 $
/ sbin / ifconfig $ DEV mtu $ MTU promisc up
/ usr / sbin / brctl addif $ BR $ DEV
#! / bin / sh
# C'est / etc / openvpn / down.sh
BR = 1 $
DEV = 2 $
/ usr / sbin / brctl delif $ BR $ DEV
/ sbin / ifconfig $ DEV down
Les deux scripts devront être exécutables, ce qui se fait avec le chmod
commander:
sudo chmod 755 /etc/openvpn/down.sh
sudo chmod 755 /etc/openvpn/up.sh
Enfin, redémarrez OpenVPN avec la commande sudo /etc/init.d/openvpn restart
. Le serveur VPN est maintenant prêt à accepter les connexions des clients (le sujet de mon prochain tutoriel).
Détails, détails
Un élément essentiel pour un VPN est que la machine qui héberge ce dernier doit être accessible au monde extérieur – en supposant que les utilisateurs viennent du monde extérieur. Pour ce faire, vous pouvez attribuer au serveur une adresse IP externe ou acheminer le trafic de l’extérieur avec des règles NAT (ce qui peut être accompli de différentes manières). Il sera également essentiel d’utiliser les meilleures pratiques de sécurité (en particulier si le serveur dispose d’une adresse IP externe) afin d’empêcher tout trafic ou utilisateur indésirable d’entrer dans le serveur.
Commentaires
Laisser un commentaire