Pritunl
Pritunl — программное обеспечение с открытым исходным кодом для создания VPN-инфраструктуры. Позволяет создать безопасное и удобное подключение к локальной сети по типу site-to-site.
Можно создать облачный сервер с готовым приложением Pritunl, а затем настроить на нем VPN-сервер. После настройки VPN-сервера пользователи смогут подключиться к VPN.
Создать облачный сервер с Pritunl
-
В панели управления перейдите в раздел Облачная платформа → Серверы.
-
Нажмите Создать сервер.
-
В блоке Имя и расположение:
3.1. В поле Имя введите имя сервера. Оно будет установлено как имя хоста в операционной системе.
3.2. В полях Регион и Пул выберите регион и сегмент пула, в котором будет создан сервер. От сегмента пула зависит список доступных конфигураций сервера и стоимость ресурсов. После создания сервера изменить сегмент пула нельзя.
-
В блоке Источник нажмите на имя источника по умолчанию → вкладка Приложения, выберите
Cloud Pritunl <version> 64-bit
и нажмите Выбрать. -
В блоке Конфигурация выберите конфигурацию сервера от 1 vCPU, RAM от 1 ГБ и размером загрузочного диска от 10 ГБ. Можно выбрать:
- фиксированную конфигурацию — линейки, в которых зафиксировано соотношение ресурсов;
- или произвольную конфигурацию, в которой можно указать любое соотношение ресурсов.
В конфигурациях используются разные процессоры в зависимости от линейки и сегмента пула.
5.1. Чтобы выбрать фиксированную конфигурацию, нажмите Фиксированная, откройте вкладку с нужной линейкой и выберите конфигурацию. Объем оперативной памяти, который выделяется серверу, может быть меньше указанного в конфигурации — ядро операционной системы резервирует часть оперативной памяти в зависимости от версии ядра и дистрибутива. Выделенный объем на сервере можно проверить с помощью команды
sudo dmesg | grep Memory
.После создания сервера можно изменить конфигурацию.
5.2. Чтобы выбрать произвольную конфигурацию, нажмите Произвольная, укажите количество vCPU и размер RAM.
5.3. Выберите загрузочный диск сервера:
- если в качестве загрузочного диска сервера нужно выбрать локальный диск, отметьте чекбокс Локальный SSD NVMe диск;
- если в качестве загрузочного диска сервера нужно выбрать сетевой диск, снимите чекбокс Локальный SSD NVMe диск. В поле Тип диска выберите тип сетевого загрузочного диска. И укажите размер диска в ГБ или ТБ. Учитывайте лимиты сетевых дисков на максимальный размер.
5.4. Опционально: чтобы добавить дополнительные сетевые диски сервера. В поле Тип диска выберите тип сетевого диска и укажите размер сетевого диска в ГБ или ТБ. Учитывайте лимиты сетевых дисков на максимальный размер.
После создания сервера можно отключить от него дополнительные диски или подключить новые.
-
В блоке Сеть:
- если у вас созданы приватная подсеть и облачный роутер, подключенный к внешней сети, в поле Подсеть выберите Приватная + 1 публичный IP, в поле Приватная подсеть выберите созданную подсеть, в поле Приватный IP укажите приватный IP-адрес сервера. Если у сервера есть публичный IP-адрес, нажмите Подключить существующий и выберите публичный IP-адрес;
- если у вас не созданы приватная подсеть и облачный роутер, в поле Подсеть выберите Приватная + 1 публичный IP. Автоматически будут созданы приватная сеть
nat
, приватная подсеть, роутерrouter-nat
и публичный IP-адрес.
-
В блоке Доступ:
7.1. Разместите на сервере SSH-ключ для проекта для безопасного подключения:
- если SSH-ключ добавлен в облачную платформу, в поле SSH-ключ выберите существующий ключ;
- если SSH-ключ не добавлен в облачную платформу, нажмите Добавить SSH-ключ, введите имя ключа, вставьте публичный SSH-ключ в формате OpenSSH и нажмите Добавить.
SSH-ключ доступен только в том пуле, в котором он размещен.
7.2. Опционально: в поле Пароль для «root» скопируйте пароль пользователя
root
(пользователь с неограниченными правами на все действия над системой). Сохраните пароль в безопасном месте и не передава йте в открытом виде. -
В блоке Дополнительные настройки:
8.1. Опционально: если вы планируете создать несколько серверов и хотите повысить отказоустойчивость инфраструктуры, добавьте сервер в группу размещения. Чтобы создать новую группу, нажмите Создать группу, введите имя группы и выберите политику размещения на разных хостах:
- желательно — система постарается разместить серверы на разных хостах (soft-anti-affinity). Если при создании сервера не будет подходящего хоста, он будет создан на том же хосте;
- обязательно — серверы в группе обязательно располагаются на разных хостах (anti-affinity). Если при создании сервера не будет подходящего хоста, сервер не будет создан.
Если группа создана, в поле Группа размещения выберите группу размещения.
8.2. Опционально: чтобы добавить дополнительную информацию или фильтровать серверы в списке, добавьте теги сервера. Автоматически добавляются теги операционной системы и конфигурации. Чтобы добавить новый тег, в поле Теги введите тег.
-
Проверьте цену облачного сервера.
-
Нажмите Создать.
Настроить VPN-сервер
- Инициализируйте Pritunl.
- Создайте организацию в которой будет располагаться VPN-сервер.
- Создайте VPN-сервер.
- Добавьте VPN-сервер в организацию.
- Настройте маршрутизацию через VPN-сервер.
- Запустите VPN-сервер.
- Создайте пользовательскую конфигурацию.
1. Инициализировать Pritunl
-
Сгенерируйте ключ для установки Pritunl:
sudo pritunl setup-key
-
Скопируйте сгенерированный ключ.
-
Откройте в браузере страницу:
http://<ip_address>
Укажите
<ip_address>
— публичный IP-адрес облачного сервера, можно посмотреть в панели управления в разделе Облачная платформа → Серверы → страница сервера → вкладка Порты → столбец Публичный IP. -
В поле Enter Setup Key вставьте ключ, который вы скопировали на шаге 3.
-
Нажмите Save.
-
Браузер выдаст предупреждение о небезопасном подключении из-за отсутствия сертификата. Проигнорируйте предупреждение и откройте страницу.
-
В CLI выведите логин и пароль для авторизации:
sudo pritunl default-password
-
Скопируйте логин и пароль.
-
В браузере авторизуйтесь в панели pritunl. В поле Username и Password вставьте логин и пароль, которые вы скопировали на шаге 9.
-
Нажмите Sign in. Дождитесь окончания процесса инициализации настроек.
-
Снимите чекбокс Accept IPv6 Connections.
-
Опционально: в поле New Password введите новый пароль. В целях безопасности мы рекомендуем изменить пароль.
-
Опционально: в поле Lets Encrypt Domain введите домен, А-запись которого ведет на IP-адрес сервера.
-
Нажмите Save.
2. Создать организацию
- В панели pritunl откройте вкладку Users.
- Нажмите Add Organization.
- В поле Name введите название организации.
- Нажмите Add.
3. Создать VPN-сервер
- В панели pritunl откройте вкладку Servers.
- Нажмите Add Server.
- В поле Name введите имя сервера.
- Нажмите Add.
4. Добавить VPN-сервер в организацию
- В панели pritunl откройте вкладку Servers.
- Нажмите Attach Organization.
- В поле Select an organization выберите организацию, в которую нужно добавить VPN-сервер.
- В поле Select a server выберите VPN-сервер.
- Нажмите Attach.
5. Настроить маршрутизацию через VPN-сервер
- В панели pritunl откройте вкладку Servers.
- Выберите нужный VPN-сервер.
- В блоке
0.0.0.0/0
нажмите Remove Route. - Чтобы подтвердить удадление маршрута по умолчанию, нажмите Remove.
- Нажмите Add Route.
- В поле Network введите приватную подсеть, в которой расположен облачный сервер. Можно посмотреть в панели управления → раздел Облачная платформа → Сеть → вкладка Приватные сети.
- В поле Select a server выберите VPN-сервер.
- Нажмите Attach.
6. Запустить VPN-сервер
- В панели pritunl откройте вкладку Servers.
- Выберите нужный VPN-сервер.
- Нажмите Start Server.
7. Создать пользовательскую конфигурацию
- В панели pritunl откройте вкладку Users.
- Нажмите Add User.
- В поле Name введите имя пользователя.
- В поле Select an organization выберите организацию, в которую нужно добавить пользовательскую конфигурацию.
- Нажмите Add.
- В строке пользователя нажмите Get temporary profile links.
- Скопируйте и передайте пользователю VPN-сервера подходящую ссылку для скачивания файла конфигурации.
Подключиться к VPN
1. Установить Pritunl Client
На сайте Pritunl скачайте Pritunl Client и установите его.
2. Загрузить файл конфигурации
- Откройте Pritunl Client.
- Нажмите Import.
- В поле Profile URL вставьте ссылку на файл конфигурации, которую вам передал администратор VPN-сервера.
- Нажмите Import.
2. Подключиться к серверу
- Откройте Pritunl Client.
- Перейдите в профиль клиента VPN-сервера.
- Нажмите Connect.