logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

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
Prochaine révision Les deux révisions suivantes
doc:reseau:vpn:openvpn [23/10/2016 19:33]
kawer
doc:reseau:vpn:openvpn [31/12/2016 14:56]
smolski mis en àtester
Ligne 1: Ligne 1:
-====== ​Titre de Votre Tuto ======+====== ​OPENVPN Serveur et Client ​======
  
   * Objet : du tuto Configuration d'un serveur openvpn   * Objet : du tuto Configuration d'un serveur openvpn
-  * Niveau requis : {{tag>débutant ​avisé}} +  * Niveau requis : {{tag>​avisé}} 
-  * Commentaires : //serveur, nat.. // FIXME+  * Commentaires : //serveur, nat.. //
   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
-  * Suivi : {{tag>en-chantier ​à-tester ​à-placer}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:​atelier:#​tags|l'​Atelier]].+  * Suivi : {{tag>​à-tester}}
     * Création par [[user>​kawer]] 27/05/2016     * Création par [[user>​kawer]] 27/05/2016
-    * Testé par <...> le <​...> ​FIXME +    * Testé par <...> le <​...>​ 
-  * Commentaires sur le forum : [[:url-invalide ​| Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME+  * Commentaires sur le forum : [[https://debian-facile.org/​viewtopic.php?​id=15701 ​| Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
  
 **Nota :** **Nota :**
Ligne 16: Ligne 16:
 ==== Présentation ==== ==== Présentation ====
  
-Cette technique permet la création d'une liaison chiffrée entre votre machine et un serveur hébergé sur Internet (par exemple chez un fournisseur d’accès se trouvant en France ou à l'​étranger). Tous vos accès à Internet seront alors vus à partir de l'​adresse IP de ce serveur VPN et non plus par celle de votre machine.+Cette technique permet la création d'une liaison chiffrée entre votre machine et un serveur hébergé sur Internet (par exemple chez un fournisseur d’accès se trouvant en France ou à l'​étranger). ​\\  
 +Tous vos accès à Internet seront alors vus à partir de l'​adresse IP de ce serveur VPN et non plus par celle de votre machine.
  
 OpenVPN n'est pas un VPN IPSec. C'est un VPN SSL se basant sur la création d'un tunnel IP (UDP ou TCP au choix) authentifié et chiffré avec la bibliothèque OpenSSL. OpenVPN n'est pas un VPN IPSec. C'est un VPN SSL se basant sur la création d'un tunnel IP (UDP ou TCP au choix) authentifié et chiffré avec la bibliothèque OpenSSL.
Ligne 22: Ligne 23:
 Quelques avantages des tunnels VPN SSL : Quelques avantages des tunnels VPN SSL :
  
-    ​Facilité pour passer les réseaux NATés (pas de configuration à faire) +  * Facilité pour passer les réseaux NATés (pas de configuration à faire) 
-    Logiciel clients disponibles sur **GNU/​Linux,​ BSD, Windows et Mac OS X**+  ​* ​Logiciel clients disponibles sur **GNU/​Linux,​ BSD, Windows et Mac OS X**
  
  
Ligne 32: Ligne 33:
 <code root>​apt-get update && apt-get install openvpn</​code>​ <code root>​apt-get update && apt-get install openvpn</​code>​
  
 +=== On ce prépare à installer les certificats === 
 +<code root>cp -a /​usr/​share/​easy-rsa /​etc/​openvpn/</​code>​
 +<code user>cd /​etc/​openvpn/​easy-rsa</​code>​
 +<code root>​source vars</​code>​
 +<code root>​./​clean-all</​code>​
  
 === Création des certificats de l'​autorité de certification : === === Création des certificats de l'​autorité de certification : ===
  
 <code root>​./​build-ca</​code>​ <code root>​./​build-ca</​code>​
- 
- 
 Vous devriez obtenir ce qui suit, libre à vous d'en changer le contenus : Vous devriez obtenir ce qui suit, libre à vous d'en changer le contenus :
- 
 <​code>​ <​code>​
 Generating a 2048 bit RSA private key Generating a 2048 bit RSA private key
Ligne 67: Ligne 70:
  
 <code root>​./​build-dh</​code>​ <code root>​./​build-dh</​code>​
- 
 Qui donne : Qui donne :
- 
 <​code>​ <​code>​
 Generating DH parameters, 2048 bit long safe prime, generator 2 Generating DH parameters, 2048 bit long safe prime, generator 2
Ligne 75: Ligne 76:
 ..............+...................................................................................... ..............+......................................................................................
 </​code>​ </​code>​
- 
  
 === On génère les certificats du serveur : === === On génère les certificats du serveur : ===
  
 <code root>​./​build-key-server srvcert</​code>​ <code root>​./​build-key-server srvcert</​code>​
- 
 Qui donne ce qui suit : **(remplacez debian-facile par le nom de votre serveur)** Qui donne ce qui suit : **(remplacez debian-facile par le nom de votre serveur)**
- 
 <​code>​ <​code>​
 Generating a 2048 bit RSA private key Generating a 2048 bit RSA private key
Ligne 134: Ligne 132:
   
 <code root>​gunzip -c /​usr/​share/​doc/​openvpn/​examples/​sample-config-files/​server.conf.gz > /​etc/​openvpn/​server.conf</​code>​ <code root>​gunzip -c /​usr/​share/​doc/​openvpn/​examples/​sample-config-files/​server.conf.gz > /​etc/​openvpn/​server.conf</​code>​
- 
  
 === On configure server.conf === === On configure server.conf ===
  
 <code root>​nano /​etc/​openvpn/​server.conf</​code>​ **décommentez ou ajoutez les lignes suivantes :** <code root>​nano /​etc/​openvpn/​server.conf</​code>​ **décommentez ou ajoutez les lignes suivantes :**
- 
 <​code>​ <​code>​
 user nobody user nobody
Ligne 167: Ligne 163:
  
 <​code>​ <​code>​
-Fri May 27 15:41:06 2016 OpenVPN 2.3.4 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Nov 12 2015 +Thu Dec 22 18:27:00 2016 OpenVPN 2.3.4 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Nov 12 2015 
-Fri May 27 15:41:06 2016 library versions: OpenSSL 1.0.1k 8 Jan 2015, LZO 2.08 +Thu Dec 22 18:27:00 2016 library versions: OpenSSL 1.0.1t  3 May 2016, LZO 2.08 
-Fri May 27 15:41:06 2016 NOTE: the current --script-security setting may allow this configuration to call user-defined scripts +Thu Dec 22 18:27:00 2016 Diffie-Hellman initialized with 2048 bit key 
-Fri May 27 15:41:06 2016 Diffie-Hellman initialized with 2048 bit key +Thu Dec 22 18:27:00 2016 Socket Buffers: R=[212992->​131072] S=[212992->​131072] 
-Fri May 27 15:41:06 2016 Socket Buffers: R=[229376->​131072] S=[229376->​131072] +Thu Dec 22 18:27:00 2016 ROUTE_GATEWAY ​213.32.16.1 
-Fri May 27 15:41:06 2016 ROUTE_GATEWAY ​92.222.64.1 +Thu Dec 22 18:27:00 2016 TUN/TAP device tun0 opened 
-Fri May 27 15:41:06 2016 TUN/TAP device tun0 opened +Thu Dec 22 18:27:00 2016 TUN/TAP TX queue length set to 100 
-Fri May 27 15:41:06 2016 TUN/TAP TX queue length set to 100 +Thu Dec 22 18:27:00 2016 do_ifconfig,​ tt->​ipv6=0,​ tt->​did_ifconfig_ipv6_setup=0 
-Fri May 27 15:41:06 2016 do_ifconfig,​ tt->​ipv6=0,​ tt->​did_ifconfig_ipv6_setup=0 +Thu Dec 22 18:27:00 2016 /sbin/ip link set dev tun0 up mtu 1500 
-Fri May 27 15:41:06 2016 /sbin/ip link set dev tun0 up mtu 1500 +Thu Dec 22 18:27:00 2016 /sbin/ip addr add dev tun0 local 10.8.0.1 peer 10.8.0.2 
-Fri May 27 15:41:06 2016 /sbin/ip addr add dev tun0 local 10.8.0.1 peer 10.8.0.2 +Thu Dec 22 18:27:00 2016 /sbin/ip route add 10.8.0.0/24 via 10.8.0.2 
-Fri May 27 15:41:06 2016 /​etc/​openvpn/​update-resolv-conf tun0 1500 1542 10.8.0.1 10.8.0.2 init +Thu Dec 22 18:27:00 2016 GID set to nogroup 
-Fri May 27 15:41:06 2016 /sbin/ip route add 10.8.0.0/24 via 10.8.0.2 +Thu Dec 22 18:27:00 2016 UID set to nobody 
-Fri May 27 15:41:06 2016 GID set to nogroup +Thu Dec 22 18:27:00 2016 UDPv4 link local (bound): [undef] 
-Fri May 27 15:41:06 2016 UID set to nobody +Thu Dec 22 18:27:00 2016 UDPv4 link remote: [undef] 
-Fri May 27 15:41:06 2016 UDPv4 link local (bound): [undef] +Thu Dec 22 18:27:00 2016 MULTI: multi_init called, r=256 v=256 
-Fri May 27 15:41:06 2016 UDPv4 link remote: [undef] +Thu Dec 22 18:27:00 2016 IFCONFIG POOL: base=10.8.0.4 size=62, ipv6=0 
-Fri May 27 15:41:06 2016 MULTI: multi_init called, r=256 v=256 +Thu Dec 22 18:27:00 2016 IFCONFIG POOL LIST 
-Fri May 27 15:41:06 2016 IFCONFIG POOL: base=10.8.0.4 size=62, ipv6=0 +Thu Dec 22 18:27:00 2016 Initialization Sequence Completed
-Fri May 27 15:41:06 2016 IFCONFIG POOL LIST +
-Fri May 27 15:41:06 2016 Initialization Sequence Completed+
 </​code>​ </​code>​
-  
 <code user>​ifconfig tun0</​code>​ <code user>​ifconfig tun0</​code>​
- +Devrait ​vous retourner :
-Devrais ​vous retourner : +
 <​code>​ <​code>​
 tun0      Link encap:​UNSPEC ​ HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  ​ tun0      Link encap:​UNSPEC ​ HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  ​
Ligne 203: Ligne 194:
           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B
 </​code>​ </​code>​
- 
  
 == Le test s'est bien déroulé : == == Le test s'est bien déroulé : ==
  
 <code root>​service openvpn start</​code>​ <code root>​service openvpn start</​code>​
- 
  
 === Activation de l'ip forwarding : === === Activation de l'ip forwarding : ===
Ligne 214: Ligne 203:
 <code root>​nano /​etc/​sysctl.conf</​code>​ <code root>​nano /​etc/​sysctl.conf</​code>​
  
-**Décommentez la ligne** +**[[doc:​programmation:​commenter|Décommentez la ligne]]**
 <​code>​net.ipv4.ip_forward=1</​code>​ <​code>​net.ipv4.ip_forward=1</​code>​
- 
 **Activez le nouveau jeux de règle :** **Activez le nouveau jeux de règle :**
- 
 <code root>​sysctl -p /​etc/​sysctl.conf</​code>​ <code root>​sysctl -p /​etc/​sysctl.conf</​code>​
  
 == Ajouts des règles dans iptables : ==  == Ajouts des règles dans iptables : == 
-**se référer ici :** https://​debian-facile.org/​doc:​reseau:​iptables+ 
 +**se référer ici :** 
 +[[doc:​reseau:​iptables|tuto Reseau iptable]]
  
 <​code>​ <​code>​
Ligne 237: Ligne 225:
 <​code=root>​source vars</​code>​ <​code=root>​source vars</​code>​
 <​code=root>​./​build-key clientCert</​code>​ <​code=root>​./​build-key clientCert</​code>​
-  +Qui donne ce qui suit : **(remplacez [clientCert]:​debianFacile par le nom de votre client)** 
-Qui donne ce qui suit : **(remplacez [clientCert]:​debianFacile par le nom de votre client) +<​code>​Generating a 2048 bit RSA private key
-** +
-<code=bash>​Generating a 2048 bit RSA private key+
 ...........................................+++ ...........................................+++
 ......................................................+++ ......................................................+++
Ligne 285: Ligne 271:
 Data Base Updated Data Base Updated
 </​code>​ </​code>​
 +
 +=== On récupère les certificats sur le serveur : === 
 +**Récupérer les fichiers suivant dans /​etc/​openvpn/​easy-rsa/​keys/:​** ​
 +[[doc:​reseau:​scp|scp&​nbsp;:​ transfert de fichiers sécurisé entre machines]]
 +
 +<​code>/​etc/​openvpn/​easy-rsa/​keys/​ca.crt</​code>​
 +<​code>/​etc/​openvpn/​easy-rsa/​keys/​clientCert.key</​code>​
 +<​code>/​etc/​openvpn/​easy-rsa/​keys/​clientCert.crt</​code>​
  
 === Sur le poste client === === Sur le poste client ===
- 
-==On récupère les certificats sur le serveur : == 
-<​code=bash>​ 
-scp root@serveur:/​etc/​openvpn/​easy-rsa/​keys/​ca.crt /tmp 
-scp root@serveur:/​etc/​openvpn/​easy-rsa/​keys/​clientCert.crt /tmp 
-scp root@serveur:/​etc/​openvpn/​easy-rsa/​keys/​clientCert.key /tmp 
-</​code>​ 
  
 ==On installe openvpn :== ==On installe openvpn :==
-<code=root> + 
-sudo apt-get update  +<code root>​sudo apt-get update</​code> ​ 
-sudo apt-get install openvpn +<code root>sudo apt-get install openvpn</​code>​
-</​code>​+
  
 ==On copie le le fichier de configuration et certificats == ==On copie le le fichier de configuration et certificats ==
-<code=root> + 
-cp /​usr/​share/​doc/​openvpn/​examples/​sample-config-files/​client.conf /​etc/​openvpn/​ +<code root>cp /​usr/​share/​doc/​openvpn/​examples/​sample-config-files/​client.conf /​etc/​openvpn/​</​code>​ 
-cd /​etc/​openvpn +<code root>cd /​etc/​openvpn</​code>​ 
-mkdir -p keys +<code root>mkdir -p keys</​code>​ 
-cd keys +<code root>cd keys</code> 
-cp /tmp/​ca.crt ​+ 
-cp /tmp/​clientCert.key ​+**Coller dans le dossiers en cours (keys) les fichiers suivants :** 
-cp /tmp/​clientCert.crt ​+ 
-</​code>​+<​code>​ca.crt</code> 
 +<​code>​clientCert.key</code> 
 +<​code>​clientCert.crt</​code>​
  
 == Modification du fichier de configuration == == Modification du fichier de configuration ==
 +
 **Changer le chemin du serveur et des certificats dans /​etc/​openvpn/​client.conf** **Changer le chemin du serveur et des certificats dans /​etc/​openvpn/​client.conf**
 <​code>​ <​code>​
Ligne 322: Ligne 311:
  
 == Test de connection == == Test de connection ==
-<​code=root>​ + 
-openvpn /​etc/​openvpn/​client.conf</​code>​+<​code=root>​openvpn /​etc/​openvpn/​client.conf</​code>​
  
 **Vous devez obtenir en fin de séquence :** **Vous devez obtenir en fin de séquence :**
 <​code>​Initialization Sequence Completed</​code>​ <​code>​Initialization Sequence Completed</​code>​
  
-Si tel est le cas, vérifié ​que tun0 est bien listé avec **ifconfig**,​ puis vérifié ​votre ip par exemple en allant sur [[http://​ifconfig.me/​ +Si tel est le cas, vérifiez ​que tun0 est bien listé avec **ifconfig**,​ puis vérifiez ​votre ip par exemple en allant sur [[http://​ifconfig.me/​]],​ si tout est ok, on ferme la console openvpn en pensant a faire un **Ctrl+C**
-]], si tout est ok, on ferme la console openvpn en pensant a faire un **Ctrl+C**+
  
 == on démarre openvpn== == on démarre openvpn==
 +
 <​code=root>​service openvpn start</​code>​ <​code=root>​service openvpn start</​code>​
  
doc/reseau/vpn/openvpn.txt · Dernière modification: 07/08/2018 11:58 par cemoi

Pied de page des forums

Propulsé par FluxBB