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

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:
- Скачайте с openvpn.net/client и установите.
- Вкладка FILE → BROWSE → выберите
.ovpn. - Включите переключатель у профиля. CONNECTED — работает.
Android и iPhone:
- OpenVPN Connect из Google Play или App Store.
- Перешлите
.ovpnсебе на телефон (в «Избранное» мессенджера или по почте) и откройте через OpenVPN Connect. - Включите переключатель.
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 не подключается.