Configurer VPNTunnel sous Ubuntu

Date: 30/09/2010 | Catégories: Open-source,Planet-libre,Reseau,Systeme | Tags: ,,,,

VPNTunnel est un service VPN permettant d'accéder à Internet de manière complètement anonyme. Comme tous les services de VPN en ligne, il propose de créer une liaison chiffrée entre votre machine et des serveurs (ici localisés en Suède) qui ne garderons aucunes informations sur votre trafic. Nous allons voir dans ce billet comment configurer une machine sous Ubuntu pour la rendre invisible à Hadopi aux mouchards d'Internet...

Pourquoi VPNTunnel ?

Comme vous pouvez le voir sur leur site, ce service est payant (environ 5€ par mois, avec un tarif dégressif sur des abonnements longues durées). Ils existent des solutions gratuites (voir le Wiki de Korben sur le sujet), mais pour en avoir testé, aucune n'est à l'heure actuelle assez stable pour une utilisation quotidienne.

Parmi les offres payantes, VPNTunnel a pour moi deux avantages:

  • le prix
  • l'utilisation d'OpenVPN, une solution libre et parfaitement intégré à GNU/Linux

Enregistrement sur le site VPNTunnel

On commence par prendre un abonnement (par exemple sur 3 mois, soit 14€) en allant sur leur site.

On clique en suite sur Order (1), puis on sélectionne l'offre/la durée d'abonnement désirée  (2), le mode de paiement (par exemple Paypal !) puis le mail de contact sur lequel les login/password seront envoyés (3), puis le nom de login souhaité (4). On finalise en cliquant sur Continue.

Après quelques secondes (c'est beau l'internet...), vous devriez recevoir un mail avec votre compte:

Configuration de votre machine Ubuntu

Avec le compte reçu par mail, vous pouvez vous connecter sur l'interface d'administration de votre VPN (le formulaire d'authentification se trouve en haut à droite de leur site).

Pour celà on va dans le menu "Software" de l'interface d'administration:

On va ensuite récupérer les deux fichiers nécessaires à la configuration de notre VPN en cliquant sur les liens:

  • (1) Config: téléchargement des fichiers openvpn-XX.conf (fichier de configuration openvpn)
  • (2) Download VPN certificate: téléchargement du fichier ca-XX.crt (Certificat racine CA)

On installe les pré-requis système en saisissant les lignes suivantes dans un terminal:

sudo aptitude install openvpn resolvconf network-manager-openvpn

sudo mkdir /etc/openvpn/keys

Puis on copie les deux fichiers préalablement téléchargés dans les répertoires suivants:

sudo cp *.conf /etc/openvpn/

sudo cp *.crt /etc/openvpn/keys/

sudo ln -s /etc/openvpn/openvpn-NL.conf /etc/openvpn/openvpn.conf

Déclaration du VPN en utilisant le Network Manager

On commence par cliquer sur l'icone Network Manager > Connexion VPN > Configurer le VPN:

On clique ensuite sur le bouton Import:

On sélectionne ensuite le fichier de configuration OpenVPN: /etc/openvpn/openvpn.conf.

Puis on saisi les informations manquantes (nom du tunnel (1), login (2), password (3), fichier ca.crt (4)):

Le nouveau tunnel VPN devrait apparaître dans le Network Manager:

Connexion au VPN

Il suffit de cliquer sur l'icône Network Manager > Connexions VPN > Vpntunnel:

Si tout est ok (sinon lire le chapitre suivant...), l'icône Network Manager devrait se modifier et faire apparaître un cadenas:

Cela vous signale que vous êtes connecté à Vpntunnel et que vous pouvez commencer à surfer / télécharger de manière anonyme.

Pour le vérifier, le plus simple est de se rendre sur le site WhatsMyIp:

L'adresse 178.73.209.150 correspond bien à une adresse Suédoise comme nous l'indique un Whois:

# whois 172.73.209.150

inetnum: 178.73.192.0 - 178.73.255.255

netname: SE-PORTLANE-20100322

descr: Power och Random T-Lane AB

country: SE

org: ORG-PS39-RIPE

admin-c: PN1967-RIPE

tech-c: PN1967-RIPE

status: ALLOCATED PA

mnt-by: RIPE-NCC-HM-MNT

mnt-lower: MNT-PORTLANE

mnt-routes: MNT-PORTLANE

source: RIPE # Filtered

Et si cela ne marche pas ?

Si comme moi vous rencontrez le message suivant lors de la connexion à votre VPN:

"La connexion VPN a échoué car il n'y avait pas de secret VPN valides"

Il suffit de modifier le fichier /etc/dbus-1/system.d/nm-openvpn-service.conf en ajoutant:

<policy user="at_console">

<allow own="org.freedesktop.NetworkManager.vpnc"/>

<allow send_destination="org.freedesktop.NetworkManager.vpnc"/>

</policy>

Ce qui donne donc:

<busconfig>

<policy user="root">

<allow own="org.freedesktop.NetworkManager.openvpn"/>

<allow send_destination="org.freedesktop.NetworkManager.openvpn"/>

</policy>

<policy user="at_console">

<allow own="org.freedesktop.NetworkManager.vpnc"/>

<allow send_destination="org.freedesktop.NetworkManager.vpnc"/>

</policy>

<policy context="default">

<deny own="org.freedesktop.NetworkManager.openvpn"/>

<deny send_destination="org.freedesktop.NetworkManager.openvpn"/>

</policy>

</busconfig>

Après cette manipulation et un reboot tout devrait rentrer dans l'ordre.

Déconnexion du VPN

Pour se déconnecter du VPN, il suffit de cliquer sur Network Manager > Connexions VPN > Déconnecter le VPN:

Voilà un moyen efficace de sécuriser sa connexion Internet comme nous le demande Hadopi (peut être pas aussi efficace que le firewall OpenOffice > Libre Office, mais bon...).

Mon avis sur Vpntunnel

Je suis très surpris par la stabilité du VPN qui fonctionne 24/24 sans interruption depuis quelques jours.

Niveau performance, c'est indétectable lors des surfs. J'ai mesuré une baisse inférieure à 10% de débit lors de transferts de gros fichiers via FTP. Par contre on voit que les délais de transit passent d'environ 40ms de moyenne à plus de 90ms.

Complément de tests:

Je viens de faire des tests depuis chez moi (opérateur Free). Pour cela j'ai utilisé le service en choisissant un serveur cible en France (Paris).

Voici les résultats obtenus tout d'abord sans le VPN:

Puis avec:

On obtient donc:

  • une perte de 10% sur le download
  • une perte de 7% sur l'upload
  • une perte de 200% pour le délais de transit