Les temps ont changé et à partir de 2017 (OpenVPN 2.4), cela est possible avec
pull-filter accept "route 192.168."
pull-filter ignore "route 172."
pull-filter accept "route 1"
pull-filter ignore "route "
Cet (exemple artificiel) permettra d'apprendre les routes qui commencent par 192.168, ignore toutes les 172. routes, autorise les autres routes à 1. tout et ignore ensuite toutes les autres routes.
Pour ignorer, redirect-gateway
vous pouvez:
pull-filter ignore redirect-gateway
Ces commandes sont ajoutées à votre fichier de configuration client.
De même, vous pouvez utiliser le mot clé reject
qui indique au serveur VPN qu'il n'a pas été accepté. Je ne suis pas sûr de l'utilisation de cela.
Et enfin, vous pouvez également filtrer d'autres options de configuration. J'ai utilisé cela pour ignorer les serveurs DNS proposés, car DNS est géré par un serveur local pour moi.
Après une étude approfondie du
openvpn
manuel, j'ai trouvé une réponse à ma question:Si vous ne voulez pas que les routes soient exécutées automatiquement, mais qu'elles soient gérées par votre propre outil, utilisez l'option suivante:
Si vous acceptez tout ce qui est poussé par le serveur à l'exception des routes, utilisez l'option suivante:
la source
route-nopull
dans le fichier de configuration .opvn: stackoverflow.com/questions/35698215/…Vous ne pouvez pas refuser des itinéraires individuels, mais si vous avez accès à la modification de votre configuration OpenVPN, vous pouvez effectivement arrêter le serveur pour
--push
toute configuration en supprimant toutes les instances declient
oupull
de votre configuration. Vous devrez plutôt ajoutertls-client
si cette directive n'existe pas déjà dans votre configuration (client
n'est qu'un synonyme depull
,tls-client
).Bien sûr, si vous faites cela, vous perdrez toutes les routes et toute autre configuration qui vous serait normalement
push
éditée, vous devrez donc configurer manuellement ces paramètres après le lancement de votre tunnel.la source