OpenVPN rend la passerelle de redirection facultative

15

J'exécute actuellement un serveur OpenVPN pour plusieurs clients. Tout le trafic est dirigé via le VPN (il est configuré comme passerelle; appuyez sur "redirect-gateway def1").

Jusqu'à présent, tout fonctionne bien. Cependant, je voudrais connecter quelques serveurs à ce réseau privé virtuel, sans que ces serveurs utilisent le démon OVPN comme passerelle.

Ces serveurs doivent être accessibles à la fois à partir de leur WAN ainsi que de leur adresse IP LAN. Certains services ne seront accessibles que du côté LAN.

Existe-t-il un moyen, pour un client, d'ignorer l'option push redirect-gateway?

Cordialement, Tuinslak

Tuinslak
la source
Grande question ... Je me posais exactement la même chose.
Antoine Benkemoun

Réponses:

15

Ajoutez simplement "route-nopull" à la configuration client openvpn, puis toutes les commandes poussées du serveur seront ignorées. Pour accéder au réseau local, vous devez maintenant ajouter, par exemple, "route 192.168.5.0 255.255.255.0" à la configuration client openvpn, si le réseau local auquel vous souhaitez vous connecter est 192.168.5.0/24.


la source
Cela provoque des erreurs de connexion mais fonctionne comme prévu :)
Brian Ramsey
La meilleure option de nos jours (2.4 ou version ultérieure) seraitpull-filter ignore redirect-gateway
mwfearnley
8

si 'redirect-gateway' est requis pour certains mais pas pour tous les clients alors ajoutez une option 'client-config-dir' par exemple

  rép-config-client / etc / openvpn / clients

et à l'intérieur de ce répertoire, mettez des fichiers pour chaque client CN, par exemple, le fichier Client1contiendrait

  push-reset

de cette façon, les serveurs ne reçoivent pas la «passerelle de redirection» par défaut.

HTH

janjust
la source
1
Je suppose que cela réinitialiserait chaque option poussée (y compris les serveurs DNS)?
Tuinslak
2

remplacez simplement la passerelle par défaut dans le script --up et vous êtes prêt. Vous n'avez même pas besoin de faire quoi que ce soit dans - down (je pense) ou simplement de le configurer sur up.sh également.

dans client.conf

up up.sh

dans up.sh (chmod + x)

#!/bin/bash
/sbin/ip route replace default 1.2.3.4

où 1.2.3.4 est la passerelle par défaut de votre client

Aleksandar Ivanisevic
la source
1

Il existe une solution plus récente et plus simple pour cela, à partir de décembre 2016.

Il vous suffit de mettre cette ligne dans votre configuration OpenVPN:

pull-filter ignore redirect-gateway

Littéralement, il filtre les options qu'il extrait du serveur et ignore l' redirect-gatewayoption.

(Selon https://community.openvpn.net/openvpn/wiki/IgnoreRedirectGateway , cela a été ajouté dans OpenVPN 2.4, qui a été publié vers décembre 2016.)

mwfearnley
la source
-1

Remvoe "redirect-gateway" option dans le fichier de configuration client, la passerelle par défaut du client ne changera plus. testé sous Archlinux / OpenVPN 2.3.2.

shaozx
la source
Je suppose que cette solution dépendra de la configuration de la passerelle sur le client ou de sa diffusion depuis le serveur.
mwfearnley