2012-08-03 01:03:06 +0000 2012-08-03 01:03:06 +0000
50
50

OpenVPN : n'acheminer qu'une adresse IP spécifique par VPN ?

Sur un réseau privé distant, il y a deux serveurs : un serveur de fichiers et un serveur de base de données (ce sont tous deux des machines Win, au cas où cela serait important).

Le serveur de fichiers possède ses propres mécanismes d'authentification assez robustes, et me permet de me connecter directement à distance.

Le serveur de base de données utilise un simple nom d'utilisateur et un mot de passe, donc pour empêcher tout accès non autorisé, il est verrouillé au réseau local – le trafic externe est bloqué.

Pour accéder au serveur de base de données, j'utilise le client OpenVPN sous Windows pour me connecter à un serveur VPN sur le réseau privé.

Par défaut, OpenVPN achemine tous les paquets réseau destinés au réseau distant sur lequel réside le serveur VPN, via le VPN. Malheureusement, l'accès au serveur de fichiers via le VPN est extrêmement lent !

Question:

Comment puis-je configurer le client OpenVPN pour router UNIQUEMENT le trafic à travers le VPN qui est destiné à une seule adresse IP spécifique – à savoir le serveur de base de données ?

Réponses (5)

57
57
57
2013-08-06 08:15:41 +0000

La configuration correcte pour OpenVpn est :

route-nopull 
route 192.168.0.0 255.255.255.0

Ces entrées appartiennent à votre fichier .ovpn et dirigeront tout le trafic du sous-réseau 192.168.0.* à travers le VPN.

Pour une seule IP (192.168.0.1) :

route-nopull 
route 192.168.0.1 255.255.255.255
27
27
27
2012-08-03 03:53:45 +0000

Objectifs

  • Utiliser par défaut la connexion Internet ordinaire pour tout le trafic Internet, même lorsque le VPN est connecté.
  • Acheminer le trafic vers une adresse IP spécifique via le VPN.

Étapes

  1. Appuyez sur Win + R et exécutez ncpa.cpl.

  2. Cliquez avec le bouton droit de la souris sur la connexion VPN et allez sur Properties → Networking.

  3. Sélectionnez Internet Protocol Version 4 et allez sur Properties → Advanced….

  4. Décochez Utiliser la passerelle par défaut sur le réseau à distance et cliquez sur OK.

  5. (facultatif) Répétez les étapes précédentes pour Protocole Internet Version 6.

  6. (Re)connectez-vous à votre VPN.

  7. Ouvrez une invite de commande et exécutez route print -4.

  8. Repérez l'interface du VPN dans la liste des interfaces et sa passerelle dans les routes actives.

  9. Ajouter une route persistante qui sera ajoutée aux routes actives chaque fois qu'il y a une connexion au VPN :

  10. (facultatif) Répéter les étapes précédentes pour route print -6.

  11. Testez la configuration.

12
12
12
2013-02-04 14:38:03 +0000

Dans la configuration de votre client OpenVPN, ajoutez une ligne du type

route The.IP.To.Go 255.255.255.255

(Où l'adresse IP est l'adresse IP que vous souhaitez router à travers le VPN)

Cela indique à OpenVPN de créer l'entrée dans la table de routage de votre système d'exploitation.

Alternativement, le serveur OpenVPN pourrait être amené à “pousser” cette configuration de routage vers les clients, en l'ajoutant à la configuration du serveur :

push "route The.IP.To.Go 255.255.255.255"

EDIT : Une chose qui m'a manqué, c'est la redirection par défaut de tout le trafic… Il pourrait être désactivé sur le serveur, ou les clients peuvent choisir d'ignorer les directives “poussées” (donc notre seconde option “pousser” la route ne fonctionnerait pas) via :

route-nopull
0
0
0
2020-01-10 21:36:56 +0000

En réponse aux commentaires demandant une solution facile pour linux/networkmanager afin de personnaliser ce qui est routé sur OpenVPN, voici une manière conviviale de la mettre en place. Cette réponse est, pour autant que je sache, juste la version GUI de réponse de Thomas .

Etape 1 : sélectionnez votre configuration VPN

Etape 2 : allez dans l'onglet correspondant (soit IPv4 soit IPv6)

Etape 3 : Cliquez sur le bouton “Routes…” en bas à droite

étape 4 : Ajoutez la route souhaitée (dans ce cas, elle redirige tout le trafic de 192.168.0.* vers le VPN

étape 5 : cochez la case “utiliser uniquement les ressources de cette connexion” pour que la connexion au VPN ne modifie pas les paramètres par défaut de votre passerelle pour acheminer tout le trafic par le VPN.

-3
-3
-3
2015-02-13 09:07:32 +0000
iptables -A PREROUTING -t mangle -i <LAN_interface> \
-d <remote_network>/<remote_netmask> -j ROUTE --gw <openvpn_host_ip>