Инструкция

Как настроить VPN на Linux

На Linux сервис не навязывает приложение: подписка стандартная и открывается любым клиентом с поддержкой VLESS. Разбираем настройку на примере sing-box, включая запуск службой и работу с DNS, а заодно объясняем, почему конфигурации WireGuard в подписке нет.

Обновлено

Как настроить VPN на Linux
Время: 12 минут Сложность: Продвинутый 8 шагов Права администратора: нужны при установке

Что понадобится

  • Ubuntu, Debian, Fedora, Arch или производный дистрибутив
  • Права суперпользователя: создание сетевого интерфейса без них невозможно
  • Ссылка на подписку из Telegram-бота
  • Клиент с поддержкой VLESS и подписок — например, sing-box
Сначала отключите другие VPN-клиенты Два одновременно работающих туннеля спорят за системный маршрут. Симптом выглядит странно: соединение поднимается, значок горит, но трафик никуда не идёт.
Застряли на шаге? Напишите в поддержку и укажите номер шага — так ответ приходит быстрее. Среднее время ответа 7 минут.
Пошагово

Настройка по шагам

Скриншот к каждому шагу показывает именно то окно, которое вы увидите.

1

Получите ссылку на подписку

Оформите тариф в Telegram-боте и сохраните пришедшую строку. На Linux она понадобится в текстовом виде: её укажут в конфигурации клиента или вставят в графический интерфейс.

Получите ссылку на подписку
2

Определите, какой сервис управляет DNS

Это ключевой вопрос на Linux: от него зависит, как настраивать резолвер. Посмотрите, куда указывает /etc/resolv.conf и активен ли systemd-resolved. В Ubuntu обычно да, в минимальных сборках Debian часто нет, а NetworkManager может переписывать файл по-своему.

Если пропустить этот шаг, получится классическая картина: туннель поднят, внешний адрес сменился, а DNS-запросы по-прежнему уходят провайдеру.
Определите, какой сервис управляет DNS
3

Установите клиент

Для консольной работы удобен sing-box: он понимает VLESS и умеет подписки. Ставится пакетом дистрибутива, отдельной сборкой или из исходников — способ зависит от вашей системы. Для рабочей станции подойдёт и графический клиент, логика настройки от этого не меняется.

Установите клиент
4

Пропишите подписку в конфигурации

В графическом клиенте ссылка вставляется в поле подписки. В консольном указывается в конфигурационном файле как источник — точный синтаксис зависит от версии клиента, поэтому сверяйтесь с его документацией, а не с чужими примерами из интернета.

Пропишите подписку в конфигурации
5

Запустите клиент как службу systemd

Чтобы туннель поднимался вместе с системой, оформите клиент службой и включите автозапуск. Связка sing-box и systemd — стандартный для Linux способ: служба стартует после инициализации сети, перезапускается при падении и пишет логи в журнал системы.

Логи смотрите через journalctl с именем вашей службы. При проблемах с подключением там видно, какой именно сервер не ответил.
Запустите клиент как службу systemd
6

Настройте DNS под свою систему

Задача одна: запросы должны уходить в туннель. Способ зависит от того, что вы выяснили на втором шаге. Где-то достаточно настроек внутри клиента, где-то нужно указать резолвер в systemd-resolved, а где-то — запретить NetworkManager переписывать конфигурацию.

Настройте DNS под свою систему
7

Настройте выборочную маршрутизацию

Направлять в туннель весь трафик обычно не нужно. Локальные подсети, репозитории пакетов и внутренние сервисы работают быстрее напрямую. Клиенты с поддержкой VLESS умеют правила по доменам и подсетям — они задаются в конфигурации приложения.

Настройте выборочную маршрутизацию
8

Проверьте маршруты и утечки

Проверьте внешний адрес командой вида curl ifconfig.me, затем посмотрите таблицу маршрутов и убедитесь, что в туннель уходит то, что вы задумали. Дополнительно откройте тест утечек DNS.

Проверьте маршруты и утечки

Почему в подписке нет конфигурации WireGuard

Настройка wireguard linux — популярный запрос, и ответ здесь должен быть прямым: сервис работает по протоколу VLESS и конфигураций WireGuard не выдаёт. Это не упущение, а следствие задачи. WireGuard имеет узнаваемый сетевой профиль и в сетях с фильтрацией отсекается заметно чаще.

VLESS решает ровно эту проблему: соединение выглядит как обычный HTTPS-трафик и не выделяется на общем фоне. Платой за это становится необходимость в отдельном клиенте — штатными средствами Linux, в отличие от WireGuard, такой протокол не поднимается.

Если WireGuard нужен вам для других задач — например, для соединения между собственными серверами, — он прекрасно работает параллельно. Просто это будет ваш собственный туннель, а не подписка сервиса, и путать эти два сценария не стоит.

Диагностика

Что делать, если не получилось

Клиент запускается, но соединение не устанавливается

Первым делом сверьте часы: при расхождении системного времени TLS-рукопожатие обрывается на старте. Вторая причина — устаревший сохранённый список серверов, лечится обновлением подписки. Точную причину покажет журнал службы.

Внешний адрес сменился, а DNS остался провайдерский

Резолвер настроен мимо туннеля. Вернитесь ко второму шагу и определите, кто управляет DNS в вашей системе: systemd-resolved, NetworkManager или статический /etc/resolv.conf.

Нет прав на создание сетевого интерфейса

Настройка туннеля требует привилегий суперпользователя. Либо запускайте клиент через службу systemd от root, либо выдайте бинарнику необходимые возможности — конкретный способ зависит от приложения.

Перестала работать локальная сеть

Маршрут по умолчанию ушёл в туннель целиком. Добавьте локальные подсети в исключения маршрутизации клиента.

После перезагрузки туннель не поднимается

Служба не включена в автозапуск. Проверьте её состояние и включите загрузку при старте системы, иначе клиент остаётся выключенным до ручного запуска.

Все серверы из списка недоступны

Обновите подписку: адреса регулярно меняются, а клиент работает с сохранённой копией. Если и после этого связи нет, напишите в бот поддержки.

Почему на Linux нет одной универсальной инструкции

Дистрибутивы слишком разные. Управление DNS, инициализация сети, механизм автозапуска и способ установки пакетов отличаются настолько, что пошаговая инструкция, точная для Ubuntu, окажется неверной для минимального Debian или Arch.

Поэтому в этом руководстве описана логика, а не конкретные команды: получить подписку, выбрать клиент с поддержкой VLESS, разобраться с DNS, оформить автозапуск, задать маршрутизацию. Команды берите из документации своего дистрибутива и своего клиента.

Такой подход честнее ещё по одной причине: сервис не выпускает программ и не может гарантировать, что чужой пример конфигурации останется актуальным после очередного обновления клиента.

DNS: самое частое место ошибки

На Linux запрос имени может обрабатывать несколько подсистем сразу, и они переопределяют друг друга. Классический результат: внешний адрес сменился, а провайдер по-прежнему видит все ваши запросы к доменам.

Проверяется это за секунду — командой вида resolvectl status или чтением /etc/resolv.conf, в зависимости от системы. Смотреть нужно, какой сервер реально отвечает, а не какой указан в настройках клиента.

Исправление зависит от найденного. Иногда достаточно включить принудительный DNS в самом клиенте, иногда приходится настраивать systemd-resolved или запрещать NetworkManager перезаписывать конфигурацию.

Использование на сервере и лимит подключений

Ничто не мешает поднять туннель на машине без графической оболочки и пустить через неё локальную сеть. С точки зрения подписки такой шлюз считается одним подключением независимо от количества устройств за ним.

Это выгодно по лимиту и рискованно по надёжности: падение шлюза оставляет без доступа всю сеть сразу. Разумно оставлять часть трафика в обход и заранее продумать, что произойдёт при недоступности серверов.

Отдельно стоит сказать: подписка рассчитана на личное использование. Раздача доступа посторонним нарушает условия, а для того, чтобы делиться сервисом, существует реферальная программа.

Вопросы

Частые вопросы

Есть ли официальный пакет сервиса в репозиториях?
Нет. Своего программного обеспечения сервис не выпускает, поэтому и репозитория не существует. Ставится сторонний клиент с поддержкой VLESS.
Можно ли использовать WireGuard вместо VLESS?
С этой подпиской нет: она работает только по VLESS. WireGuard — другой протокол, и конфигураций для него сервис не выдаёт.
Обязателен ли sing-box?
Нет, это лишь распространённый пример. Подойдёт любой клиент, который понимает VLESS и умеет читать подписки.
Как обновлять список серверов в консольном клиенте?
Обновлением подписки: командой клиента либо интервалом автообновления в конфигурации. Ссылка при этом остаётся прежней.
Считается ли сервер отдельным устройством?
Да, как одно из трёх одновременных подключений. Машины за таким шлюзом лимитом не учитываются.
Подписка оформляется в Telegram

Настроили — проверьте, что маршрут действительно сменился

Откройте проверку адреса и тест утечек: оба должны показывать страну выбранной локации, а не вашего провайдера.

Подписка оформляется в Telegram-канале сервиса · Безлимитный трафик · Поддержка круглосуточно