В настоящее время я использую сервер Windows. Этот сервер Windows извлекает данные из удаленной базы данных, и поэтому подключен к удаленному серверу VPN постоянно. Поэтому мы используем OpenVPN в клиентском режиме с сертификатами, предоставленными удаленным сервером.
Теперь мы хотели бы разрешить сотрудникам подключаться удаленно. Обычно это работа на дому или работа во время конференций. Вот почему мы хотели бы добавить к этому серверу экземпляр openVPN, но на этот раз в режиме сервера.
С технической точки зрения я не вижу, что может быть проблемой в использовании двух экземпляров openVPN одновременно, поскольку мы используем две разные виртуальные сетевые карты. И обе подсети различны. Шлюз по умолчанию никогда не меняется (и никогда не изменится). Это могло бы избежать многих проблем.
Мне удалось установить две карты TAP (используемые openVPN). Я не знаю, как «привязать» экземпляр openVPN к определенной сетевой карте. Достаточно ли иметь две сетевые карты TAP? Как поступить, чтобы получить одного клиента и один сервер openVPN одновременно на одной машине?
Оригинальный пост
Я использую сервер Windows.
Мне нужно использовать openVPN как клиент и как сервер одновременно на одной машине. Возможно ли это?
Если да, то каковы ограничения?
Если нет, то есть ли другие альтернативы?
Я знаю, что на Linux есть возможности с использованием iptables, но я не знаю, возможно ли это на хосте Windows.
решение1
Наличие сервера и клиента OpenVPN TLS на одной машине возможно (я некоторое время назад запускал этот способ под Ubuntu и не думаю, что Windows создаст здесь проблему). Просто настройте их на использование разных портов и виртуальных сетевых карт TAP-Win32.
Предпочтительно настроить экземпляр клиента на включение nobind
опции, чтобы он использовал случайный динамический порт. Это позволит вам легко избежать конфликтов портов между экземплярами (по умолчанию OpenVPN всегда привязывается к порту по умолчанию 1194, даже в режиме клиента). Сервер должен привязываться к порту, вы можете дополнительно задать его, port $PORT
если порт по умолчанию вам не подходит. И на сервере, и на клиенте используйте dev-node $GUID
для назначения отдельного, специфичного для экземпляра адаптера TAP. GUID можно прочитать из реестра или с помощью консольной команды openvpn --show-adapters
.