Добро пожаловать в Univista — мы рады, что вы здесь. Если что-то неясно, откройте «Справку» или свяжитесь с нами через службу поддержки на этом сайте, и мы поможем вам подключиться.
VLESS-подписка через GitHub: как настроить за 10 минут
Обновлено
Проблема: ключи теряются, ссылки рвутся
Если вы пользуетесь VLESS-конфигами, вы наверняка сталкивались с одной и той же болью: ключи приходят в виде длинных строк vless://..., их неудобно хранить, при смене сервера каждый клиент приходится перенастраивать вручную, а публичные ссылки на подписку то и дело перестают открываться или блокируются. Хочется одно постоянное место, откуда любой ваш клиент (телефон, ноутбук) подтянет актуальный список серверов автоматически. GitHub для этого подходит идеально: бесплатно, стабильно, доступ к raw.githubusercontent.com редко режут целиком.
Решение: подписка как файл в репозитории
Идея простая. «Подписка» (subscription) — это обычный текстовый файл, в котором лежит один или несколько VLESS-ключей. Чаще всего этот файл закодирован в Base64 — именно такой формат понимают почти все клиенты (v2rayNG, Hiddify, Nekobox/sing-box, Streisand). Вы кладёте этот файл в репозиторий GitHub, берёте на него «сырую» (raw) ссылку и вставляете её в клиент как адрес подписки. После этого достаточно отредактировать файл в репозитории — и все ваши устройства обновят конфиги по кнопке «Обновить».
Важно по безопасности: любой, у кого есть raw-ссылка, получит доступ к вашим серверам. Поэтому либо используйте приватный репозиторий с токеном, либо длинное, непредсказуемое имя файла в публичном репозитории (security through obscurity — слабая защита, но отсекает случайных ботов). Никогда не публикуйте чужие платные ключи.
Пошаговая инструкция
Подготовьте VLESS-ключи. У вас должна быть как минимум одна строка вида vless://uuid@адрес:порт?type=tcp&security=reality&pbk=...&sni=...#Имя-сервера. Если ключей несколько — соберите их в столбик, по одной строке на каждый сервер.
Закодируйте список в Base64. Большинство клиентов ожидают именно Base64-подписку. В терминале Linux/macOS выполните:
printf '%s\n' "vless://...сервер1" "vless://...сервер2" | base64 -w0 > subscription.txt
На Windows можно воспользоваться PowerShell или любым онлайн-кодировщиком Base64. В результате получится одна длинная строка без переносов — это и есть содержимое подписки.
Создайте репозиторий на GitHub. Нажмите «New repository», задайте имя (например, my-sub). Для публичного доступа выберите Public; для скрытого — Private (тогда позже понадобится Personal Access Token).
Загрузите файл. В репозитории нажмите Add file → Upload files и загрузите subscription.txt, либо создайте файл прямо в браузере через Add file → Create new file и вставьте Base64-строку. Сделайте коммит.
Получите raw-ссылку. Откройте файл в репозитории и нажмите кнопку Raw. Адрес в адресной строке будет иметь вид:
https://raw.githubusercontent.com/ВАШ_ЛОГИН/my-sub/main/subscription.txt
Это и есть URL вашей подписки. Скопируйте его.
Добавьте подписку в клиент. В v2rayNG: три точки → Subscription group setting → «+» → вставьте URL в поле URL → сохраните → потяните список вниз для обновления. В Hiddify или Nekobox: «Новый профиль из ссылки» / Add profile from URL → вставьте тот же raw-URL.
Проверьте и тестируйте задержку. После обновления в списке появятся ваши серверы. Запустите тест пинга (в v2rayNG — «Real delay»), выберите рабочий сервер и подключитесь.
Обновляйте без перенастройки. Когда меняете сервер или ключ, просто отредактируйте subscription.txt в репозитории и сделайте коммит. На устройствах нажмите «Обновить подписку» — новые конфиги подтянутся автоматически, ничего вводить вручную не нужно.
Частые вопросы (FAQ)
Нужно ли обязательно кодировать в Base64?
Не всегда. Многие современные клиенты понимают и «плоский» список ссылок vless:// (по одной на строку, без кодирования). Но Base64 — самый совместимый вариант: если подписка не подхватывается, первым делом попробуйте именно его.
GitHub заблокирован у моего провайдера — что делать?
Сам github.com и raw.githubusercontent.com в некоторых сетях недоступны. Варианты: использовать зеркало через jsDelivr (https://cdn.jsdelivr.net/gh/ЛОГИН/РЕПО@main/файл), которое отдаёт тот же файл с другого CDN, либо обновлять подписку, уже находясь под VPN с другого канала.
Как закрыть подписку от посторонних?
Сделайте репозиторий приватным и обращайтесь к файлу через GitHub API с Personal Access Token, либо храните файл под длинным случайным именем в публичном репозитории. Помните: публичная raw-ссылка фактически открыта всем, кто её узнает.
Можно ли держать в одной подписке несколько серверов?
Да. Добавьте каждую строку vless:// на отдельной линии перед кодированием в Base64 — клиент покажет их как группу и позволит переключаться между серверами и тестировать задержку.
Материал носит технический характер. Соблюдайте местные законы при использовании сетевых инструментов. Univista не отвечает за ваш сценарий использования.
Поддержка
Univista · Подключайтесь к миру
Привет, я помощник службы поддержки Univista. Как я могу помочь?