Есть машина с Ubuntu, которая соединяется посредством OpenVPN с рабочей сетью, IP дается DHCP и всегда разный. Сейчас весь траффик идет через VPN сервер, независимо от предназначения. Например, серфинг или торренты.
Хотелось бы ограничить роутинг так, чтобы через VPN соединение шел траффик предназначенный непосредственно для рабочей сети и никакой другой.
По идее могу написать простой скрипт который будет удалять пути, созданные OpenVPN клиентом, и пересоздавать новые, но думаю, есть уже какое-то готовое решение, которое я просто не нашел.
маршрутизацию на конечном хосте настроить. дефолт через провайдера, маршруты в «затуннельные» сети через впн-peer. вообще, вроде как, по умолчанию openvpn так и работает. если у вас он отдает дефолт клиенту, то это в конфиге правится.
так в OpenVPN можно per user настройки делать.
задаем client-config-dir, в ней складываем персональные конфиги для разных юзеров. общие маршруты пишем в конфиг сервера, дополнительные каждому по необходимости и при коннекте клиент получает только то что задано для него. кому шлюз не нужен его не получат. правда придется вынести разадчу шлюзов в индивидульные настройки если она раньше pushилась из общего конфига. или поискать как ее в клиентском «затирать», может есть такая возможность да я о ней не знаю
тогда да, ручками (батником) удаляете у себя дефолт на openvpn, добавляете его на ваш местный шлюз, далее маршруты в сеть vpn и на удаленные хосты поштучно/сетями.
sudo apt-get install network-manager-openvpn-gnome<pre>
В нетворк манагере импортируем фйлик .ovpn (с настройками OpenVPN)
В свойствах VPN-подключения заходим в "Параметры IPv4", там маршруты (Routes) -> Ставим галку на "Использовать это соединение только для ресурсов..."
Если нужен DNS - В параметрах IPv4 В профиле ставим (Автоматически, VPN - только адрес) и прописываем ДНС-сервер.
Чтобы у меня заработал ДНС, мне пришлось перезагрузиться. Маршруты заработали сразу после подключения.