Skip to content

Переезд с другой панели ​

nexora-migrate — небольшая программа, которая копирует пользователей и настройки другой VPN-панели в Nexora: учётные данные, остаток трафика, даты окончания, инбаунды, аутбаунды, маршрутизацию, DNS и администраторов. Если формат ссылок старой панели это позволяет, ваши клиенты сохраняют свою текущую ссылку подписки.

Программа работает как локальный веб-мастер на вашем компьютере или на сервере, читает старую панель и записывает данные в панель Nexora через её API.

Какие панели ​

ПанельОткуда читаетсяЧто переносится
s-uiфайл базы или работающая панельпользователи, инбаунды, аутбаунды, эндпоинты, маршрутизация, DNS, администраторы
3x-uiфайл базы или работающая панельпользователи, инбаунды, WireGuard как эндпоинты, аутбаунды, маршрутизация, DNS, администраторы
x-ui (оригинал и его форки)файл базы или работающая панельто же, что у 3x-ui
Marzbanработающая панельпользователи, администраторы, инбаунды, аутбаунды, маршрутизация, DNS
PasarGuardработающая панельто же, что у Marzban; каждая конфигурация ядра становится отдельным шаблоном
Hiddifyработающая панельпользователи и администраторы
Marzneshinработающая панельпользователи и администраторы
Remnawaveработающая панельпользователи

s-ui, 3x-ui и x-ui хранят всё в одном файле SQLite: его можно скопировать с сервера и перетащить на страницу, и старой панели не обязательно работать. 3x-ui и x-ui оба называют свой файл x-ui.db, но хранят маршрутизацию по-разному: выбирайте 3x-ui для 3x-ui и x-ui для оригинального x-ui и его форков. При неверном выборе пользователи всё равно переносятся, но маршрутизация и аутбаунды приходят пустыми, и мастер об этом предупреждает.

Остальные панели читаются через их собственный API, с логином администратора sudo или с API-ключом.

Запуск ​

Скачайте версию для своей системы со страницы выпусков (Windows, Linux и macOS). В Linux:

bash
curl -LO https://github.com/nexora-vpn/nexora-migrate/releases/latest/download/nexora-migrate-linux-amd64.tar.gz
tar -xzf nexora-migrate-linux-amd64.tar.gz
./nexora-migrate

В Windows распакуйте архив и дважды щёлкните nexora-migrate.exe. В macOS один раз снимите карантин загрузки командой xattr -d com.apple.quarantine nexora-migrate.

Программа печатает ссылку вида http://127.0.0.1:8787/?key=…. Откройте её в браузере. Ключ срабатывает один раз, а мастер слушает только 127.0.0.1. Чтобы запустить его на сервере, не открывайте порт: подключитесь через SSH-туннель и откройте ссылку на своём компьютере:

bash
ssh -L 8787:127.0.0.1:8787 root@203.0.113.10

-listen 127.0.0.1:9000 выбирает другой порт, а -no-browser только печатает ссылку.

Пять шагов ​

  1. Исходная панель. Выберите старую панель и укажите её файл базы или адрес. Вставьте адрес точно в том виде, в каком открываете его, вместе с секретным путём, если он есть.
  2. Просмотр и выбор. Все преобразованные элементы показаны по группам. Отметьте всё, группу или отдельные строки. Жёлтая строка переносится с изменением, которое объясняет её примечание. Красная строка перенесена быть не может и показана, чтобы вы о ней знали.
  3. Подключение Nexora. Адрес вашей панели Nexora и имя пользователя с паролем или API-токен. При двухфакторном входе — ещё и текущий код.
  4. Предпросмотр. Точно то, что будет создано, сколько места осталось в лицензии и какие имена уже заняты. Пока ничего не записано.
  5. Перенос. Ход показывается в реальном времени. В конце можно сохранить отчёт.

Что знать до переноса ​

  • Ссылки подписки. Nexora отвечает и на старые ссылки /sub/{token}. Для s-ui, 3x-ui, x-ui, Marzban и PasarGuard существующие ссылки продолжают работать, как только старый домен указывает на Nexora. Пользователи Marzneshin, Hiddify и Remnawave получают новые ссылки; мастер сообщает это для каждого пользователя.
  • Один набор учётных данных на пользователя. Nexora хранит для пользователя один UUID и один пароль. Если у старой панели они были свои для каждого протокола, UUID берётся из VLESS/VMess, а пароль — из Trojan/Shadowsocks, и в строке указано, что отброшено.
  • Инбаунды преобразуются в формат Nexora. Настройки, у которых нет аналога в Nexora, например fallbacks, mux и маскировка заголовков TCP, отбрасываются с примечанием в строке. Инбаунд REALITY без приватного ключа получает новый ключ, и его пользователям нужны новые ссылки. Проверьте каждый инбаунд, прежде чем ставить его на узел.
  • Аутбаунд direct. Nexora сама даёт каждому узлу аутбаунд direct, поэтому старый не создаётся заново, а правила, которые на него ссылались, используют аутбаунд Nexora.
  • Пиры WireGuard переносятся на свой эндпоинт как есть. Пользователями Nexora они не становятся.
  • На время переноса узлы приостанавливаются и синхронизируются один раз в конце, чтобы избежать тысяч обновлений. Они включаются обратно, даже если перенос не удался.
  • Пароли администраторов перенести нельзя. Импортированные администраторы получают сгенерированный пароль, который показывается один раз на последней странице и нигде не сохраняется. Запишите его.

После переезда ​

Импортированные инбаунды, аутбаунды и правила собраны в шаблон Nexora. Назначьте этот шаблон своим узлам, затем проверьте, что узлы подключаются и ссылки работают (Первый пользователь за десять минут).

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

Текст и изображения — CC BY 4.0.