Summing up Config&Profiles
В этой статье мы проведем небольшой обзор новой системы – Профилей Конфигураций (Config Profiles) и Внутренних Сквадов (Internal Squads), которая будет доступна с релизом 2.0 (планируется в середине июля/начале августа 2025-го года).
Как это реализивано в 1.x?
Итак, в версии 1.x это работает довольно просто и банально.
У нас есть центральный конфиг ядра – Xray Config (в соотвествующем разделе в админ-панели). Из этого конфига панель извлекает все Inbound'ы и их тэги. Тэг является уникальным и явно идентифицирует Inbound.
При подключении Remnawave Node вы выбираете Inbound'ы
, которые будут находиться в конфиге ядра этой ноды.
С другой стороны, при карточке пользователя вы также выбираете активные Inbound'ы
, доступные этому пользователя.
Такой базовый подход хоть и довольно просто реализован, но имеет ряд недостатков:
- Конфигурация ядра глобально – одна для всех нод.
Если вам жизненно необходимо иметь полностью разные конфиги на каждой ноде – это начинает быть серьезной проблемой. - При большом количестве
Inbound'ов
управление пользователями начинает приносить головную боль.
Из-за того, что пользователь привязывается напрямую к определеннымInbound'у
, при их частом изменении управление пользователями становится очень сложным. - При изменении общего конфига перезапускаются все ноды. Если вы сделали ошибку в конфиге, то пользователи не смогут подключиться ни к одной ноде, пока вы не исправите ошибку.

Эту систему можно отобразить в виде упрощенной схемы выше.
И закрепим материал: глобально у нас есть один центральный конфиг ядра, в карточке ноды мы выбираем, какие Inbound'ы
будут физически присутствовать в конфиге ядра этой ноды, а затем в карточке пользователя мы выбираем, какие Inbound'ы
будут доступны для этого пользователя. По итогу Remnawave при старте ноды собирает готовый конфиг и отправляет его в ядро.
Как это будет в 2.x?
Начиная с версии 2.0 мы вводим новые понятия в рамках панели:
- Профили конфигурации (Config Profiles) – каждый профиль конфигурации – это полноценный конфиг ядра. Вы можете создать сколько угодно профилей конфигурации – но тэги Inbound'ов должны быть глобально уникальные. После сохранения профиля Remnawave извлечет все тэги
Inbound'ов
этого профиля и сохранит их в базу данных. - Внутренние сквады (Internal Squads) – пользовательские группы. В каждом из сквадов вы можете выбрать, какие
Inbound'ы
будут в нем доступны. Можно выбирать любыеInbound'ы
со всех доступных Профилей конфигурации.
Профили конфигурации (Config Profiles)

В новом разделе Профили конфигурации можно создать новые профили, скачать JSON-файл уже существующего профиля, удалить профиль.
Редактор в целом не претерпел изменений и выглядит так же, как и раньше.

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


Итак, мы видим, что в новой системе мы можем выбрать Профиль конфигурации, который будет активен на конкретной ноде, и какие Inbound'ы
из выбранного Профиля будут активированы на этой ноде.
Просуммируем:
- Вы можете создавать сколько угодно Профилей конфигурации – но тэги
Inbound'ов
должны быть глобально уникальные. - Вы можете выбрать Профиль конфигурации для ноды и указать, какие
Inbound'ы
из выбранного Профиля будут активированы на этой ноде.
Внутренние сквады (Internal Squads)
Перейдем к Внутренним сквадам (Internal Squads). В общем списке доступна небольшая статистика по сквадам: количество пользователей, количество активных Inbound'ов
по каждому скваду.


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

В карточке пользователя доступен выбор сквадов: пользователю можно присвоить несколько сквадов одновременно.
Также в карточке пользователя есть шорткат к быстрому редактированию конкретного сквада.

При таком уровне абстракции администратор не может сразу понять, к каким нодам привязан конкретный пользователь. Рассмотрим возможный выход из ситуации.
В карточке пользователя доступна новая кнопка – View Accessible Nodes.

В данном разделе отображаются все ноды, доступные пользователю, а также поясняется, почему именно у него есть доступ к каждой из них - в частности, из‑за членства в соответствующих сквадах.
Итоги
Ниже представлена схема новой системы.

Новая система устраняет перечисленные недостатки старой: при изменении профиля конфигурации (конфига ядра) перезапускаются только ноды, использующие этот профиль.