07.08.2022

Установка OpenVPN сервера на Ubuntu 20.04

В этой статье описан процесс установки OpenVPN на Ubuntu 20.04.
Для начала требуется произвести вход в систему с root-правами, при этом зная публичный IP сервера, с которым устанавливается VPN.

Установим и настроим OpenVPN

Для установки и последующей настройки пакетов, требуемых при запуске OpenVPN, будет использован соответствующий скрипт. Вам следует предоставить ему корректный IP-адрес сервера.
Загрузим данный скрипт:

wget https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh

Далее необходимо сделать его исполняемым:

chmod +x openvpn-install.sh

А затем запустить:

./openvpn-install.sh

Некоторые из параметров по умолчанию оптимальны - просто подтвердите их. Единственное, что требует проверки и возможного редактирования - публичный IP. Остальное редактируйте только в случае знания и понимания желаемого варианта установки.

Скриншот 1. Параметры установки OpenVPN

Последним шагом укажите имя клиента и сделайте выбор - необходим ли пароль для защиты конфигурации или нет. Из соображений безопасности рекомендуем установить его.

После завершения процесса сделаем проверку - прослушиваются ли входящие подключения.

ss -tupln | grep openvpn

Скриншот 2. Прослушивание OpenVPN входящих подключений

Подключим клиент

Для отображения процесса подключения клиента отлично подойдет альтернативная машина Ubuntu. Аналогично можно настроить и другие Linux-системы или же загрузить Windows: https://openvpn.net/community-downloads/

В завершении, после создания конфигурации и указания пути, загрузите ее.

scp user@vpn-server:/path/to/configuration.ovpn /home/user

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

sudo apt install openvpn

Запустим клиент и укажем путь к конфигурации, загруженной с сервера.

openvpn --config /path/to/configuration.ovpn

Следующая строка покажет, что подключение успешно.

Добавление и удаление клиентов

Для добавления / удаления клиентов, а также удаления OpenVPN необходимо вновь запустить скрипт и выбрать подходящий вариант.

./openvpn-install.sh

Результат: