Outils pour utilisateurs

Outils du site


linux:openvpn (lu 47165 fois)

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
linux:openvpn [26-03-2010 11:04]
edmc73
linux:openvpn [04-04-2013 22:06] (Version actuelle)
Ligne 185: Ligne 185:
   /etc/network/if-up.d/   /etc/network/if-up.d/
      
 +===== Configuration du routeur =====
 +
 +Pour un serveur OpenVPN, par défaut (si vous n'avez pas modifier le fichier de conf) il faut ouvrir **le port 1194 en UDP** sur votre routeur.
 +
 +
 +===== Configuration du client =====
 +
 +==== Sous Windows ====
 +
 +Comme je le disais, le poste client est sous windows.
 +
 +Nous allons télécharger l'application sur le site http://openvpn.se/download.html
 +
 +A l'heure actuel le client est en version 2.0.9 http://openvpn.se/files/install_packages/openvpn-2.0.9-gui-1.0.3-install.exe
 +
 +Vous pouvez télécharger la francisation du programme http://openvpn.se/files/localized/binary/1.0.3/openvpn-gui-1.0.3-fr.exe
 +
 +Lancez donc l'installation du client, une fois l'installation fini, une icone avec 2 petit écran rouge apparait à coté de l'heure, faite un clic droit puis **Exit**
 +
 +Allez dans le répertoire **C:\Program Files\OpenVPN\bin**\\
 +Copiez le fichier **openvpn-gui-1.0.3-fr.exe**\\
 +Supprimez le fichier **openvpn.exe**\\
 +Renommez le fichier **openvpn-gui-1.0.3-fr.exe** en **openvpn.exe**.
 +
 +Vous pouvez maintenant relancer openvpn : Menu Démarrer / Tous les programmes / OpenVPN / OpenVPN GUI
 +
 +Nous allons préparer la config du client, allez dans le répertoire **C:\Program Files\OpenVPN\config**
 +
 +Copiez les fichiers **ca.crt**, **Client01.crt** et **Client01.key**
 +
 +Créons le fichier de config nommé par exemple **MonServeur.ovpn**
 +
 +Vous pouvez trouver des exemples de fichiers de config dans le répertoire **C:\Program Files\OpenVPN\sample-config**
 +
 +Dans notre cas, voici ce que contient mon fichier de config
 +
 +<code>
 +#On spécifie qu'on est le client
 +client
 +
 +#Même parametre que le serveur
 +dev tun
 +proto udp
 +
 +remote adresse_du_serveur_openvpn 1194
 +
 +#Tente de résoudre le nom de la machine indéfiniment
 +resolv-retry infinite
 +
 +nobind
 +
 +# essaie de préserver le même état lorsque la connexion redémarre
 +persist-key
 +persist-tun
 +
 +#Définit les fichiers que vous avez copier
 +ca ca.crt
 +cert Client01.crt
 +key Client01.key
 +
 +#permet la compression des données
 +comp-lzo
 +
 +#détails des logs
 +verb 3</code>
 +
 +==== Sous Linux ====
 +
 +Installez le paquet **openvpn**
 +
 +Copiez les fichiers **ca.crt**, **Client01.crt** et **Client01.key** dans le répertoire **/etc/openvpn/**
 +
 +Créons le fichier de config nommé par exemple **client.conf** toujours dans le répertoire **/etc/openvpn/**
 +
 +Dans notre cas, voici ce que contient mon fichier de config
 +
 +<code>
 +#On spécifie qu'on est le client
 +client
 +
 +#Même parametre que le serveur
 +dev tun
 +proto udp
 +
 +remote adresse_du_serveur_openvpn 1194
 +
 +#Tente de résoudre le nom de la machine indéfiniment
 +resolv-retry infinite
 +
 +nobind
 +
 +# essaie de préserver le même état lorsque la connexion redémarre
 +persist-key
 +persist-tun
 +
 +#Définit les fichiers que vous avez copier
 +ca ca.crt
 +cert Client01.crt
 +key Client01.key
 +
 +#permet la compression des données
 +comp-lzo
 +
 +#détails des logs
 +verb 3</code>
 +
 +Y'a plus qu'a lancer la connexion, même commande que pour lancer le serveur.
 +  /etc/init.d/openvpn restart
      
 +===== Problème MTU =====
 +
 +Après utilisation, j'ai constaté qu'un accès au bureau distant d'une machine via VNC ramait beaucoup trop à en perdre même la connexion...
 +
 +Le problème venait du réglage MTU.
 +
 +La machine distante passe par une freebox, j'ai donc ajusté le MTU à **1492**
 +  ifconfig eth0 mtu 1492
 +  
 +Pour le serveur, il existe une ligne à mettre dans le fichier de config d'openvpn pour faire un test de MTU
 +
 +Rajoutez **mtu-test** quelque part dans votre fichier de config.
 +
 +Relancer le serveur openvpn puis le client openvpn sur la machine distante.
 +
 +Regardons à présent les log.
 +
 +<code>
 +Thu Apr  8 13:54:54 2010 client-distant/88.88.88.88:49018 NOTE: Empirical MTU test completed [Tried,Actual] local->remote=[1541,1541] remote->local=[1541,1437]
 +Thu Apr  8 13:54:54 2010 client-distant/88.88.88.88:49018 NOTE: This connection is unable to accomodate a UDP packet size of 1541. Consider using --fragment or --mssfix options as a workaround.
 +</code>
 +
 +On constate que les chiffres de MTU sont différent sur la fin de la 1ère ligne **local->remote=[1541,1541] remote->local=[1541,1437]**
 +
 +Cette différence va engendrer un problème de fragmentation des paquets et à causé chez moi des pertes de connexion à VNC.
 +
 +J'ai donc rajouté ces 2 lignes dans le fichier de config du __**serveur et du client**__ openvpn 
 +  fragment 1437
 +  mssfix
 +
 +Après redémarrage du serveur puis du client, on retrouve dans les logs
  
 +<code>
 +Thu Apr  8 14:31:35 2010 client-distant/88.88.88.88:41551 NOTE: Beginning empirical MTU test -- results should be available in 3 to 4 minutes.
 +Thu Apr  8 14:34:40 2010 client-distant/88.88.88.88:41551 NOTE: Empirical MTU test completed [Tried,Actual] local->remote=[1389,1389] remote->local=[1437,1437]
 +</code>
  
 +On retrouve des valeurs cohérentes et pas de message d'erreur ;)
  
 +Au final, ma connexion VNC est instantanée ! 
linux/openvpn.1269597842.txt.gz · Dernière modification: 04-04-2013 22:05 (modification externe)