VLESS Гайд

Опубликовано: 2026-04-14 · Автор: Артём Беляев

Многие называют это «ускорителем для YouTube», «турбо-каналом» или «защищённым тоннелем» — суть та же.

Бэкап VLESS-сервера: что и как сохранять

Когда я только начинал поднимать свой VLESS-сервер на VPS, первое, о чем я не подумал — бэкапы. Поднял конфиг за час, настроил клиентов, ребятам раздал ссылки. А через неделю сервер упал после ребута — забыл, что при переустановке панели управления всё слетает. Пришлось заново создавать 12 пользователей, высылать ключи, объяснять, почему доступ пропал. С тех пор у меня скрипт на cron каждую ночь снимает копию. Расскажу, что конкретно надо сохранять и как это автоматизировать.

Основные файлы для бэкапа: конфиг Xray и база пользователей

На сервере с VLESS Reality или WebSocket критичны два компонента:

Проверял на Debian 12, Xray-core 1.8.4. Для панели 3X-UI версии x-ui-v2.3.0 база лежит в /etc/x-ui/x-ui.db. Если ставил вручную — файлы конфигов обычно в /etc/xray/.

Второстепенные, но полезные:

Как сделать бэкап вручную и через cron (пошагово)

Ручной бэкап за 2 минуты

  1. Заходишь на сервер по SSH.
  2. Останавливаешь Xray, чтобы конфиг не менялся в момент копирования:

``` systemctl stop xray systemctl stop x-ui # если панель ```

  1. Копируешь файлы во временную папку:

``` cp /usr/local/etc/xray/config.json /root/backup/ cp /etc/x-ui/x-ui.db /root/backup/ ```

  1. Запускаешь обратно:

``` systemctl start xray systemctl start x-ui ```

  1. Архивируешь папку backup и скачиваешь на локальную машину через SCP или rsync.

Для новичка: команда scp root@IP:/root/backup.tar.gz ./ скопирует архив на твой компьютер. IP замени на адрес VPS.

Автоматизация через cron

Создаёшь скрипт /root/backup-xray.sh:

#!/bin/bash
BACKUP_DIR="/root/xray-backups"
mkdir -p $BACKUP_DIR
systemctl stop xray
systemctl stop x-ui
tar -czf $BACKUP_DIR/xray-backup-$(date +%Y%m%d-%H%M).tar.gz /usr/local/etc/xray/config.json /etc/x-ui/x-ui.db /etc/letsencrypt
systemctl start xray
systemctl start x-ui
find $BACKUP_DIR -type f -mtime +30 -delete  # удалять бэкапы старше 30 дней

Делаешь chmod +x /root/backup-xray.sh и добавляешь в crontab:

0 3 * * * /root/backup-xray.sh

Теперь каждую ночь в 3:00 будет создаваться архив. Я храню 30 копий — если что-то сломал неделю назад, можно откатиться.

Подводные камни: права доступа, версии Xray и завязанность на панель

Права на config.json

После восстановления из бэкапа Xray может не запуститься, если у файла не те права. Проверял: дефолтные 644 (rw-r--r--), владелец root. Если скопировал и права слетели — делай chmod 644 /usr/local/etc/xray/config.json.

Версия Xray

Если обновил Xray с 1.8.0 до 1.8.4, старый config.json обычно подходит. Но если в новой версии меняется синтаксис параметров (редко, но бывает), Xray не стартует. Лучше держать бэкап бинарника Xray: /usr/local/bin/xray. Тогда при восстановлении ставишь ту же версию.

Завязанность на панель

Если ты используешь 3X-UI, то база x-ui.db привязана к версии панели. После обновления панели на новую мажорную версию (например, с 1.x на 2.x) старая база может не открыться. В таком случае делай экспорт пользователей в JSON через встроенный функционал панели (Export -> All Configs). Я всегда храню и .db, и экспортированный JSON.

SSL-сертификаты

Если используешь Let's Encrypt, сертификаты живут 90 дней. В бэкапе они могут устареть. После восстановления запусти certbot renew — он либо продлит, либо покажет, что всё ок. Без сертификатов может не работать HTTPS-инбаунд.

Практическая проверка восстановления на тестовом сервере

Я развернул второй VPS с Debian 12, поставил на него Xray 1.8.4 и 3X-UI v2.3.0. Скопировал туда свой бэкап config.json + x-ui.db. Запустил — всё встало с первого раза.

Метрики для проверки:

Единственная деталь — пришлось заново привязать домен к IP и обновить DNS. Если в бэкапе лежит старый IP (например, был сервер в Германии, а новый в Нидерландах), то в конфиге нужно поменять адрес. Это вручную, через sed или в панели.

Альтернативы: rsync, git, облачное хранение

  1. Rsync на другой сервер — копирует только изменения, работает быстро. Минус: нужен ещё один VPS или NAS. Скрипт: rsync -avz /root/xray-backups/ user@backup-server:/backups/. У меня так каждую ночь дублируется на сервер в Нидерландах.
  2. Git-репозиторий — для конфигов без базы пользователей. Инициализируешь git в /usr/local/etc/xray/, коммитишь config.json, пушишь в приватный репозиторий GitHub/GitLab. Минус: база пользователей (x-ui.db) бинарная, её в git смысла пихать нет, только если как release-артефакт. Плюс: можно откатиться к любой версии конфига.
  3. Облачное хранилище (S3, Backblaze B2) — через rclone. Ставишь rclone, настраиваешь удалённое хранилище, в cron добавляешь rclone copy /root/xray-backups remote:backups. Стоимость копеечная — у Backblaze B2 $0.01 за ГБ в месяц. Минус: нужен API-ключ и настройка для новичка может быть сложной.

Я комбинирую rsync + локальный архив. Если VPS падает полностью, бэкап лежит на втором сервере, конфиг разворачивается за 3-4 минуты.

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

Как сохранить пользователей VLESS без панели? Если вручную прописывал clients в config.json — просто скопируй config.json. Там в секции "inbounds" → "settings" → "clients" лежат id и email всех пользователей. Или экспортируй через xray api команду, если включён gRPC API.

Что делать, если после восстановления Xray не стартует? Смотри логи: journalctl -u xray --no-pager -n 50. Чаще всего проблема в синтаксисе config.json — лишняя запятая или отсутствующая скобка. Проверяй через xray -test -config /usr/local/etc/xray/config.json. Если ошибка про SSL — обнови сертификаты.

Можно ли восстановить доступ к сервисам без пересоздания ключей? Да, именно для этого и нужен бэкап. Если сохранил x-ui.db, то все существующие ключи работают. Клиентам не нужно ничего менять — они продолжают подключаться по тем же ссылкам.

Как часто надо делать бэкап? Я делаю раз в сутки (ночной cron) и дополнительно перед каждым обновлением Xray или панели. Если добавляешь пользователей часто — можно раз в час, но нагрузка на диск минимальная, файлы весят килобайты.

Бэкап config.json защищает от всех проблем? Нет, если используется база данных панели — нужна и она. Config.json без x-ui.db вернёт настройки инбаундов, но всех клиентов придётся вбивать вручную. Лучше сохранять оба файла.


Итог: бэкап конфига и базы пользователей — это 10 минут на настройку и спокойный сон. Я не хочу снова собирать 12 ключей и объяснять, почему упал доступ. Автоматизируй — и забудь. Если не хочешь заморачиваться с собственным сервером, 🎁 3 дня бесплатно — для тебя

👉 🎁 3 дня бесплатно — для тебя
Алексей Т.Настраиваю VLESS-серверы 3 года. Пишу о протоколах шифрования понятно для всех.
🎁 3 дня бесплатно — для тебя