Назад в блог

Запустите свой собственный VPN-сервер под Docker с OpenVPN Access Server

Запустите свой собственный VPN-сервер под Docker с OpenVPN Access Server

В этом руководстве я настрою сервер Open VPN в Docker с помощью CloudSigma. Благодаря облачным локациям CloudSigma, распределенным по всему миру, вы можете создать сервер в любой из них и получать доступ к контенту оттуда.

Создание машины

Сначала я создаю машину со следующими ресурсами:
20 ГГц ЦП
16 ГБ ОЗУ
20 ГБ SSD
Я монтирую диск с образом Ubuntu 18.04, доступным в библиотеке CloudSigma.

Ubuntu 18.04: предустановленная 64-битная версия с драйверами VirtIO, суперпользователем, Python 2.7.15, Pip 18.0, OpenSSL 1.1.0i, Cloud-init и последними обновлениями до 30.09.2018.

Обновление всех существующих репозиториев и пакетов на машине.

Теперь, когда наша система обновлена, я перейду к установке Docker. Для получения дополнительной информации о Docker, пожалуйста, перейдите сюда.

Установка Docker

Я могу установить Docker, выполнив следующие команды:

 

OpenVPN

Теперь, когда Docker успешно установлен, я могу приступить к запуску OpenVPN Access Server на нем. Ниже приведена команда для создания нового Docker-контейнера OpenVPN Access Server с указанной конфигурацией.

 

Следующие команды упомянуты на странице Docker-образа.
Где openvpn-as должен хранить файлы конфигурации:

Для GroupID:

Используется для UserID:

Для настройки часового пояса:

Настройка интерфейса для openvpn-as, по умолчанию используется eth0:

ВАЖНО: для большинства пользователей требуется работа в режиме host:

ВАЖНО: не будет работать без привилегированного режима (privileged):

Чтобы получить ID группы и ID пользователя, выполните следующую команду:

Я указываю часовой пояс как CET.

Для определения интерфейса выполните следующую команду:

Интерфейсом обычно является ens3 или eth0. В моей системе это ens3.

После добавления всех этих параметров я выполняю следующую команду:

Поскольку этого образа еще нет в нашей системе, он будет загружен с сервера. Результат будет следующим:

Запуск контейнера с помощью этой команды:

Войти

Теперь, когда я запустил его, я перейду в панель администратора сервера доступа.

Переход по URL-адресу: https://<<YourIpAddress>>:943/admin

PenVPN LogIn Screen

Потребуется ввести имя пользователя и пароль, которые по умолчанию:
Имя пользователя: admin
Пароль: password

OpenVPN Access Server License Agreement

После входа появится запрос на принятие EULA (Лицензионного соглашения с конечным пользователем). Нажимаю «Agree» (Согласен) и перехожу в панель управления администратора.

VPN server under Docker

В целях безопасности рекомендуется изменить пароль учетной записи администратора. Я меняю его с помощью следующей команды:

Настройка DNS

Теперь, когда наш сервер запущен и работает, мы хотим настроить в нем DNS. Для получения дополнительной информации о серверах доменных имен (DNS), пожалуйста, нажмите здесь.

Один из самых быстрых DNS-серверов — это сервер Google. Я собираюсь настроить его в своем OpenVPN Access Server, чтобы мои клиенты могли легко просматривать веб-сайты.

Я перехожу в настройки VPN и в разделе настроек DNS включаю опцию «Have clients use specific DNS servers» (Использовать клиентами определенные DNS-серверы).

VPN Settings

Затем я введу следующие адреса в столбцы DNS-серверов:
Первичный DNS-сервер: 8.8.8.8
Вторичный DNS-сервер: 8.8.8.4

DNS Settings

Сохраните настройки и нажмите «Update Running Server» (Обновить работающий сервер). Это обновит работающий сервер.

Теперь, когда я успешно настроил сервер, я могу перейти к подключению к VPN через свою систему.

Доступ к клиентскому интерфейсу по адресу: https://<<YourIpAddress>>:943.

Введите имя пользователя и пароль администратора или создайте нового пользователя в разделе «User Management» (Управление пользователями) панели администратора.

После входа в систему мне будут предложены различные варианты для разных ОС. Я выбираю Windows и скачиваю клиентское ПО.

OpenVPN Connect app

Теперь, когда оно установлено, я могу запустить его из меню «Пуск» или оно запустится автоматически. Из системного трея я могу подключиться к VPN, используя учетную запись, которую я настроил ранее.

Connect to OpenVPN

И я подключен к VPN. Вуаля! Вот так создается VPN-сервер в Docker.

author

Akshay Nagpal

Автор · CloudSigma

Preslav Dobrev — креативный дизайнер в CloudSigma, сосредоточенный на формировании последовательного корпоративного образа с помощью традиционных и инновационных маркетинговых каналов. Он умело сочетает художественное видение со стратегическим маркетингом, создавая убедительные истории бренда.

Комментарии

Комментариев пока нет. Будьте первым.