Установка и настройка консольного клиента OpenVPN в Ubuntu.
В данной статье будет подробно описана установка и настройка консольного клиента OpenVPN OpenVPN в Ubuntu.

В предыдущей статье мы установили сервер openvpn и программу easy-rsa, необходимую для генерации сертификатов и ключей, сгенерировали сами ключи и сертификаты, выполнили настройку сервера, включили фаервол и разрешили подключения на нужный нам порт. В этой статье мы создадим файл конфигурации для клиента на Ubuntu, настроим и проверим, как все работает.

Установка и настройка клиента OpenVPN.

Для настройки клиента OpenVPN на Ubuntu (в примере использовалась Ubuntu 16.04) нам понадобится тот же пакет, что и для установки сервера.

Соответственно, все команды мы будем выполнять на клиенте (например, на домашнем ПК).

Выполните в консоли:

sudo apt install openvpn

Далее потребуется создать файл конфигурации клиента. Как и в случае с настройкой сервера, возьмем образец, предоставленный разработчиками, чтобы не создавать его с нуля:

sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client.conf
</код>
 
Откроем его и внесем свои правки:
 
```bash
sudo gedit /etc/openvpn/client.conf

Установка и настройка клиента OpenVPN

Сначала измените значение параметра remote на IP вашего сервера. Если вы по каким-либо причинам изменили номер порта, впишите соответствующее значение вместо стандартного 1194.

Раскомментируйте следующие строки так же, как делали это на сервере:

user nobody
group nogroup

Далее найдите блок, начинающийся с # SSL/TLS params. Внизу этого блока укажите пути к файлам ключей и сертификатов таким образом:

ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/home-pc.crt
key /etc/openvpn/keys/home-pc.key

Имена второго и третьего файлов могут быть другими — в зависимости от того, как вы назвали клиентский сертификат и ключ на первом этапе.

Еще ниже замените строку:

;tls-auth ta.key 1

на эту:

tls-auth /etc/openvpn/keys/ta.key 1

В следующем блоке замените:

;cipher x

на строку:

cipher AES-256-CBC   # AES

Если в файле конфигурации сервера вы указали другой тип шифрования, то и здесь нужно ввести его же.

Скачаем с сервера файлы ключей и сертификатов и разместим их в той директории, которую мы указали выше.

sudo mkdir /etc/openvpn/keys
sudo sftp имя_пользователя@ip_вашего_сервера:openvpn-certificates/keys/ca.crt /etc/openvpn/keys

Установка и настройка клиента OpenVPN

Потребуется ввести пароль пользователя вашего сервера. Возможно, потребуется подтвердить согласие на подключение — для этого введите «yes». Далее тем же способом получим еще два файла:

sudo sftp имя_пользователя@ip_вашего_сервера:openvpn-certificates/keys/home-pc.crt /etc/openvpn/keys
sudo sftp имя_пользователя@ip_вашего_сервера:openvpn-certificates/keys/home-pc.key /etc/openvpn/keys
sudo sftp имя_пользователя@ip_вашего_сервера:openvpn-certificates/keys/ta.key /etc/openvpn/keys

Перезапустите сервис openvpn:

sudo systemctl restart openvpn

Для единоразового подключения используйте команду:

sudo openvpn client.conf

После перезагрузки соединение должно устанавливаться автоматически.

Воспользуйтесь любым сервисом проверки ip-адреса, чтобы узнать, все ли работает как нужно. Если с работающей и остановленной службой openvpn ваши IP различаются, значит, вы настроили все верно.

Установка и настройка клиента OpenVPN

Установка и настройка клиента OpenVPN

Решение проблем.

В случае проблем первым делом проверьте логи:

grep OpenVPN /var/log/syslog

Если информации о проблеме в выводе команды нет, попробуйте увеличить значение параметра verb в самом конце файла /etc/openvpn/client.conf, чтобы сделать логи более подробными. Максимальное значение — 11. После этого снова перезапустите сервис openvpn и проверьте логи еще раз.

Для большего удобства можно указать в конфигурационых файлах клиента и сервера параметр log-append, добавив после пробела желаемое расположение файла с логом. В этом случае получать информацию о происходящем будет удобнее.

Если соединение слишком медленное, попробуйте добавить в файлы конфигурации клиента и сервера (в моей серии статей это etc/openvpn/client.conf и etc/openvpn/server.conf соответственно) строки:

sndbuf 0
rcvbuf 0

Не забудьте добавить эти же строки в файлы конфигурации остальных клиентов, если они есть. И сервер, и клиенты нужно будет перезапустить.

Можно также попробовать отключить сжатие трафика, после чего сравнить результаты и оставить лучший вариант. Для этого и в /etc/openvpn/server.conf, и в /etc/openvpn/client.conf нужно закомментировать (поставить «;» в начале строки) параметр comp-lzo.

Обратите внимание: состояние этой и многих других директив на сервере и клиентах должно быть одинаковым!

P.S.

В начале цикла статей об OpenVPN я уже упоминал, что защита, которую дает это ПО, хороша, но не абсолютна. Один из способов повысить ее эффективность — скрыть сам факт использования OpenVPN. Если будет достаточное количество желающих, я расскажу, как это сделать.


Комментарии отключены