Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
client_openvpn [Le 24/07/2017, 18:13]
213.152.161.85
client_openvpn [Le 11/09/2022, 11:51] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>​vpn réseau sécurité vétuste}}+{{tag>brouillon Xenial ​vpn réseau sécurité vétuste}}
  
 ---- ----
  
 ====== Client OpenVPN ====== ====== Client OpenVPN ======
-Le client OpenVPN permet de se connecter à un réseau privé virtuel sur lequel tourne un serveur OpenVPN. Ce type de réseau est fréquemment utilisé pour permettre un accès protégé à des réseaux d'​entreprise à partir de n'​importe quelle connexion internet. On pourra citer d'​autres types de VPN comme les VPN Cisco, IPSEC, PPTP, L2TP et SSH. Les plus répandus étant les Cisco (éventuellement propriétaire) et les OpenVPN+Le client OpenVPN permet de se connecter à un réseau privé virtuel ​[[:​vpn|VPN]] ​sur lequel tourne un serveur ​[[:OpenVPN]].\\ 
 +Ce type de réseau est [[:​vpn#​differentes_utilisations_de_vpn|fréquemment utilisé]] pour permettre un accès protégé à des réseaux d'​entreprise à partir de n'​importe quelle connexion internet. On pourra citer d'​autres types de VPN comme les VPN Cisco, IPSEC, PPTP, L2TP et SSH. Les plus répandus étant les Cisco (éventuellement propriétaire) et les OpenVPN
  
 ===== Installation ===== ===== Installation =====
  
-Pour installer le client OpenVPN, il suffit ​ d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt://​openvpn|openvpn]]** disponible dans les dépôts officiels. On pourra aussi [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt://​network-manager-openvpn|network-manager-openvpn]]** ​(pour Ubuntu) ou [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt://​kvpnc|kvpnc]]** (Kubuntu) ​pour avoir une interface graphique qui permet de simplifier l'​utilisation. +Pour installer le client OpenVPN, il suffit ​ d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt://​openvpn|openvpn]]** disponible dans les dépôts officiels.\\ 
- +On pourra aussi [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt://​network-manager-openvpn|network-manager-openvpn]]** pour avoir une interface graphique qui permet de simplifier l'​utilisation.
  
 ===== Configuration ===== ===== Configuration =====
 ==== Sans interface graphique ==== ==== Sans interface graphique ====
  
-Pour définir une connexion à un VPN, il faut écrire ​un fichier contenant certaines informations. ​On pourra trouver des exemples de fichiers de configuration dans le dossier ​/usr/share/doc/openvpn/examples/​sample-config-files.+Pour définir une connexion à un VPN, il faut disposer d'un fichier contenant certaines informations. 
 +Ce fichier sera généralement fourni avec vos certificats et clés par le service informatique ou le fournisseur gérant le [[:​OpenVPN|serveur]]\\ 
 +L'​exemple de fichier client officiel se trouve : [[https://github.com/OpenVPN/openvpn/blob/​master/​sample/​sample-config-files/​client.conf|github/​OpenVPN/​client.conf]] 
 + 
 +Les champs les plus importants de ce fichier sont: 
 +<file - client.conf>​ 
 +##############################################​ 
 +# Sample client-side OpenVPN 2.0 config file # 
 +# for connecting to multi-client server. ​    # 
 +#                                            # 
 +# This configuration can be used by multiple # 
 +# clients, however each client should have   # 
 +# its own cert and key files. ​               # 
 +##############################################​
  
-Les champs les plus importants de ce fichier sont +# précise le mode client 
 +client
  
-**remote** ​ (hôte abritant ​le nœud d'entrée)+le type d'interface tun ou tap (comme définit par le serveur) 
 +dev tap 
 +;dev tun
  
-**dev** ​(tun ou tap)+# défini le protocole ​(comme définit par le serveur) 
 +proto tcp 
 +;proto udp
  
-**proto** ​(udp ou tcp)+# adresse publique du serveur ​(adresse IP ou nom du serveuret port (1194 par défaut) 
 +remote ​ my-server-1 1194
  
-**comp-lzo** (compression lzo)+# les certificats et clés, le certificat et la clé client peuvent être communs à plusieurs clients (comme ci-dessous) 
 +# ou personnalisé ​(par exemple: mon_nom.crt et mon_nom.key) 
 +ca ca.crt 
 +cert client.crt 
 +key client.key
  
-**fragment**+# vérification du certificat serveur 
 +remote-cert-tls server
  
-**ca** (fichier certificat)+# si le serveur utilise une clé tls- 
 +tls-auth ta.key 1
  
-**ns-cert-type**+</​file>​
 ==== Avec network-manager-openvpn ==== ==== Avec network-manager-openvpn ====
  
Ligne 48: Ligne 73:
 ==== Avec kvpnc ==== ==== Avec kvpnc ====
  
-Kvpnc est une interface graphique très complète pour gérer de nombreux types de VPN. Elle vous permettra de configurer presque aussi finement votre configuration qu'en éditant à la main le fichier de configuration. Il prend notament en charge les scripts up et down qui peuvent être nécessaires dans certains cas et permet même d'en générer automatiquement. ​+Kvpnc est une interface graphique très complète pour gérer de nombreux types de VPN. Elle vous permettra de configurer presque aussi finement votre configuration qu'en éditant à la main le fichier de configuration. Il prend notament en charge les scripts up et down qui peuvent être nécessaires dans certains cas et permet même d'en générer automatiquement.
  
 Kvpnc permet en outre d'​exporter un profile vpn en fichier de configuration pour une utilisation indépendante. Kvpnc permet en outre d'​exporter un profile vpn en fichier de configuration pour une utilisation indépendante.
Ligne 92: Ligne 117:
 Il est à noter que dans le fichier de configuration d'​openvpn,​ il existe des variables qui permettent de faire les routes facilement, en particulier on notera les variables **vpn_gateway** et **net_gateway** qui sont respectivement les passerelles du vpn et celle de la connexion initiale. Il est à noter que dans le fichier de configuration d'​openvpn,​ il existe des variables qui permettent de faire les routes facilement, en particulier on notera les variables **vpn_gateway** et **net_gateway** qui sont respectivement les passerelles du vpn et celle de la connexion initiale.
  
-Ainsi pour diriger le traffic destiné au vpn par la passerelle du vpn, on pourra rentrer un +Ainsi pour diriger le traffic destiné au vpn par la passerelle du vpn, on pourra rentrer un
  
 ''​route 10.0.0.0 255.0.0.0 vpn_gateway''​ ''​route 10.0.0.0 255.0.0.0 vpn_gateway''​
Ligne 102: Ligne 127:
 <​code>​sudo openvpn fichierdeconfiguration</​code>​ <​code>​sudo openvpn fichierdeconfiguration</​code>​
  
-Si l'on veut passer des paramètres optionnels à openvpn, on doit alors spécifier aussi l'​option **--config** devant le nom du fichier de configuration. Parmi les option utiles, on remarquera **--auth-user-pass** qui permet de donner un fichier contenant le nom d'​utilisateur et le mot de passe, ce qui permet de ne pas avoir à rentrer ces derniers à l'​invite de commande, et donc de lancer plus facilement openvpn en tâche de fond.+Si l'on veut passer des paramètres optionnels à openvpn, on doit alors spécifier aussi l'​option **%%--%%config** devant le nom du fichier de configuration. Parmi les option utiles, on remarquera **%%--%%auth-user-pass** qui permet de donner un fichier contenant le nom d'​utilisateur et le mot de passe, ce qui permet de ne pas avoir à rentrer ces derniers à l'​invite de commande, et donc de lancer plus facilement openvpn en tâche de fond.
  
 On notera qu'il faut les droits d'​administration pour se connecter, ce qui est normal car openvpn va créer une interface réseau virtuelle, la configurer avec ifconfig et changer les tables de rout On notera qu'il faut les droits d'​administration pour se connecter, ce qui est normal car openvpn va créer une interface réseau virtuelle, la configurer avec ifconfig et changer les tables de rout
Ligne 116: Ligne 141:
 ===== Sécurisation ===== ===== Sécurisation =====
 Le serveur VPN peut se déconnecter intempestivement,​ ceci est gênant pour les clients VPN, lors de téléchargement de torrent(s) par exemple. Plusieurs solutions existent de type programme (vpnautoconnect) ou scripts Le serveur VPN peut se déconnecter intempestivement,​ ceci est gênant pour les clients VPN, lors de téléchargement de torrent(s) par exemple. Plusieurs solutions existent de type programme (vpnautoconnect) ou scripts
-En voici un basé sur la publication ​   [[http://​ubuntuforums.org/​showthread.php?​t=1941380&​page=2]]+En voici un basé sur la publication ​   [[https://​ubuntuforums.org/​showthread.php?​t=1941380&​page=2]]
  
 <​code>#​-------------------------------------------------- <​code>#​--------------------------------------------------
Ligne 128: Ligne 153:
 #​-------------------------------------------------- #​--------------------------------------------------
 # ce programme est basé sur la note publiée ci-après: # ce programme est basé sur la note publiée ci-après:
-#  --- cf  ​http://​ubuntuforums.org/​showthread.php?​t=1941380&​page=2+#  --- cf  ​https://​ubuntuforums.org/​showthread.php?​t=1941380&​page=2
 #​-------------------------------------------------- #​--------------------------------------------------
 # #
Ligne 252: Ligne 277:
  
  
-  * recopier le code dans un fichier texte  (//​veille-VPN.sh// ​ par exemple), ​+  * recopier le code dans un fichier texte  (//​veille-VPN.sh// ​ par exemple),
   * renseigner: votre adresse ip que vous voulez masquer sur internet, le nom de la connexion VPN ainsi que celui du processus a stopper en cas de défaut du serveur   * renseigner: votre adresse ip que vous voulez masquer sur internet, le nom de la connexion VPN ainsi que celui du processus a stopper en cas de défaut du serveur
   * sauvegarder le fichier en lui donnant les droits d’exécution   * sauvegarder le fichier en lui donnant les droits d’exécution
  • client_openvpn.1500912786.txt.gz
  • Dernière modification: Le 24/07/2017, 18:13
  • par 213.152.161.85