Reefox

Сервер с панелью 3x-ui

Как добавить VPN-сервер с панелью 3x-ui: мастер из четырёх шагов, SSH-доступ, вход в панель, выбор инбаунда и лимит пользователей. Что Reefox Panel делает после создания.

Тип 3x-ui — сервер, на котором вы сами поставили панель 3x-ui и создали подключение (инбаунд). Reefox Panel заходит в панель по API и сам заводит на этом инбаунде клиентов: создаёт, продлевает, отключает и удаляет их.

Как поставить 3x-ui и создать первое подключение — в руководстве VPN-серверы и локации.

Что нужно заранее

  • VPS с панелью 3x-ui версии 3.x, отдельный от сервера Reefox Panel.
  • Доступ по SSH на порту 22: пользователь (обычно root) и пароль или приватный ключ.
  • На панели хотя бы одно подключение VLESS или Hysteria2.
  • API-токен панели (Settings → Security) или логин и пароль панели.

Где запускается мастер

  • «Добавить локацию» вверху страницы — новая локация вместе с первым сервером. Шаги: Сервер → Панель → Проверка → Готово.
  • «Добавить сервер» в карточке локации — ещё один сервер в существующую локацию. Шаги те же, первый называется SSH, а выбор страны пропущен.

Шаг 1. Сервер

Новая локация: шаг «Сервер»

ПолеЧто вводить
СтранаВыберите из списка, можно искать по названию. Страны, где у вас уже есть локация, помечены «(уже есть)», но выбрать их можно — получится вторая локация той же страны, например для другого протокола. Флаг и название подставятся сами, переименовать можно потом.
Локация БСОтметьте, если это локация обхода белых списков. Её трафик пойдёт в лимит БС пакета. Подробно — Настройки БС и локации БС.
Тип сервера3x-ui.
IP-адресПубличный IP VPS, например 203.0.113.10. Через полсекунды после ввода мастер проверит, нет ли этого IP среди ваших серверов, и предупредит: «Этот IP уже используется в локации …».
Пользователь SSHПо умолчанию root.
Доступ по SSHПереключатель Пароль / Ключ. Для ключа вставьте приватный ключ целиком, от строки -----BEGIN OPENSSH PRIVATE KEY----- до -----END OPENSSH PRIVATE KEY-----.

Нажмите «Подключиться». Reefox Panel зайдёт на сервер по SSH и прочитает из базы 3x-ui:

  • адрес панели — порт, секретный путь и протокол (https, если в панели задан сертификат; если в панели указан домен, адрес будет с доменом);
  • логин администратора панели;
  • список подключений (инбаундов).

Если подключиться не вышло, появится «Не получилось подключиться» и текст ошибки, например SSH error: …. Проверьте IP, пароль, что порт 22 открыт и что на сервере стоит 3x-ui.

SSH нужен и для 3x-ui

Без SSH мастер не найдёт настройки панели и дальше не пустит. SSH также нужен для замера скорости, блокировки IP и уборки при удалении сервера. Если вы сменили SSH-пароль, обновите его в «Изменить сервер».

Шаг 2. Панель

Шаг «Панель»: адрес 3x-ui, API-токен и выбор инбаунда

ПолеЧто вводить
Адрес панели 3x-uiПодставлен сам, рядом пометка «Определён автоматически». Меняйте, только если панель доступна по другому адресу. Формат: https://IP:порт/путь/.
Вход в панельAPI-токен или Логин и пароль.
API-токен 3x-uiТокен из раздела Settings → Security панели. Рекомендуемый способ.
Логин 3x-ui и Пароль 3x-uiЕсли токена в вашей версии нет. Логин обычно подставлен сам, пароль из базы прочитать нельзя — введите его.
ИнбаундПодключение, на котором будут создаваться ключи ваших клиентов.

Выбор инбаунда

Каждый инбаунд показан карточкой: протокол и порт, затем защита и транспорт (например «Reality + TCP»), сколько на нём клиентов и его имя (tag). Метки:

  • «не поддерживается» — протокол не VLESS и не Hysteria2 (VMess, Trojan, Shadowsocks и т. п.). Выбрать нельзя.
  • «другой протокол» — при добавлении сервера в существующую локацию: протокол не совпадает с локацией. Выбрать нельзя.
  • «выключен» — инбаунд выключен в самой 3x-ui. Выбрать можно, но пока он выключен, клиенты к нему не подключатся. Включите его в панели.

Мастер сам отмечает первый включённый подходящий инбаунд. Если панель не вернула ни одного подключения, вместо списка будет поле «ID инбаунда» — номер подключения из панели.

Поддерживаемые подключения

ПротоколТранспорт и защита
VLESSTCP, XHTTP, WebSocket, gRPC, HTTPUpgrade; Reality, TLS или без защиты
Hysteria2UDP; на сервере должен быть открыт UDP-порт

Ссылки для клиентов Reefox Panel берёт из настроек инбаунда в 3x-ui. Если сервер стоит за CDN или прокси, публичный адрес и порт задайте в самой панели (External Proxy или Hosts у подключения).

Hysteria2 и приложения

Приложение v2RayTun не открывает Hysteria2. Как только у вас появляется Hysteria2-локация, Reefox Panel перестаёт предлагать клиентам v2RayTun. Для Hysteria2 лучше сделать отдельную локацию: в одной локации — один протокол.

Кнопка «Далее» активна, когда заполнены адрес, вход в панель и выбран инбаунд.

Шаг 3. Проверка

Шаг «Проверка»: сводка перед проверкой

Сверху — сводка: локация, IP, панель, способ входа и номер инбаунда. Нажмите «Запустить проверку».

На этом шаге Reefox Panel входит в панель с вашими данными: SSH уже проверен на первом шаге. Скорость канала в мастере не замеряется — сделайте это после создания кнопкой «Замерить скорость» на карточке сервера.

  • Успех — мастер сам перейдёт на шаг «Готово» с отметкой «Панель 3x-ui подключена».
  • Ошибка — «3x-ui: …» с причиной (неверный токен, пароль, адрес) и подсказка «Исправьте данные на прошлом шаге или проверьте ещё раз». Вернитесь кнопкой «Назад» или нажмите «Проверить ещё раз».

При добавлении сервера в существующую локацию на шаге «Готово» дополнительно показан блок «Что умеет панель»: какие возможности API нашлись («Новый API», «Клиенты», «Ссылки», «Трафик», «Статус»), протоколы панели и выбранный инбаунд. Предупреждения панели — там же.

Шаг 4. Готово

Шаг «Готово»: лимит пользователей и создание локации

«Максимум пользователей» — сколько подписок можно выдать на этот сервер. Только цифры, поле обязательное (в подсказке поля — 1000, но значение нужно ввести самому). Когда сервер заполнится, новые ключи пойдут на другие серверы локации; если мест нет нигде, Reefox Panel пришлёт в Telegram «Не хватило места».

Ориентиры: канал 1 Гбит/с — 500–600 подписок, 100 Мбит/с — около 60. Значение можно поменять позже в «Изменить сервер».

Ниже — итоговая сводка. Нажмите «Создать локацию» (или «Сохранить сервер» в окне добавления сервера).

Что происходит после создания

Reefox Panel ещё раз подключается к панели и проверяет, что выбранный инбаунд — VLESS или Hysteria2. Если нет, сервер не сохранится, и вы увидите причину.

Сервер получает имя по коду страны и номеру, например «NL-1», и статус «Работает».

В фоне начинается выдача ключей: каждому клиенту с активной подпиской, у которого ещё нет ключа в этой локации, создаётся клиент на инбаунде. Ход виден в карточке: «Выдаём ключи · N %», затем «Выдано N ключей». Итог придёт в Telegram администратору.

Новая локация появится у клиентов в приложении при следующем обновлении подписки. Ничего делать им не нужно.

Если локация создалась, а сервер — нет, появится окно «Локация создана, но сервер не добавлен» с причиной. Пустая локация останется в списке: добавьте в неё сервер через «Добавить сервер» или удалите её.

Изменить сервер

В меню ⋯ сервера → «Изменить сервер». Окно открывается сразу на шаге «Панель». Поля паролей и токена пустые — пустое поле значит «оставить как было», вводите только то, что меняете. После изменений пройдите проверку заново и нажмите «Сохранить сервер».

Тот же сервер, другой инбаунд

Если IP уже есть у вас в другой локации (например, VLESS-инбаунд), второй инбаунд той же машины можно добавить в другую локацию. В окне «Добавить сервер» токен или пароль панели можно не вводить: их возьмут у уже добавленного сервера. Один и тот же инбаунд дважды добавить нельзя, как и одну машину дважды в одну локацию.

Нюансы

Что нужно знать

  • Клиентов с именами вида 123456789_vpn в 3x-ui не трогайте. Их создаёт и удаляет Reefox Panel.
  • Если панель пускает только разрешённые IP, добавьте в список IP сервера Reefox Panel: он опрашивает панель каждые несколько секунд.
  • Порт или настройки инбаунда поменяли в 3x-ui — Reefox Panel подхватит изменения сам. Если у клиентов остались старые ссылки, перевыпустите ключи в разделе «Ключи».
  • Агента на сервер 3x-ui ставить не нужно. Статус, процессор, память и трафик приходят из API панели.