Le contenu de cette page est potentiellement obsolète.
Le wiki sert d'archive et certaines pages ne représentent plus la vision actuelle du Parti Pirate. Pour connaître les positions des Pirates, aujourd'hui, vous pouvez consulter :
Et pour toute autre question, vous pouvez nous contacter et discuter avec nous :
contact@partipirate.org | @PartiPirate sur Twitter | Parti Pirate sur Facebook | Discourse (espace libre d'échanges et discussions) | Discord (espace d'échanges instantanés textuel et vocal)
Différences entre les versions de « HowToVPN »
m (→Installer l'accès : mode administrateur pour vista, 7,etc) |
|||
(51 versions intermédiaires par 3 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
= Présentation du service = | = Présentation du service = | ||
== Les Réseaux Privés Virtuels en général == | |||
== Les Réseaux Privés Virtuels == | |||
Dans les réseaux informatiques et les télécommunications, le '''réseau privé virtue'''l (Virtual Private Network en anglais, abrégé en VPN) est vu comme une '''extension des réseaux locaux''' et préserve la sécurité logique que l'on peut avoir à l'intérieur d'un réseau local. Il correspond en fait à une interconnexion de réseaux locaux via une technique de « tunnel ». On parle de VPN lorsqu'un organisme interconnecte ses sites via une infrastructure partagée avec d'autres organismes. | Dans les réseaux informatiques et les télécommunications, le '''réseau privé virtue'''l (Virtual Private Network en anglais, abrégé en VPN) est vu comme une '''extension des réseaux locaux''' et préserve la sécurité logique que l'on peut avoir à l'intérieur d'un réseau local. Il correspond en fait à une interconnexion de réseaux locaux via une technique de « tunnel ». On parle de VPN lorsqu'un organisme interconnecte ses sites via une infrastructure partagée avec d'autres organismes. | ||
Ligne 19 : | Ligne 17 : | ||
Les '''serveurs du Parti Pirate''' sont reliés entre eux dans un '''réseau interne'''. L'accès VPN vise donc à '''intégrer des utilisateurs nomades''' (dit ''roadwarrior'') dans ce réseau interne. Cette intégration permet de fournir un '''premier niveau de gestion des accès''' au sein du réseau. Ensuite chaque service spécifie les privilèges de l'utilisateur. | Les '''serveurs du Parti Pirate''' sont reliés entre eux dans un '''réseau interne'''. L'accès VPN vise donc à '''intégrer des utilisateurs nomades''' (dit ''roadwarrior'') dans ce réseau interne. Cette intégration permet de fournir un '''premier niveau de gestion des accès''' au sein du réseau. Ensuite chaque service spécifie les privilèges de l'utilisateur. | ||
Par exemple, l''''utilisateur | Par exemple, l''''utilisateur U''' a besoin d'un accès '''SSH''' (''[http://fr.wikipedia.org/wiki/Ssh Secure SHell]'') sur le serveur S1 et un accès '''FTP''' (''[http://fr.wikipedia.org/wiki/File_Transfer_Protocol File Transfer Protocol]'') sur le serveur S2. | ||
* Dans un premier temps, un '''certificat OpenVPN''' est créé pour | * Dans un premier temps, un '''certificat OpenVPN''' est créé pour U afin de lui fournir un '''accès au réseau interne'''. | ||
* Puis ''' | * Puis sur '''chacun des services des serveurs''' S1 et S2 est défini un '''accès spécifique''' qui sera fournit à U. | ||
* ''' | * '''U s’intègre''' dans le réseau interne par connexion au VPN puis '''utilise normalement les services''' de S1 et S2 | ||
En outre, des '''applications spécifiques''' n'ayant pas de raisons d'être publiquement accessibles (gestion des adhérents par exemple) ne sont disponibles qu'au '''travers de ce réseau'''. | En outre, des '''applications spécifiques''' n'ayant pas de raisons d'être publiquement accessibles (gestion des adhérents par exemple) ne sont disponibles qu'au '''travers de ce réseau'''. | ||
Ligne 37 : | Ligne 35 : | ||
En revanche, cela nécessite d''''installer un logiciel''' sur le système de l'utilisateur. | En revanche, cela nécessite d''''installer un logiciel''' sur le système de l'utilisateur. | ||
Le logiciel VPN utilisé pour le partipirate est OpenVPN. | |||
OpenVPN est un '''logiciel libre''' permettant de créer un réseau privé virtuel. Il fournit : | OpenVPN est un '''logiciel libre''' permettant de créer un réseau privé virtuel. Il fournit : | ||
Ligne 60 : | Ligne 58 : | ||
= Guides d'installation et d'utilisation = | = Guides d'installation et d'utilisation = | ||
* | Pré-requis | ||
*Lancer l'exécutable '''"openvpn-2.2.2-install"''' (ou version supérieure) | |||
*Copier les fichier avec l’extension '''.p12''' et '''.ovpn''' dans le dossier '''"\config"''' du répertoire d'installation d'OpenVPN (pour moi ''C:\Program Files (x86)\OpenVPN\config'') | * Avoir reçu les 2 fichiers clés (.ovpn et .p12) de la part des administrateurs du VPN (après que votre compte VPN ait été créé) ainsi que, si le fichier p12 a été crypté, le mot de passe de décryptage de ce fichier. | ||
* | |||
== Pour Windows (XP, 7, ...) == | |||
* | === Installer l'accès === | ||
* Télécharger le programme client OpenVPN pour votre PC: http://openvpn.net/index.php/open-source/downloads.html | |||
* Lancer l'exécutable '''"openvpn-2.2.2-install"''' (ou version supérieure) | |||
* Copier les fichier avec l’extension '''.p12''' et '''.ovpn''' dans le dossier '''"\config"''' du répertoire d'installation d'OpenVPN (pour moi ''C:\Program Files (x86)\OpenVPN\config'') | |||
* Lancer le programme OpenVPN GUI (Menu '''Démarrer-Programmes-OpenVPN''') '''en mode ADMINISTRATEUR''' surtout avec vista, 7, etc. Un icône dans la barre de taches (system-tray) et symbolisant le client OpenVPN a du apparaître. Faire un clic droit dessus et choisir '''Connecter'''. Si il y avait un mot de passe au fichier p12, il vous sera demandé à ce moment. Renseignez le. | |||
* A l'issu de cette connexion, votre accès au VPN doit être opérationnel (icône de OpenVPN en vert dans la barre des taches). | |||
* En cas de problème (si l’icône d'OpenVPN dans la barre des taches reste en rouge), fermer complètement OpenVPN (clic droit sur l’icône dans la barre des taches puis Quitter). Ensuite, retourner au menu, faites un clic droit sur le lanceur OpenVPN puis propriétés, onglet compatibilité et cochez "Exécuter ce programme en tant qu'administrateur" puis relancer OpenVPN. Si le pictogramme est toujours rouge, faire un clic droit puis '''Connecter'''. | |||
=== Tester l'accès === | |||
Pour confirmer que le VPN fonctionne, ouvrez une fenêtre DOS et taper la commande | |||
<pre> | |||
ping chaloupe.partipirate.ppo | |||
</pre> | |||
Si cela répond avec des lignes du genre | |||
<pre> | |||
Réponse de 172.16.20.108 : octets=32 temps=27 ms TTL=63 | |||
Réponse de 172.16.20.108 : octets=32 temps=29 ms TTL=63 | |||
Réponse de 172.16.20.108 : octets=32 temps=25 ms TTL=63 | |||
</pre> | |||
c'est que le VPN fonctionne. | |||
Vous avez accès au réseau interne du Parti Pirate. Vous pouvez demander vos accès aux serveurs spécifiques aux outils (FTP, phpMyAdmin, ...). | |||
== Pour MAC OS X == | |||
... doc à compléter... | |||
Essayer d'appliquer la procédure décrite pour Windows en téléchargeant à la première étape, le programme d'installation pour MAC OS plutôt que pour Windows. | |||
== Pour Linux == | == Pour Linux == | ||
=== | === Installer depuis la ligne de commande (debian, ubuntu, mint) === | ||
Installer le paquet OpenVPN | * Installer le paquet OpenVPN et OpenSSL | ||
$ sudo apt-get -y install openvpn openssl | |||
$ | * Renommer le fichier .ovpn en .conf (filename est à remplacer par le nom du fichier ovpn reçu) | ||
$ mv filename.ovpn filename.conf | |||
* Copier les fichiers .p12 et .conf dans /etc/openvpn/ et les rendre en accès restreint root | |||
$ sudo chown root:root /etc/openvpn/*.conf | $ sudo chown root:root /etc/openvpn/*.conf | ||
$ sudo chown root:root /etc/openvpn/*.p12 | $ sudo chown root:root /etc/openvpn/*.p12 | ||
Ligne 86 : | Ligne 109 : | ||
$ sudo chmod 0600 /etc/openvpn/*.p12 | $ sudo chmod 0600 /etc/openvpn/*.p12 | ||
* Lancer la connexion au VPN | |||
$ sudo service openvpn restart | |||
Si le fichier p12 a été crypté, le mot de passe sera demandée à chaque connexion. | |||
* Optionnellement, supprimer le mot de passe demandé à chaque connexion. | |||
L'opération consiste à recréer le fichier .p12 sans mot de passe. | |||
$ sudo cp /etc/openvpn/monfichierp12.p12 /etc/openvpn/monfichierp12.p12.bak | |||
$ sudo openssl pkcs12 -in /etc/openvpn/monfichierp12.p12 -nodes -out temp.pem | |||
Pour la commande suivante, lorsque qu'OpenSSL demande un mot de passe, taper "entrée" en ne saisissant rien. | Pour la commande suivante, lorsque qu'OpenSSL demande un mot de passe, taper "entrée" en ne saisissant rien. | ||
$ sudo openssl pkcs12 -export -in temp.pem -out /etc/openvpn/ | $ sudo openssl pkcs12 -export -in temp.pem -out /etc/openvpn/monfichierp12.p12 | ||
$ sudo rm -f temp.pem | $ sudo rm -f temp.pem | ||
* Ajouter la configuration de résolution DNS | |||
En effet, pour avoir les résolutions DNS du réseau privé VPN, il faut ajouter l'adresse du serveur DNS : 172.16.20.2 dans la configuration de résolution DNS. | |||
Pour cela, 2 méthodes: | |||
Soit vous êtes sur un poste avec serveur DNS (cas de PC serveurs): | |||
Vous devez modifier dans /etc/bind/named.conf.options | |||
forward first; | forward first; | ||
Ligne 111 : | Ligne 142 : | ||
dnssec-validation no; | dnssec-validation no; | ||
== | Soit vous êtes sur un poste utilisateur client sans serveur DNS (cas le plus fréquent): | ||
Vérifier que le fichier /etc/openvpn/update-resolv-conf est présent. Si non le créer avec le contenu suivant | |||
<pre> | |||
#!/bin/bash | |||
# | |||
# Parses DHCP options from openvpn to update resolv.conf | |||
# To use set as 'up' and 'down' script in your openvpn *.conf: | |||
# up /etc/openvpn/update-resolv-conf | |||
# down /etc/openvpn/update-resolv-conf | |||
# | |||
# Used snippets of resolvconf script by Thomas Hood <jdthood@yahoo.co.uk> | |||
# and Chris Hanson | |||
# Licensed under the GNU GPL. See /usr/share/common-licenses/GPL. | |||
# | |||
# 05/2006 chlauber@bnc.ch | |||
# | |||
# Example envs set from openvpn: | |||
# foreign_option_1='dhcp-option DNS 193.43.27.132' | |||
# foreign_option_2='dhcp-option DNS 193.43.27.133' | |||
# foreign_option_3='dhcp-option DOMAIN be.bnc.ch' | |||
[ -x /sbin/resolvconf ] || exit 0 | |||
case $script_type in | |||
up) | |||
for optionname in ${!foreign_option_*} ; do | |||
option="${!optionname}" | |||
echo $option | |||
part1=$(echo "$option" | cut -d " " -f 1) | |||
if [ "$part1" == "dhcp-option" ] ; then | |||
part2=$(echo "$option" | cut -d " " -f 2) | |||
part3=$(echo "$option" | cut -d " " -f 3) | |||
if [ "$part2" == "DNS" ] ; then | |||
IF_DNS_NAMESERVERS="$IF_DNS_NAMESERVERS $part3" | |||
fi | |||
if [ "$part2" == "DOMAIN" ] ; then | |||
IF_DNS_SEARCH="$part3" | |||
fi | |||
fi | |||
done | |||
R="" | |||
if [ "$IF_DNS_SEARCH" ] ; then | |||
R="${R}search $IF_DNS_SEARCH | |||
" | |||
fi | |||
for NS in $IF_DNS_NAMESERVERS ; do | |||
R="${R}nameserver $NS | |||
" | |||
done | |||
echo -n "$R" | /sbin/resolvconf -a "${dev}.inet" | |||
;; | |||
down) | |||
/sbin/resolvconf -d "${dev}.inet" | |||
;; | |||
esac | |||
</pre> | |||
Modifier les droits du fichier en exécution | |||
$ chmod +x /etc/openvpn/update-resolv-conf | |||
Ajouter les 3 lignes suivantes dans le fichier /etc/openvpn/*.conf (qui a été installé à la première étape) | |||
<pre> | |||
script-security 2 | |||
up /etc/openvpn/update-resolv-conf | |||
down /etc/openvpn/update-resolv-conf | |||
</pre> | |||
A chaque arrêt/relance du VPN, le serveur DNS de ppo (172.16.20.2) sera ajouté ou supprimé au fichier '''/etc/resolv.conf''' (2 à 3 seconds après le démarrage du VPN). | |||
Si ce n'est pas le cas, vérifier si cela apparait dans un fichier '''/run/resolvconf/resolv.conf''', et si oui, remplacer le fichier '''/etc/resolv.conf''' par un lien symbolique vers '''/run/resolvconf/resolv.conf''' et lancer la commande sudo resolvconf -u | |||
=== Installer depuis l'interface graphique Ubuntu === | |||
Installer le package '''network-manager-openvpn''' | |||
$ sudo apt-get install network-manager-openvpn | |||
Quelques secondes après l'installation, depuis l'icone du network manager dans la barre de tache, choisissez '''Connexion VPN''', '''Configurer le VPN''', '''Ajouter''' et choisissez dans la liste '''OpenVPN'''. | |||
Dans les options de la connexion, choisissez: | |||
* Passerelle: vpn.partipirate.org | |||
* Authentification type: Certificat (TLS) | |||
* Authentification certificat: Choisir le fichier .p12 fourni précédemment. | |||
* Paramètre IPV4: adresses automatiques pour le domaine uniquement | |||
* serveur DNS: 172.16.20.2 | |||
* Domaine de recherche: ppo | |||
* Routes: cochez la case "Utiliser cette ressource uniquement pour les ressources de son réseau". | |||
Puis depuis l'icone du network manager, choisissez "Activer le VPN". | |||
=== Tester l'accès === | |||
Vous pouvez maintenant réaliser des résolutions DNS et des commandes SSH sur le serveurs. Vérifiez que tout fonctionne par la commande: | |||
$ host chaloupe.partipirate.ppo | |||
Cela doit vous renvoyer son adresse IP dans le réseau VPN. | |||
Si cela échoue ou pas, vérifier le ping par la commande | |||
$ ping 172.16.20.108 | |||
Si les 2 tests sont ok, le VPN est opérationnel. Vous pouvez demander vos accès aux serveurs (FTP, phpMyAdmin, ...). | |||
Rem: Si seul le le premier test est ko mais que le deuxième est ok, le VPN est égallement ok, par contre c'est la résolution DNS du serveur DNS interne au VPN qui échoue. Ceci n'est pas bloquant et vous pouvez considérer que l'accès VPN est opérationnel. Il vous faudra toutefois utilisez les IP et non les noms de domaines pour accéder aux serveurs du PP. | |||
= FAQ = | = FAQ = | ||
Ligne 118 : | Ligne 249 : | ||
L'équipe technique distribue les accès sur besoin identifié ou demande. Envoyez un email sur la ML EkTek en motivant votre demande. Il n'est pas utile pour un site internet que 10 personnes disposent d'un tel accès mais il serait plus souhaitable qu'une personne en charge de la gestion technique du site en dispose | L'équipe technique distribue les accès sur besoin identifié ou demande. Envoyez un email sur la ML EkTek en motivant votre demande. Il n'est pas utile pour un site internet que 10 personnes disposent d'un tel accès mais il serait plus souhaitable qu'une personne en charge de la gestion technique du site en dispose | ||
[[Catégorie:Équipe | [[Catégorie:Équipe technique]] | ||
[[Catégorie:Tutoriels]] |
Version actuelle datée du 29 octobre 2014 à 16:24
Présentation du service
Les Réseaux Privés Virtuels en général
Dans les réseaux informatiques et les télécommunications, le réseau privé virtuel (Virtual Private Network en anglais, abrégé en VPN) est vu comme une extension des réseaux locaux et préserve la sécurité logique que l'on peut avoir à l'intérieur d'un réseau local. Il correspond en fait à une interconnexion de réseaux locaux via une technique de « tunnel ». On parle de VPN lorsqu'un organisme interconnecte ses sites via une infrastructure partagée avec d'autres organismes.
Un bon compromis consiste à utiliser Internet comme support de transmission en utilisant un protocole de « tunnellisation » (en anglais tunneling), c'est-à-dire encapsulant les données à transmettre de façon chiffrée. On parle alors de VPN pour désigner le réseau ainsi artificiellement créé. Ce réseau est dit virtuel car il relie deux réseaux « physiques » (réseaux locaux) par une liaison non fiable (Internet), et privé car seuls les ordinateurs des réseaux locaux de part et d'autre du VPN peuvent accéder aux données en clair.
Le VPN permet donc d'obtenir une liaison sécurisée à moindre coût, si ce n'est la mise en œuvre des équipements terminaux.
Le VPN vise à apporter certains éléments essentiels dans la transmission de données : l'authentification (et donc l'identification) des interlocuteurs, la confidentialité des données (le chiffrement vise à les rendre inutilisables par quelqu'un d'autre que le destinataire).
(auteur: les contributeurs de wikipédia in Wikipédia - Réseau privé virtuel)
Le réseau VPN du Parti Pirate
Les serveurs du Parti Pirate sont reliés entre eux dans un réseau interne. L'accès VPN vise donc à intégrer des utilisateurs nomades (dit roadwarrior) dans ce réseau interne. Cette intégration permet de fournir un premier niveau de gestion des accès au sein du réseau. Ensuite chaque service spécifie les privilèges de l'utilisateur.
Par exemple, l'utilisateur U a besoin d'un accès SSH (Secure SHell) sur le serveur S1 et un accès FTP (File Transfer Protocol) sur le serveur S2.
- Dans un premier temps, un certificat OpenVPN est créé pour U afin de lui fournir un accès au réseau interne.
- Puis sur chacun des services des serveurs S1 et S2 est défini un accès spécifique qui sera fournit à U.
- U s’intègre dans le réseau interne par connexion au VPN puis utilise normalement les services de S1 et S2
En outre, des applications spécifiques n'ayant pas de raisons d'être publiquement accessibles (gestion des adhérents par exemple) ne sont disponibles qu'au travers de ce réseau.
Ainsi, ce système présente les avantages suivants:
- Les données de l'utilisateur nomade à destination du réseau interne sont chiffrées via le VPN.
- Les applications n'ayant pas besoin d'un accès public ne sont disponibles qu'au travers du VPN
- Si un accès d'un utilisateur à un service est compromis, le problème reste limité tant que le certificat VPN de l'utilisateur n'est pas compromis.
- Si un certificat VPN d'un utilisateur est compromis, sa révocation permet de bloquer ses accès aux différents services sur le réseau interne et donc de limiter les effets de ce problème de sécurité.
- Si le certificat VPN d'un utilisateur est révoqué, il ne dispose plus d'aucun accès aux services du réseau. Toutefois, chaque service doit révoquer l'accès de cet utilisateur.
En revanche, cela nécessite d'installer un logiciel sur le système de l'utilisateur.
Le logiciel VPN utilisé pour le partipirate est OpenVPN.
OpenVPN est un logiciel libre permettant de créer un réseau privé virtuel. Il fournit :
- Un serveur VPN mature et stable
- Un logiciel client disponible sur de multiple plateforme (Solaris, *BSD, GNU/Linux, Mac OS X, Windows 2000, XP, Vista et 7)
Vous et OpenVPN
Vous aurez besoin d'un accès VPN pour :
- le site de votre section locale afin d'y effectuer des transferts de fichiers via FTP
- l'utilisation d'applications spécifiques n'ayant pas vocation à être publique pour des raisons de sécurité.
- l'administration d'un service sur un des serveurs si cela nécessite un compte système (user Shell avec commande limité sudo) ou si une éventuelle interface de gestion est indépendante du service.
- l'administration d'un ou plusieurs serveurs
L'impact sur votre machine est faible :
- cela revient à ajouter une nouvelle carte réseau (virtuelle) et de vous connecter au réseau interne
- le trafic n'étant pas à destination du réseau interne ne passe pas par le VPN, autrement dit les données de vos activités en ligne habituelles ne passent pas par ce réseau.
Pour éviter toute confusion, les adresses utilisées sont sous la forme partipirate.ppo. Par exemple :
- Le site de développement de la section Aquitaine http://aquitaine-beta.partipirate.ppo
- Un service de gestion du serveur Caravelle https://caravelle.partipirate.ppo:8080
Guides d'installation et d'utilisation
Pré-requis
- Avoir reçu les 2 fichiers clés (.ovpn et .p12) de la part des administrateurs du VPN (après que votre compte VPN ait été créé) ainsi que, si le fichier p12 a été crypté, le mot de passe de décryptage de ce fichier.
Pour Windows (XP, 7, ...)
Installer l'accès
- Télécharger le programme client OpenVPN pour votre PC: http://openvpn.net/index.php/open-source/downloads.html
- Lancer l'exécutable "openvpn-2.2.2-install" (ou version supérieure)
- Copier les fichier avec l’extension .p12 et .ovpn dans le dossier "\config" du répertoire d'installation d'OpenVPN (pour moi C:\Program Files (x86)\OpenVPN\config)
- Lancer le programme OpenVPN GUI (Menu Démarrer-Programmes-OpenVPN) en mode ADMINISTRATEUR surtout avec vista, 7, etc. Un icône dans la barre de taches (system-tray) et symbolisant le client OpenVPN a du apparaître. Faire un clic droit dessus et choisir Connecter. Si il y avait un mot de passe au fichier p12, il vous sera demandé à ce moment. Renseignez le.
- A l'issu de cette connexion, votre accès au VPN doit être opérationnel (icône de OpenVPN en vert dans la barre des taches).
- En cas de problème (si l’icône d'OpenVPN dans la barre des taches reste en rouge), fermer complètement OpenVPN (clic droit sur l’icône dans la barre des taches puis Quitter). Ensuite, retourner au menu, faites un clic droit sur le lanceur OpenVPN puis propriétés, onglet compatibilité et cochez "Exécuter ce programme en tant qu'administrateur" puis relancer OpenVPN. Si le pictogramme est toujours rouge, faire un clic droit puis Connecter.
Tester l'accès
Pour confirmer que le VPN fonctionne, ouvrez une fenêtre DOS et taper la commande
ping chaloupe.partipirate.ppo
Si cela répond avec des lignes du genre
Réponse de 172.16.20.108 : octets=32 temps=27 ms TTL=63 Réponse de 172.16.20.108 : octets=32 temps=29 ms TTL=63 Réponse de 172.16.20.108 : octets=32 temps=25 ms TTL=63
c'est que le VPN fonctionne. Vous avez accès au réseau interne du Parti Pirate. Vous pouvez demander vos accès aux serveurs spécifiques aux outils (FTP, phpMyAdmin, ...).
Pour MAC OS X
... doc à compléter...
Essayer d'appliquer la procédure décrite pour Windows en téléchargeant à la première étape, le programme d'installation pour MAC OS plutôt que pour Windows.
Pour Linux
Installer depuis la ligne de commande (debian, ubuntu, mint)
- Installer le paquet OpenVPN et OpenSSL
$ sudo apt-get -y install openvpn openssl
- Renommer le fichier .ovpn en .conf (filename est à remplacer par le nom du fichier ovpn reçu)
$ mv filename.ovpn filename.conf
- Copier les fichiers .p12 et .conf dans /etc/openvpn/ et les rendre en accès restreint root
$ sudo chown root:root /etc/openvpn/*.conf $ sudo chown root:root /etc/openvpn/*.p12 $ sudo chmod 0600 /etc/openvpn/*.conf $ sudo chmod 0600 /etc/openvpn/*.p12
- Lancer la connexion au VPN
$ sudo service openvpn restart
Si le fichier p12 a été crypté, le mot de passe sera demandée à chaque connexion.
- Optionnellement, supprimer le mot de passe demandé à chaque connexion.
L'opération consiste à recréer le fichier .p12 sans mot de passe.
$ sudo cp /etc/openvpn/monfichierp12.p12 /etc/openvpn/monfichierp12.p12.bak $ sudo openssl pkcs12 -in /etc/openvpn/monfichierp12.p12 -nodes -out temp.pem
Pour la commande suivante, lorsque qu'OpenSSL demande un mot de passe, taper "entrée" en ne saisissant rien.
$ sudo openssl pkcs12 -export -in temp.pem -out /etc/openvpn/monfichierp12.p12 $ sudo rm -f temp.pem
- Ajouter la configuration de résolution DNS
En effet, pour avoir les résolutions DNS du réseau privé VPN, il faut ajouter l'adresse du serveur DNS : 172.16.20.2 dans la configuration de résolution DNS.
Pour cela, 2 méthodes:
Soit vous êtes sur un poste avec serveur DNS (cas de PC serveurs):
Vous devez modifier dans /etc/bind/named.conf.options
forward first; forwarders { 172.16.20.2; }; dnssec-validation no;
Soit vous êtes sur un poste utilisateur client sans serveur DNS (cas le plus fréquent):
Vérifier que le fichier /etc/openvpn/update-resolv-conf est présent. Si non le créer avec le contenu suivant
#!/bin/bash # # Parses DHCP options from openvpn to update resolv.conf # To use set as 'up' and 'down' script in your openvpn *.conf: # up /etc/openvpn/update-resolv-conf # down /etc/openvpn/update-resolv-conf # # Used snippets of resolvconf script by Thomas Hood <jdthood@yahoo.co.uk> # and Chris Hanson # Licensed under the GNU GPL. See /usr/share/common-licenses/GPL. # # 05/2006 chlauber@bnc.ch # # Example envs set from openvpn: # foreign_option_1='dhcp-option DNS 193.43.27.132' # foreign_option_2='dhcp-option DNS 193.43.27.133' # foreign_option_3='dhcp-option DOMAIN be.bnc.ch' [ -x /sbin/resolvconf ] || exit 0 case $script_type in up) for optionname in ${!foreign_option_*} ; do option="${!optionname}" echo $option part1=$(echo "$option" | cut -d " " -f 1) if [ "$part1" == "dhcp-option" ] ; then part2=$(echo "$option" | cut -d " " -f 2) part3=$(echo "$option" | cut -d " " -f 3) if [ "$part2" == "DNS" ] ; then IF_DNS_NAMESERVERS="$IF_DNS_NAMESERVERS $part3" fi if [ "$part2" == "DOMAIN" ] ; then IF_DNS_SEARCH="$part3" fi fi done R="" if [ "$IF_DNS_SEARCH" ] ; then R="${R}search $IF_DNS_SEARCH " fi for NS in $IF_DNS_NAMESERVERS ; do R="${R}nameserver $NS " done echo -n "$R" | /sbin/resolvconf -a "${dev}.inet" ;; down) /sbin/resolvconf -d "${dev}.inet" ;; esac
Modifier les droits du fichier en exécution
$ chmod +x /etc/openvpn/update-resolv-conf
Ajouter les 3 lignes suivantes dans le fichier /etc/openvpn/*.conf (qui a été installé à la première étape)
script-security 2 up /etc/openvpn/update-resolv-conf down /etc/openvpn/update-resolv-conf
A chaque arrêt/relance du VPN, le serveur DNS de ppo (172.16.20.2) sera ajouté ou supprimé au fichier /etc/resolv.conf (2 à 3 seconds après le démarrage du VPN). Si ce n'est pas le cas, vérifier si cela apparait dans un fichier /run/resolvconf/resolv.conf, et si oui, remplacer le fichier /etc/resolv.conf par un lien symbolique vers /run/resolvconf/resolv.conf et lancer la commande sudo resolvconf -u
Installer depuis l'interface graphique Ubuntu
Installer le package network-manager-openvpn
$ sudo apt-get install network-manager-openvpn
Quelques secondes après l'installation, depuis l'icone du network manager dans la barre de tache, choisissez Connexion VPN, Configurer le VPN, Ajouter et choisissez dans la liste OpenVPN.
Dans les options de la connexion, choisissez:
- Passerelle: vpn.partipirate.org
- Authentification type: Certificat (TLS)
- Authentification certificat: Choisir le fichier .p12 fourni précédemment.
- Paramètre IPV4: adresses automatiques pour le domaine uniquement
- serveur DNS: 172.16.20.2
- Domaine de recherche: ppo
- Routes: cochez la case "Utiliser cette ressource uniquement pour les ressources de son réseau".
Puis depuis l'icone du network manager, choisissez "Activer le VPN".
Tester l'accès
Vous pouvez maintenant réaliser des résolutions DNS et des commandes SSH sur le serveurs. Vérifiez que tout fonctionne par la commande:
$ host chaloupe.partipirate.ppo
Cela doit vous renvoyer son adresse IP dans le réseau VPN.
Si cela échoue ou pas, vérifier le ping par la commande
$ ping 172.16.20.108
Si les 2 tests sont ok, le VPN est opérationnel. Vous pouvez demander vos accès aux serveurs (FTP, phpMyAdmin, ...). Rem: Si seul le le premier test est ko mais que le deuxième est ok, le VPN est égallement ok, par contre c'est la résolution DNS du serveur DNS interne au VPN qui échoue. Ceci n'est pas bloquant et vous pouvez considérer que l'accès VPN est opérationnel. Il vous faudra toutefois utilisez les IP et non les noms de domaines pour accéder aux serveurs du PP.
FAQ
Comment obtenir un accès VPN ?
L'équipe technique distribue les accès sur besoin identifié ou demande. Envoyez un email sur la ML EkTek en motivant votre demande. Il n'est pas utile pour un site internet que 10 personnes disposent d'un tel accès mais il serait plus souhaitable qu'une personne en charge de la gestion technique du site en dispose