Создание VPN-соединения с помощью OpenVPN
В сценарии рассматривается настройка OpenVPN-инстанса для доступа к виртуальным машинам Yandex.Cloud через шифрованное соединение. В сценарии рассматривается вариант настройки OpenVPN-шлюза с доступом по логину и паролю.
Чтобы настроить VPN-туннель:
- Подготовьте облако к работе.
- Создайте подсети и тестовую ВМ.
- Создайте OpenVPN-инстанс.
- Задайте пароль администратора.
- Создайте пользователя OpenVPN.
- Подключитесь к VPN.
Если OpenVPN-инстанс больше не нужен, удалите его.
Подготовьте облако к работе
Перед тем, как разворачивать сервер, нужно зарегистрироваться в Yandex.Cloud и создать платежный аккаунт:
- Перейдите в консоль управления, затем войдите в Yandex.Cloud или зарегистрируйтесь, если вы еще не зарегистрированы.
- На странице биллинга убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе
ACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша виртуальная машина, на странице облака.
Подробнее об облаках и каталогах.
Необходимые платные ресурсы
В стоимость поддержки инфраструктуры OpenVPN входят:
- плата за постоянно запущенные виртуальные машины (см. тарифы Yandex Compute Cloud);
- плата за использование динамического внешнего IP-адреса (см. тарифы Yandex Virtual Private Cloud).
Создайте подсети и тестовую ВМ
Для связи облачных ресурсов с интернетом необходимо иметь созданные сети и подсети.
Создайте тестовую виртуальную машину без публичного IP-адреса и подключите ее к подсети.
Создайте OpenVPN-инстанс
Создайте в Yandex.Cloud виртуальную машину, которая будет служить шлюзом для VPN-туннеля.
-
Откройте ваш каталог и нажмите кнопку Создать ресурс. Выберите пункт Виртуальная машина.
-
Укажите имя виртуальной машины, например
openvpn-instance
. -
Выберите зону доступности, где находится подсеть, к которой будет подключен OpenVPN-инстанс, и где уже находится тестовая ВМ.
-
В блоке Образы из Cloud Marketplace нажмите кнопку Выбрать и выберите образ OpenVPN.
-
В блоке Сетевые настройки выберите требуемую сеть, подсеть и назначьте ВМ публичный IP-адрес из списка или автоматически.
Используйте только статические публичные IP-адреса из списка, или сделайте IP-адрес созданной машины статическим. Динамический IP-адрес может измениться после перезагрузки ВМ и соединения перестанут работать.
-
В поле Доступ укажите логин и SSH-ключ для доступа к ВМ.
-
Нажмите кнопку Создать ВМ.
Задайте пароль администратора
На сервере OpenVPN заранее создан пользователь openvpn
с административными правами. Чтобы получить доступ к административной панели, нужно задать этому пользователю пароль.
-
Подключитесь к виртуальной машине по SSH:
$ ssh <публичный IP-адрес ВМ>
-
Выполните команду:
$ sudo passwd openvpn Enter new UNIX password:
Введите новый пароль.
После этого можно войти в административную панель OpenVPN.
Создайте пользователя OpenVPN
Для подключения через OpenVPN на клиентской машине нужно ввести логин и пароль пользователя. Создайте нового пользователя:
- Откройте в браузере URL вида
https://<публичный IP-адрес ВМ>:943/admin/
. - Введите имя пользователя
openvpn
и созданный на предыдущем шаге пароль. - Нажмите кнопку Agree. Откроется главный экран административной панели OpenVPN.
- Разверните вкладку User management и выберите пункт User permissions.
- В списке пользователей введите имя нового пользователя в поле New Username, например
test-user
. - Нажмите значок карандаша в столбце More Settings и в поле Password введите пароль нового пользователя.
- Нажмите кнопку Save settings.
- Нажмите кнопку Update running server.
После этого можно подключаться к VPN с помощью OpenVPN Connect.
Подключитесь к VPN
Чтобы убедиться, что соедиение устанавливается и работает, подключитесь к VPN и выполните команду ping
для внутреннего адреса тестовой ВМ:
- Запустите OpenVPN Connect Client.
- Создайте новое соединение. Укажите IP-адрес ВМ, пользователя
test-user
и его пароль. - Включите созданное соединение.
- Откройте терминал и выполните команду
ping <внутренний IP-адрес тестовой ВМ>
. Если команда выполняется, доступ к ВМ через OpenVPN есть.
Удалите созданные ресурсы
Если вам больше не нужен OpenVPN-инстанс, удалите ВМ openvpn-instance
и тестовую ВМ.
Если вы зарезервировали публичный статический IP-адрес, удалите его.