OpenVPN на VPS одной командой: скрипт openvpn-install

Установка OpenVPN-сервера скриптом Nyr/openvpn-install: ответы на вопросы установщика, перенос .ovpn по scp, подключение в OpenVPN Connect, отдельные файлы на каждое устройство и отзыв. Ubuntu 22.04+, Debian 11+, AlmaLinux 9.

9 октября 2026 г.·4 мин чтения·openvpn, vpn, ubuntu, debian

OpenVPN — классика: клиенты есть под всё, включая роутеры и старые системы, а протокол понятен любому администратору. Ставить его руками долго — сертификаты, CA, маршруты, iptables. Открытый скрипт openvpn-install делает это за минуту и сразу выдаёт готовый файл .ovpn.

Скрипт не работает на старых системах. Нужны Ubuntu 22.04+, Debian 11+, AlmaLinux / Rocky / CentOS 9+ или Fedora. На Ubuntu 20.04 и AlmaLinux 8 он откажется запускаться — переустановите ОС из кабинета tanaka.host на свежую.

Ресурсов почти не нужно: сам OpenVPN занимает меньше 10 МБ памяти.

OpenVPN не прячется от DPI. Его рукопожатие хорошо известно, и в некоторых сетях он блокируется. Для обхода блокировок смотрите Amnezia или VLESS Reality. OpenVPN — хороший выбор для служебного доступа и совместимости.

1. Установка

Подключитесь по SSH под root и выполните:

cd /root && wget https://raw.githubusercontent.com/Nyr/openvpn-install/master/openvpn-install.sh -O openvpn-install.sh && bash openvpn-install.sh

Скрипт задаст несколько вопросов. Не уверены — жмите Enter, значения по умолчанию подходят.

Вопрос Что ответить
Which IPv4 address should be used? Появляется только при нескольких адресах. Выберите внешний IP из кабинета
Protocol 1 (UDP) — быстрее. TCP только если UDP в вашей сети не ходит
Port 1194 по умолчанию; можно 443, если UDP режут не весь
DNS server 3 (1.1.1.1) или 2 (Google)
Name Имя первого клиента, например laptop. Станет именем файла

В имени клиента — латиница, цифры, дефис и подчёркивание; остальное скрипт заменит на _. Нажмите любую клавишу — установка займёт меньше минуты.

Готовый файл лежит в /root и называется по имени клиента: /root/laptop.ovpn. Служба уже запущена и включена в автозагрузку:

systemctl status openvpn-server@server

2. Скачайте файл подключения

.ovpn нужно перенести на устройство, с которого будете подключаться. Проще всего scp на своём компьютере:

scp root@IP-сервера:/root/laptop.ovpn .

Файл сохранится в текущую папку. В macOS и Linux команда есть из коробки; в Windows 10/11 входит в клиент OpenSSH и запускается из PowerShell. Если PowerShell команду не знает — включите «Клиент OpenSSH» в дополнительных компонентах Windows. Мышкой — через SFTP в любом SSH-клиенте (Termius, MobaXterm, WinSCP).

Если входите по ключу не под root, скопируйте файл сначала в домашний каталог своего пользователя:

sudo cp /root/laptop.ovpn ~ && sudo chown $USER ~/laptop.ovpn

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

3. Подключение

Нужно официальное приложение OpenVPN Connect.

Windows и macOS:

  1. Скачайте с openvpn.net/client и установите.
  2. Вкладка FILE → BROWSE → выберите .ovpn.
  3. Включите переключатель у профиля. CONNECTED — работает.

Android и iPhone:

  1. OpenVPN Connect из Google Play или App Store.
  2. Перешлите .ovpn себе на телефон (в «Избранное» мессенджера или по почте) и откройте через OpenVPN Connect.
  3. Включите переключатель.

Linux из терминала:

apt install -y openvpn
openvpn --config laptop.ovpn

Проверка: https://api.ipify.org в браузере должен показать IP сервера.

4. Добавьте устройства и людей

Один .ovpn работает только на одном устройстве одновременно: подключились с тем же файлом со второго — первое отвалится. На каждый телефон, ноутбук и человека — свой файл.

Запустите скрипт ещё раз:

bash /root/openvpn-install.sh

Теперь он показывает меню:

Пункт Что делает
1 Add a new client Новый клиент и его файл /root/имя.ovpn
2 Revoke an existing client Отзыв клиента, файл сразу перестаёт работать
3 Remove OpenVPN Полное удаление с сервера
4 Exit Выход

Добавить: 1, имя (например phone). В конце скрипт напишет: phone added. Configuration available in: /root/phone.ovpn.

Отозвать: 2, номер клиента в списке, подтверждение y. Остальные клиенты продолжают работать.

Частые ошибки

Приложение не подключается. Сначала статус службы:

systemctl status openvpn-server@server

В строке Active должно быть active (running). Затем брандмауэр — скрипт сам добавляет правила, но если вы включили ufw позже, откройте порт:

ufw allow 1194/udp        # или ваш порт и протокол

RHEL-семейство:

firewall-cmd --permanent --add-port=1194/udp && firewall-cmd --reload

В моей сети OpenVPN не работает. UDP режут. Переустановите с TCP: удалите пунктом 3, запустите скрипт заново, выберите 2 (TCP) и порт 443. Если и так не идёт — провайдер распознаёт сам протокол, нужны Amnezia или VLESS Reality.

«Ubuntu 22.04 or higher is required». Система слишком старая, переустановите на Ubuntu 22.04/24.04 или Debian 12.

Отключается VPN на втором устройстве. Один файл на два устройства, см. шаг 4.

Полностью удалить OpenVPN. bash /root/openvpn-install.sh → 3 → y. Скрипт убирает службу, настройки и правила сети. Файлы .ovpn в /root останутся, но уже не работают — удалите вручную.

Полезные команды

Команда Что делает
cat /var/log/openvpn/status.log Кто подключён сейчас и сколько передал
journalctl -u openvpn-server@server -f Журнал сервера в реальном времени
ls /root/*.ovpn Все выданные файлы
cat /etc/openvpn/server/server.conf Конфиг сервера (порт, протокол, подсеть)

Если ничего не помогает — общий алгоритм диагностики в статье VPN не подключается.