Установка и настройка Pritunl VPN на Ubuntu 18.04
Кратко о Pritunl
Pritunl — это серверное ПО для VPN, основанное на OpenVPN. Поддерживает управление организациями, пользователями и серверами через веб-интерфейс и предоставляет совместимые конфигурации для стандартных OpenVPN-клиентов.
Важно: Pritunl по умолчанию использует порты 80 и 443 для веб-консоли и валидации Let’s Encrypt, а также обычно требует отдельного UDP-порта для VPN-трафика. Перед установкой освободите эти порты или перенастройте сервисы.
Требования
- Сервер с Ubuntu 18.04 LTS (32/64-бит — в зависимости от пакета репозитория). Убедитесь, что система обновлена.
- Доступ root или sudo.
- Открытые порты: 80, 443 (веб-консоль и Let’s Encrypt) и UDP-порт для VPN (в примере 10447).
- Если на сервере уже запущены веб-сервисы на портах 80/443 — остановите их или измените порты.
Примечание: В примерах в статье используется порт 10447/udp для VPN. Вы можете выбрать любой свободный UDP-порт.
Обновление системы
$ sudo apt update
$ sudo apt upgradeОткрытие портов в UFW (пример)
Если используется ufw, выполните:
$ sudo ufw allow http
$ sudo ufw allow https
$ sudo ufw allow 10447/udp
$ sudo ufw reloadЗапомните UDP-порт для последующей настройки сервера в Pritunl.
Установка Pritunl и MongoDB
- Добавьте репозиторий Pritunl:
$ echo "deb http://repo.pritunl.com/stable/apt bionic main" | sudo tee /etc/apt/sources.list.d/pritunl.list- Добавьте репозиторий MongoDB (создайте файл):
$ sudo nano /etc/apt/sources.list.d/mongodb-org-4.0.listВставьте строку и сохраните:
deb https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse- Добавьте публичные ключи для репозиториев и обновите индексы:
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7568D9BB55FF9E5287D586017AE645C0CF8E292A
$ sudo apt update- Установите Pritunl и MongoDB:
$ sudo apt --assume-yes install pritunl mongodb-server
$ sudo systemctl start pritunl mongodb
$ sudo systemctl enable pritunl mongodbВажно: Если установка завершается с ошибками, проверьте вывод apt для конфликтующих версий MongoDB или невалидных ключей.
Первичная конфигурация через веб-консоль

Откройте в браузере https://
Генерация setup key и вход
При первом запуске Pritunl попросит setup key. Сгенерируйте ключ командой:
$ sudo pritunl setup-keyСкопируйте ключ в веб-форму и нажмите Save. Затем получите начальные учётные данные:
$ sudo pritunl default-passwordВведите в веб-интерфейсе домен для Let’s Encrypt, при необходимости смените имя пользователя и пароль, затем нажмите Save.

Создание организации, пользователя и сервера
- Перейдите на вкладку Users. Нажмите Add Organization и заполните поля. Затем для организации нажмите Add User и задайте имя пользователя.


- Перейдите на вкладку Servers и нажмите Add a Server. Укажите имя, Protocol — UDP, Port — тот UDP-порт, который вы открыли (в примере 10447).

- В Advanced настройках можно ограничить число клиентов и устройств. Для разрешения множества устройств включите Allow multiple devices.

Нажмите Add.

- Прикрепите сервер к организации — Attach Organization, затем запустите сервер — Start Server.


Теперь сервер доступен для подключения.
Подключение клиентов
Pritunl совместим с OpenVPN-клиентами для Linux, macOS и Windows. Чтобы подключиться:
- В веб-интерфейсе перейдите в Users и нажмите Download рядом с нужным пользователем. Будет скачан профиль в формате .tar или .ovpn в зависимости от конфигурации.

Распакуйте архив и импортируйте .ovpn в ваш OpenVPN-клиент или используйте сетевой менеджер.
Подтверждение подключения: перейдите на сервис проверки IP, например whatismyip.com — если IP и геолокация изменились, VPN работает.
Командная утилита Pritunl
Pritunl поставляется с CLI для администрирования.
Просмотр версии
$ sudo pritunl versionВосстановление базы данных
Если база данных повреждена:
$ sudo systemctl stop pritunl
$ sudo pritunl repair-database
$ sudo systemctl start pritunlСброс пароля администратора
$ sudo pritunl reset-passwordИзменение порта веб-консоли
По умолчанию веб-консоль использует порт 443. Чтобы изменить:
$ sudo pritunl set app.server_port 443Замените 443 на желаемый порт. Чтобы отключить перенаправление HTTP на HTTPS и работу сервера в порту 80 (например, если у вас другой сервис на 80):
$ sudo pritunl set app.redirect_server falseПосле изменения параметров перезапустите службу:
$ sudo systemctl restart pritunlРекомендации по безопасности
- Используйте отдельный брандмауэр и ограничьте доступ к SSH по IP, если возможно.
- Настройте двухфакторную аутентификацию для административной панели (включается через настройки при наличии метода). Если встроенный метод отсутствует, используйте VPN только для администраторов с ограничением по IP.
- Регулярно обновляйте Pritunl и MongoDB через apt.
- Делайте резервные копии конфигурации Pritunl и файлов ключей. Резервирование делайте до внесения изменений в CA или сервер.
- Ограничьте число подключений и устройств для пользователей, если у вас чувствительная инфраструктура.
Мини-методология резервного восстановления
- Перед изменениями: экспортируйте настройки и резервную копию MongoDB.
- При сбое: остановите pritunl, запустите pritunl repair-database, восстановите MongoDB из бэкапа при необходимости, затем запустите pritunl.
- Тестируйте восстановление на стенде перед применением на проде.
Чеклист ролей перед вводом в эксплуатацию
Системный администратор
- Установил и обновил Pritunl и MongoDB
- Настроил автоматический запуск служб
- Проверил открытые порты и правила брандмауэра
Сетевой инженер
- Выбрал и открыл UDP-порт для VPN
- Проверил маршрутизацию и NAT при необходимости
Безопасность
- Настроил доступ к консоли и бэкапы
- Провёл базовую проверку безопасности и логирования
Операции
- Подготовил инструкции для пользователей по установке клиента и импорту .ovpn
- Настроил мониторинг и оповещения о состоянии сервера
План устранения неполадок (runbook)
Клиенты не подключаются
- Проверить, запущен ли сервис pritunl: sudo systemctl status pritunl
- Проверить, открыт ли UDP-порт: sudo ss -lun | grep 10447
- Проверить логи Pritunl: sudo journalctl -u pritunl –no-pager
Веб-консоль не доступна
- Проверить порт веб-консоли: sudo pritunl get app.server_port (через pritunl set можно посмотреть)
- Проверить, не заняты ли порты 80/443 другими сервисами
Проблемы с базой данных
- Выполнить pritunl repair-database как в разделе выше
- Проверить свободное место на диске и права доступа к /var/lib/mongodb
Если правки не помогают, откатите конфигурацию из бэкапа и свяжитесь с документацией или сообществом Pritunl.
Советы по совместимости и миграции
- Pritunl основан на OpenVPN: профили .ovpn совместимы с большинством клиентов.
- При обновлении MongoDB проверяйте совместимость версии с текущей версией Pritunl. В репозитории указан mongodb-org-4.0 для Ubuntu 18.04.
- Для переноса конфигурации между серверами: экспортируйте CA и настройки организации, сделайте бэкап MongoDB и восстановите его на новом хосте.
Когда Pritunl может не подойти
- Нужен легковесный VPN только для одного сервера и нескольких клиентов — возможно, достаточно чистого OpenVPN без веб-администрирования.
- Требны корпоративные интеграции на уровне LDAP/AD с тонкой политикой — Pritunl поддерживает некоторые интеграции, но в сложных сценариях может потребоваться коммерческое решение.
Факторы принятия решения
- Простота управления через веб-интерфейс — подходит для команд, которым нужен быстрый контроль пользователей.
- OpenVPN-совместимость — широкая поддержка клиентов.
- Зависимость от MongoDB — учитывайте требования к резервированию и обслуживанию БД.
Часто задаваемые вопросы
Как изменить UDP-порт VPN после создания сервера?
Измените порт в настройках сервера в веб-интерфейсе или удалите/создайте сервер заново с нужным портом. Не забудьте обновить правила брандмауэра.
Можно ли использовать Pritunl без MongoDB?
Нет, Pritunl использует MongoDB для хранения конфигураций и состояний.
Поддерживает ли Pritunl TLS/Let’s Encrypt?
Да. В настройках указав домен, Pritunl может автоматически получать сертификат Let’s Encrypt. Для этого порты 80 и 443 должны быть доступны.
Глоссарий 1 строкой
- Organization: группа пользователей и политик в Pritunl.
- Server: экземпляр VPN, к которому подключаются клиенты.
- CA: центр сертификации, выпускающий ключи для OpenVPN.
Итог
Pritunl предоставляет удобный веб-интерфейс для развёртывания OpenVPN-серверов. На Ubuntu 18.04 установка сводится к добавлению репозиториев Pritunl и MongoDB, установке пакетов, открытию нужных портов и выполнению первичной настройки через web UI. Не забудьте про резервное копирование, обновления и базовую жесткую настройку безопасности перед вводом в эксплуатацию.
Важно: тестируйте всё в стендовом окружении до запуска в продуктиве.
Похожие материалы
Как защитить беспроводной роутер
Темная тема в Google Calendar — Android, iPhone, веб
Неподписанные драйверы Windows 10 — как установить
Outlook: исправление резкого роста CPU
Поиск ссылок на Reddit по домену