web-dev-qa-db-fra.com

OpenVPN: routez uniquement des adresses IP spécifiques via 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 les deux machines Win, le cas échéant).

Le serveur de fichiers possède ses propres mécanismes d'authentification assez robustes et me permet de me connecter directement à partir d'un emplacement distant.

Le serveur de base de données utilise un nom d'utilisateur et un mot de passe simples. Par conséquent, pour empêcher tout accès non autorisé, il est verrouillé sur le 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 du réseau privé.

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

Question:

Comment puis-je configurer le client OpenVPN pour acheminer UNIQUEMENT le trafic via le VPN destiné à une adresse IP unique et spécifique, à savoir le serveur de base de données?

39
Brian Lacy

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 de sous-réseau 192.168.0. * Via le VPN.

Pour un seul IP (192.168.0.1):

route-nopull 
route 192.168.0.1 255.255.255.255
46
Thomas

Buts

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

Pas

  1. Presse Win + R et exécutez ncpa.cpl.

  2. Cliquez avec le bouton droit sur la connexion VPN et accédez à Propriétés → Réseau .

  3. Sélectionnez Internet Protocol Version 4 et accédez à Propriétés → Avancé ... .

  4. Décochez Utilisez la passerelle par défaut sur le réseau distant , puis cliquez sur OK.

  5. (facultatif) Répétez les étapes précédentes pour Internet Protocol 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 .

    Sur ma machine, j'ai:

    Interface List
     32...........................Super Free VPN
    
    [...]
    
    Active Routes:
    Network Destination        Netmask          Gateway       Interface  Metric
              0.0.0.0          0.0.0.0         On-link        10.6.6.127     31
             10.0.0.0        255.0.0.0        10.88.1.1      10.88.1.102     31
    

    Ici, la passerelle du VPN est 10.88.1.1, car c'est la passerelle pour le bloc 10.xxx.xxx.xxx.

  9. Ajoutez un itinéraire persistant qui sera ajouté aux itinéraires actifs chaque fois qu'il y a une connexion au VPN:

    route -p add 23.22.135.169 10.88.1.1 if 32
    

    Dans cet exemple, 23.22.135.169 est l'adresse IP de whatismyip.org, 10.88.1.1 est l'adresse IP de la passerelle et 32, le numéro de l'interface.

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

  11. Testez la configuration.

    Si tout s'est bien déroulé, whatismyip.org et www.whatismyip.cx affichera maintenant différentes adresses IP.

24
Dennis

Dans votre configuration client OpenVPN, ajoutez une ligne comme celle-ci:

route The.IP.To.Go 255.255.255.255

(Où.IP.To.Go est l'adresse IP que vous souhaitez router via le VPN)

Ceci 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é à "transmettre" cette configuration de routage aux clients, en ajoutant à la configuration du serveur:

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

EDIT: Une chose qui me manquait dans l'adressage - le transfert par défaut de tout le trafic ... Il pourrait soit être désactivé sur le serveur, soit les clients pourraient choisir d'ignorer les directives "poussées" (notre deuxième option "pousser" la route ne fonctionnerait pas). ) via:

route-nopull
11
Adam