Хабрахабр

Установка и настройка OpenVPN сервера с помощью docker-compose

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

OpenVPN одна из самых популярных программ для организации VPN туннеля, а docker-compose отличный инструмент для установки и настройки программ с помощью одного docker-compose.yml файла.

За основу возьмем образ kylemanna/docker-openvpn. В статье я расскажу как быстро и просто настроить OpenVPN сервер на собственном VPS используя docker-compose.

Заинтересовавшихся прошу под кат.

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

Итак, для работы нам понадобятся: собственный VPS сервер, установленный docker и docker-compose.

Создаем новый docker-compose.yml

touch docker-compose.yml

Копируем следующие строчки в созданный docker-compose.yml

version: '2' services: openvpn: cap_add: - NET_ADMIN image: kylemanna/openvpn container_name: openvpn ports: - "1194:1194/udp" restart: always volumes: - :/etc/openvpn

Меняем {path_to_save_openvpn_config} на путь где OpenVPN будет хранить свои настройки, у меня это /home/administrator/openvpn/.

Запустим следующие команды для инициализации OpenVPN и создания сертификата сервера. Docker-compose файл готов. 10. Замените {vpn_server_address} на адрес вашего сервера,
это может быть как IP адрес (10. 8), так и доменное имя (vpn.server.com). 10.

docker-compose run --rm openvpn ovpn_genconfig -u udp://{vpn_server_address}
docker-compose run --rm openvpn ovpn_initpki

Во время генерации сертификата введите контрольную фразу (Enter PEM pass phrase) и имя сертификата (Common Name).

она понадобится на следующем шаге при создании клиентских сертификатов. Советую не забывать контрольную фразу, т.к.

Генерирование серверного сертификата

Генерирование сертификата обычно занимает некоторое время, так что откиньтесь на спинку стула и расслабьтесь.

Когда сертификат готов, можно запускать наш OpenVPN сервер.

docker-compose up -d openvpn

Создание клиентских сертификатов

Чтобы соединиться с вашим OpenVPN сервером понадобится клиентский сертификат.

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

docker-compose run --rm openvpn easyrsa build-client-full {client_name} nopass

Не забываем заменить {client_name} на имя клиента, например my_phone.

Во время создания сертификата вас попросят ввести контрольную фразу (Enter passpharse) из предыдущего шага.

Если вы хотите максимальной безопасности, рекомендую убрать опцию nopass из предыдущей команды, чтобы назначить клиентскому сертификату контрольную фразу.

Когда клиентский сертификат сгенерирован давайте экспортируем его в .ovpn файл и отправим клиенту

docker-compose run --rm openvpn ovpn_getclient {client_name} > certificate.ovpn

На этом все, надеюсь кому-то это статья поможет вновь ощутить свободу в интернете.

Дополнительную информацию вы можете найти на официальном сайте образа kylemanna/docker-openvpn.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть