В локальной сети есть один сервер (под управлением Debian 7) и один удаленный VPN-сервер. У меня нет контроля над удаленным VPN-сервером. Мне нужен сервер в локальной сети для предоставления услуг (веб-сервер и т. Д.) Напрямую в Интернет, в то время как мне нужны другие соединения для туннелирования через удаленный VPN.
Я знаю, как настроить локальный сервер для использования удаленного VPN-сервера с помощью OpenVPN, но тогда все подключения туннелируются, и сервер больше не прослушивает входящие подключения из Интернета (только для входящих подключений через удаленный vpn) и не может делать без туннелирования подключения к Интернету.
Есть ли способ настроить OpenVPN или Debian, чтобы разрешить два типа подключения одновременно, чтобы я мог привязать все интернет-сервисы к Интернету, а другие - к туннельной сети?
Это происходит, когда OpenVPN настроен так, чтобы клиент автоматически маршрутизировать весь трафик через VPN. Вам нужно будет отключить это.
Ищите redirect-gateway
в конфигурации сервера OpenVPN и удалите его. Например, это может выглядеть так:
push "redirect-gateway def1"
push "redirect-gateway local def1"
Вам может понадобиться настроить дополнительные статические маршруты для сетей на другой стороне VPN-соединения.
Чтобы добиться раздельного туннелирования, даже если удаленный сервер инструктирует клиент OpenVPN использовать туннель для всего, вы должны создать route-up
сценарий на клиенте, который переопределяет маршрут по умолчанию:
#!/bin/bash
/sbin/route delete default
/sbin/route add default $route_net_gateway
Это должно восстановить маршрут по умолчанию, который существовал до установления соединения VPN.