Czasy się zmieniły, a od 2017 r. (OpenVPN 2.4) jest to możliwe dzięki
pull-filter accept "route 192.168."
pull-filter ignore "route 172."
pull-filter accept "route 1"
pull-filter ignore "route "
Ten (wymyślony przykład) pozwoli nauczyć się tras rozpoczynających się od 192.168, ignoruje wszystkie 172. trasy, pozwala innym trasom na 1. dowolne, a następnie ignoruje wszystkie inne trasy.
Aby zignorować redirect-gateway
, możesz:
pull-filter ignore redirect-gateway
Te polecenia są dodawane do pliku konfiguracyjnego klienta.
Podobnie możesz użyć słowa kluczowego, reject
które informuje serwer VPN, że nie został zaakceptowany. Nie jestem pewien, czy to wykorzysta.
Na koniec możesz też filtrować inne opcje konfiguracji. Użyłem tego, aby zignorować oferowane serwery DNS, ponieważ DNS jest dla mnie obsługiwany przez serwer lokalny.
Po dogłębnym przestudiowaniu
openvpn
instrukcji znalazłem odpowiedź na moje pytanie:Jeśli nie chcesz, aby trasy były wykonywane automatycznie, ale są obsługiwane przez własne narzędzie, użyj następującej opcji:
Jeśli akceptujesz wszystko, co jest przesyłane przez serwer oprócz tras, użyj następującej opcji:
źródło
route-nopull
w pliku konfiguracyjnym .opvn: stackoverflow.com/questions/35698215/…Nie możesz odmówić pojedynczym trasom, jednak jeśli masz dostęp do edycji konfiguracji OpenVPN, możesz skutecznie zatrzymać serwer, który
--push
konfiguruje dowolną konfigurację, usuwając wszystkie wystąpieniaclient
lubpull
z konfiguracji. Zamiast tego musisz dodać,tls-client
jeśli ta dyrektywa nie istnieje jeszcze w twojej konfiguracji (client
jest tylko synonimempull
,tls-client
).Oczywiście, jeśli to zrobisz, stracisz wszystkie trasy i wszelkie inne konfiguracje, które normalnie byłyby
push
dla Ciebie edytowane, więc będziesz musiał ręcznie skonfigurować te ustawienia po uruchomieniu tunelu.źródło