[заметка] Кастомизация конфигурации клиента OpenVPN в Linux
Обычно, для упрощения взаимодействия, на клиентских машинах с Linux устанавливаются пакет network-manager-openvpn-gnome
, в котором легко импортировать конфигурацию подключения к OpenVPN-серверу предоставляемую в виде единого файла. В последствии, там можно через GUI настроить все параметры маршрутизации и т.д., если нужно. Но тут по некоторым причинам в одной системе данная функциональность оказалась не доступной из-за того что служба NetworkManager не могла управлять интерфейсом, который являлся основным для данной системы и по ряду причин нельзя было сделать чтобы таки он мог этим интерфейсом управлять. В общем данная заметка о том как подключиться вручную используя консоль.
Предположим, у нас есть файл, выданный сисадиином некой организации, который использует метод авторизации TSL с ключом и паролем, который называется client1.ovpn
. В нормальных условиях, после подключения, весь трафик нашего компьютера заворачивается в этот туннель и он полностью подменяет наши локальные настройки DNS на свои.
Для начала следует переименовать данный файл и переместить в папку /etc/openvpn/
:
|
|
После чего убедиться что в системе установлены пакеты resolvconf
и openvpn-systemd-resolved
, чтобы OpenVPN мог управлять настройками DNS:
|
|
Далее, чтобы не вводить каждый раз при подключении пароль от TLS-ключа, добавим в наш файл конфигурации /etc/openvpn/client01.conf
следующую строку:
|
|
Сохраним в этот файл пароль:
|
|
Так же чтобы применялись настройки DNS при подключении следует добавить в конфигурацию строки:
|
|
Чтобы примениить какие-то собственные настройки DNS со стороны клиента можно добавить примерно такие строки:
|
|
Отключаем опцию создания маршрута по умолчанию для данного тоннеля:
|
|
Так же, чтобы добавить собственные маршруты, добавляем что-то примерно такого вида:
|
|
Теперь, чтобы подключиться используем команду:
|
|
Чтобы отключиться, соответственно:
|
|
А если мы хотим чтобы данное подключение поднималось автоматически при загрузке системы, то можно еще и так:
|
|