Il n’est pas rare de devoir se connecter à un VPN pour pouvoir accéder au serveur d’un client.

Le problème majeur c’est que (bien souvent), l’activation de ce VPN fait passer tout votre trafic Internet à travers ce VPN.

C’est très pratique si vous souhaitez être anonyme ! Mais si vous souhaitez accéder à ce réseau tout en continuant à utiliser votre propre serveur SMTP par exemple, cela devient rapidement problématique.

Voici la méthode que nous avons utilisé sachant que l’on avait aucun moyen de modifier le serveur VPN.

Etudier le fonctionnement du VPN

Afin de connaître le routage proposé par le VPN, nous avons étudié son comportement de cette manière :

  1. Connecter le VPN avec son fichier de configuration d’origine
  2. Lister les routes en place « route -n »
  3. Identifier la route dont nous allons avoir besoin pour accéder au serveur.

Stopper les routes en provenance du VPN

Dans le fichier de configuration de votre VPN nous y avons ajouté :

[sourcecode language= »bash »]
route-noexec
script-security 2
up /home/vm/config_openvpn/set_route.sh
[/sourcecode]

« route-noexec » indique au VPN de ne pas ajouter les gateways en provenance du VPN
« script-security 2 » baisse la sécurité pour que l’on puisse exécuter un script une fois le VPN activé
« up xxxx.sh » va exécuter le script xxxx.sh après que le VPN soit activé (UP).

Créé un fichier personnalisé pour les routes

Créer le fichier /home/vm/config_openvpn/set_route.sh en lui donnant les droits d’exécution.

Remplir ce fichier avec la configuration adaptée, par exemple :

[sourcecode language= »shell »]
#!/bin/sh
echo "***** PLICIWEB *****"
echo " on ajoute la route pour éviter de rediriger tout notre trafic vers le VPN option : route-noexec "
route add -net 192.168.0.0 netmask 255.255.0.0 gw 10.110.172.5
[/sourcecode]

Ce script a pour but d’ajouter la seule route dont nous avons besoin pour accéder aux serveurs accessibles par le VPN.

Cette route va éviter d’avoir une route globale qui redirige tout le trafic vers le VPN.

Ici, on redirige les Ips de type 192.168.*.* vers la gateway 10.110.172.5

Ensuite, vous n’avez plus qu’a relancer votre VPN et vérifier avec « route -n » que tout c’est bien passé.