Все статьи
Гайды
23 мин

VPN на Linux: настройка для Ubuntu, Fedora, Arch и Mint

Linux — родная среда для VPN. Большинство современных VPN-клиентов разрабатывались на Linux, и именно там они работают наиболее предсказуемо. Если вы используете Ubuntu, Fedora, Arch, Mint, Debian или любой другой дистрибутив, эта статья — пошаговый гайд по настройке VPN с протоколами VLESS+REALITY. Покажем три способа: GUI через Hiddify Next, консольный sing-box для серверов и продвинутых пользователей, и интеграцию с NetworkManager для системного VPN. После прочтения у вас будет рабочий VPN на Linux, который автоматически подключается при загрузке системы и обходит ТСПУ Роскомнадзора.

Что вы получите

Рабочий VLESS+REALITY VPN на Linux за 10 минут. Скрипты автозапуска. Решения типичных проблем (Wayland, systemd-resolved, conflict с другими VPN). Прокачанная конфигурация для Linux-сервера (например, для удалённой разработки через VPN). Сравнение Hiddify, sing-box, v2rayA — какое выбрать.

Способ 1. Hiddify Next (GUI, для большинства)

Hiddify Next — open-source GUI-клиент на Flutter, работает на Linux через AppImage. Самый удобный способ для рабочих станций.

Установка через AppImage

# Скачиваем AppImage wget https://github.com/hiddify/hiddify-next/releases/latest/download/Hiddify-Linux-x64.AppImage # Делаем исполняемым chmod +x Hiddify-Linux-x64.AppImage # Запускаем ./Hiddify-Linux-x64.AppImage

AppImage не требует прав администратора и работает в любом Linux-дистрибутиве. Файл автономный, не требует установки в систему.

Установка через Flatpak

Если вы используете Flatpak, Hiddify доступен в Flathub:

flatpak install flathub app.hiddify.com

Импорт подписки

Запустите Hiddify Next, нажмите «+» в углу → «Add from URL» → вставьте ссылку подписки от VPN RUS Client (https://vpnrusclient.com/sub/VPN-XXXX). Hiddify подтянет конфигурацию, появится список серверов: 🇳🇱 Нидерланды, 🇩🇪 Германия. Выберите страну и подключитесь.

Настройка прав на TUN

Для туннельного режима (полный системный VPN) Hiddify требует CAP_NET_ADMIN. AppImage запрашивает sudo при первом подключении. Если хочется без sudo — установите capability вручную:

sudo setcap cap_net_admin+ep ~/Hiddify-Linux-x64.AppImage

Способ 2. sing-box CLI (для серверов и продвинутых)

sing-box — это голый VPN-движок без GUI, идеален для headless-серверов, embedded-устройств, скриптовой автоматизации. Работает на Ubuntu, Fedora, Debian, Arch, OpenWrt, Alpine.

Установка на Ubuntu/Debian

# Добавляем репозиторий sudo curl -fsSL https://sing-box.app/gpg.key -o /etc/apt/keyrings/sing-box.asc echo "deb [signed-by=/etc/apt/keyrings/sing-box.asc] https://deb.sagernet.org/ * *" | sudo tee /etc/apt/sources.list.d/sagernet.list sudo apt update sudo apt install sing-box

Установка на Fedora/RHEL

sudo dnf install dnf-plugins-core sudo dnf config-manager --add-repo https://sing-box.app/sing-box.repo sudo dnf install sing-box

Установка на Arch Linux

В AUR есть пакет sing-box-bin:

yay -S sing-box-bin

Конфигурация sing-box для VPN RUS Client

sing-box использует JSON-конфигурацию. Создайте файл /etc/sing-box/config.json:

{ "log": { "level": "info" }, "outbounds": [ { "type": "selector", "tag": "main", "outbounds": ["NL", "DE"], "default": "NL" }, { "type": "vless", "tag": "NL", "server": "vpn.vpnrusclient.com", "server_port": 443, "uuid": "ВАШ-UUID-ЗДЕСЬ", "tls": { "enabled": true, "server_name": "vpn.vpnrusclient.com" }, "transport": { "type": "ws", "path": "/vpnws", "headers": { "Host": "vpn.vpnrusclient.com" } } }, { "type": "vless", "tag": "DE", "server": "de.vpnrusclient.com", "server_port": 443, "uuid": "ВАШ-UUID-ЗДЕСЬ", "tls": { "enabled": true, "server_name": "de.vpnrusclient.com" }, "transport": { "type": "ws", "path": "/vpnws", "headers": { "Host": "de.vpnrusclient.com" } } }, { "type": "direct", "tag": "direct" } ], "route": { "rules": [ { "ip_is_private": true, "outbound": "direct" } ], "final": "main" }, "inbounds": [ { "type": "tun", "tag": "tun-in", "inet4_address": "172.19.0.1/30", "auto_route": true, "strict_route": true, "stack": "system" } ] }

UUID вы получаете из подписки VPN RUS Client. Чтобы извлечь — откройте ссылку в браузере, увидите base64-текст, декодируйте (echo "..." | base64 -d), там будет vless://UUID@... — это ваш UUID.

Запуск как systemd-сервис

sudo systemctl enable sing-box sudo systemctl start sing-box # Проверка статуса sudo systemctl status sing-box # Логи sudo journalctl -u sing-box -f

После старта VPN активируется системно, весь трафик идёт через туннель.

Способ 3. NetworkManager + интеграция

Для интеграции в системную панель Linux (GNOME/KDE) можно использовать NetworkManager. Это позволяет включать/отключать VPN из меню статус-бара.

К сожалению, NetworkManager нативно не поддерживает VLESS — это очень новый протокол. Но есть способ через nm-extension-vless (community plugin):

# Ubuntu/Debian sudo apt install network-manager-vless # Fedora sudo dnf install NetworkManager-vless # После установки — добавить новое VPN-подключение через GUI: # Settings → Network → VPN → + # Тип: VLESS # URL подписки: https://vpnrusclient.com/sub/...

Не во всех дистрибутивах этот плагин есть. Если нет — используйте Hiddify или sing-box.

VPN на Linux-сервере для команды

Если вы DevOps/системный администратор и хотите дать команде VPN через единый Linux-сервер:

  1. На Linux-сервере установите sing-box (как outbound через VPN RUS Client)
  2. Поднимите SOCKS5-сервер на 127.0.0.1:1080 как inbound
  3. Команда подключается к этому SOCKS5 через ваш сервер
  4. Все запросы команды идут через ваш sing-box → VPN RUS Client → интернет

Это позволяет иметь один VPN-аккаунт VPN RUS Client (199 ₽/мес) и обслуживать всю команду через прокси на корпоративном сервере. Только помните о limit 4 уникальных IP в 10 мин на стороне VPN RUS Client — для команды до 4-5 человек подходит.

Сравнение клиентов на Linux

КлиентGUIСерверный режимVLESS+REALITYКому подходит
Hiddify Next×Рабочая станция, начинающие
sing-box×Сервер, headless, скрипты
v2rayAWeb UIСервер с веб-управлением
Xray-core×Продвинутые, кастомные конфиги
NekoRayГибкий GUI с advanced настройками

Решение типичных проблем

VPN подключился, но интернета нет

На Ubuntu это часто связано с systemd-resolved и DNS. Проверьте: cat /etc/resolv.conf — должно показывать 127.0.0.53. Если показывает другой адрес — отключите конфликтующий resolver. Альтернатива: пропишите DNS в Hiddify или sing-box (1.1.1.1, 8.8.8.8).

Hiddify падает на Wayland

Старые версии Hiddify Flutter некорректно работали на Wayland. Решение: запустите с переменной QT_QPA_PLATFORM=xcb. Или обновите Hiddify до 2.0+ — там Wayland поддерживается.

sing-box: «failed to start tun: operation not permitted»

sing-box требует CAP_NET_ADMIN. При запуске через systemd служба должна иметь CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE. По умолчанию в official sing-box.service это уже настроено.

Конфликт с OpenVPN/WireGuard

Если у вас уже стоит другой VPN (например, от работы) — нельзя запускать два TUN-туннеля одновременно. Отключите старый VPN перед запуском Hiddify/sing-box. Можно использовать SOCKS5-режим вместо TUN, тогда конфликта не будет.

Snap-приложения не работают через VPN

Snap использует свой namespace, который иногда не видит TUN-туннель. Решение: перезапустить Snap-приложение после подключения VPN. Или установить через apt/flatpak вместо snap.

Автозапуск VPN при загрузке

Самый надёжный способ — через systemd. Создайте файл ~/.config/systemd/user/hiddify.service:

[Unit] Description=Hiddify VPN After=network-online.target [Service] Type=simple ExecStart=/home/USER/Hiddify-Linux-x64.AppImage --tray Restart=on-failure [Install] WantedBy=default.target

systemctl --user enable hiddify systemctl --user start hiddify

Split tunneling на Linux

В sing-box split tunneling настраивается через routing-rules:

"route": { "rules": [ { "ip_is_private": true, "outbound": "direct" }, { "geoip": "ru", "outbound": "direct" }, { "domain_suffix": [".ru", ".рф"], "outbound": "direct" } ], "final": "main" }

Российские IP и домены (.ru, .рф) идут напрямую, остальное — через VPN. Идеально для повседневной работы.

FAQ про VPN на Linux

Можно ли использовать VPN на VPS-сервере?

Да, sing-box или xray-core на Linux-сервере — стандартный сценарий. Можно использовать как outbound (например, для обхода геоблокировок API в коде) или как relay (форвардинг трафика других пользователей).

VPN на Raspberry Pi?

Полностью работает. sing-box есть в ARM-сборке. Можно сделать домашний VPN-роутер: Pi с VPN, Wi-Fi точка доступа на Pi → весь домашний трафик через VPN. Идеально для Smart TV и других устройств без своего VPN.

VPN на сервере GitLab/Jenkins для CI?

Если ваш CI требует доступа к зарубежным сервисам (npm, PyPI, Docker Hub) — VPN полезен. Но обычно для CI лучше использовать локальные mirror-ы (Verdaccio, Nexus) и не гонять весь трафик через VPN — это медленнее и ненадёжнее.

Snap или Flatpak?

Hiddify через Flatpak работает стабильнее, чем через Snap. Snap имеет дополнительные ограничения песочницы, иногда конфликтующие с VPN. Если есть выбор — берите Flatpak или AppImage.

Стоит ли компилировать Xray-core самостоятельно?

Только для специфических случаев (старые ARM-устройства, embedded, кастомные патчи). Для типичного использования бинарник sing-box достаточен и проверен.

Заключение

Linux — лучшая платформа для VPN-энтузиаста. Все современные клиенты работают нативно, есть гибкие конфигурации для любых сценариев — от домашней рабочей станции до корпоративного gateway. VPN RUS Client с поддержкой VLESS+REALITY идеально интегрируется через Hiddify, sing-box или v2rayA.

VPN для Linux

Один универсальный ключ для Ubuntu, Fedora, Arch, Mint и серверов. Тестовый доступ 24 часа без оплаты.

Связанные статьи