OpenVPN делает редирект-шлюз необязательным


15

В настоящее время я использую сервер OpenVPN для нескольких клиентов. Весь трафик направляется через VPN (он настроен как шлюз; нажмите «redirect-gateway def1»).

Пока все работает нормально. Однако я хотел бы подключить пару серверов к этой виртуальной частной сети, чтобы эти серверы не использовали демон OVPN в качестве шлюза.

Эти серверы должны быть доступны как из их глобальной сети, так и из их IP-адреса в локальной сети. Некоторые услуги будут доступны только со стороны локальной сети.

Есть ли способ для клиента игнорировать опцию push redirect-gateway?

С уважением, Туинслак


Отличный вопрос ... Я спрашивал себя точно так же.
Антуан Бенкемун

Ответы:


15

Просто добавьте "route-nopull" в конфигурацию клиента openvpn, тогда все отправленные команды с сервера игнорируются. Чтобы получить доступ к локальной сети, вы должны добавить, например, «route 192.168.5.0 255.255.255.0» в конфигурацию openvpn клиента, если локальная сеть, к которой вы хотите подключиться, - 192.168.5.0/24.


Это вызывает некоторые ошибки при подключении, но работает как задумано :)
Brian Ramsey

Лучший вариант в настоящее время (2.4 или позже) будетpull-filter ignore redirect-gateway
mwfearnley

8

если 'redirect-gateway' требуется для некоторых, но не для всех клиентов, добавьте опцию 'client-config-dir', например

  client-config-dir / etc / openvpn / clients

и внутри этого каталога поместите файлы для каждого клиента CN, например, файл Client1будет содержать

  нажимной сброса

таким образом серверы не получают «перенаправление-шлюз» по умолчанию.

НТН


1
Я предполагаю, что это сбросит каждый выдвинутый параметр (включая DNS-серверы)?
Tuinslak

2

просто замените шлюз по умолчанию в скрипте --up, и все готово. Вам даже не нужно ничего делать в --down (я думаю) или просто установить его в up.sh.

в client.conf

up up.sh

в уп.ш (chmod + x)

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

где 1.2.3.4 - шлюз вашего клиента по умолчанию


1

По состоянию на декабрь 2016 года для этого существует более новое и простое решение.

Вам просто нужно поместить эту строку в конфигурацию OpenVPN:

pull-filter ignore redirect-gateway

Буквально, он фильтрует параметры, которые он извлекает с сервера, и игнорирует redirect-gatewayпараметр.

(Согласно https://community.openvpn.net/openvpn/wiki/IgnoreRedirectGateway , это было добавлено в OpenVPN 2.4, который был выпущен около декабря 2016 года.)


-1

Remvoe «redirect-gateway» в файле конфигурации клиента, шлюз по умолчанию клиента больше не будет меняться. протестировано под Archlinux / OpenVPN 2.3.2.


Я предполагаю, что это решение будет зависеть от того, настроен ли шлюз на клиенте, или выдвинут с сервера.
mwfearnley
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.