Skip to main content

Быстрый старт

· 19 min read
Remnawave
Maintainer

В этой небольшой статье мы во всех подробностях и деталях расскажем о функциях панели, которые помогут вам быстро разобраться с ее работой.
Мы буквально пройдемся от первого входа в админ-панель до импорта подписки в клиентские приложения.

Внимание

Эта статья написана для версии панели 2.0 и новее.

Дисклеймер

Статья так же подразумевает, что вы уже установили Remnawave и ее компоненты. Статья в большей степени будет сфокусирована на разборе функционала панели.


Первые шаги

Итак, после того как вы установили панель и необходимые компоненты, в браузере откроется админ-панель.

First steps

Для начала нам необходимо зарегистрироваться. Зарегистрированный пользователь будет является "супер-админом".

Совет

Если вы вдруг забудете пароль, вы всегда можете пересоздать супер-админа через Rescue CLI.

Для входа в Rescue CLI введите команду: docker exec -it remnawave remnawave-rescue-cli


Главная страница

После регистрации вы увидите главную страницу панели.

First steps

Разберем все элементы, которые вы видите на этой странице.

Статистика Remnawave

Remnawave stats

В первых двух блоках – "Remnawave Usage", "Process Details" – вы можете увидеть как Remnawave использует ресурсы системы в данный момент. В "Process Details" вы можете увидеть, какие из внутренних процессов Remnawave используют больше всего ресурсов.
В зависимости от настройки, REST-API процессов может быть больше, чем один.

Расход трафика

Traffic usage

В этом блоке отображается общая статистика по расходу трафика по всем пользователям со сравнением по времени за аналогичный период.
Возьмем например – "Сегодня". Если мы открыли панель в 16:00, то в этом блоке будет отображаться статистика за период с 0:00 до 16:00, но сравнение будет происходит с вчерашним календарным днем. (0:00 - 23:59)

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

Пользователи

Users

Эти три блока мы объединим в одно описание.

Думаю, вы уже заметили, что есть две разных карточки, которые показывают онлайн пользователей:

  1. Раздел Система > Total online on nodes
    • Отображает общее количество онлайн пользователей по всем нодам. Один пользователь может быть одновременно подключен к нескольким нодам, в этой графе показанно сумма всех пользователей на всех нодах, включая дубликаты.
    • Пример: если пользователь Х подключен к нодам A и B, то в этой графе будет отображаться 2 пользователя.
  2. Раздел Онлайн > В сети
    • Отображает общее количество онлайн пользователей, но не учитывает дубликаты.
    • Пример: если пользователь Х подключен к нодам A и B, то в этой графе будет отображаться 1 пользователь.

Интерсекция

Чтобы продолжить, необходимо закрепить некоторые базовые моменты.

Remnawave (как панель) – не содержит в себе Xray-ядра, следовательно даже если вы создатите пользователя, настроите хосты, инбаунды и прочее, НО не подключите Remnawave Node – пользователь не сможет подключиться к прокси. Никакие настройки не помогут, пока не подключите Remnawave Node.

Следовательно, нашим дальнейшим шагом будет подключение Remnawave Node – поэтому мы перейдем в раздел Ноды > Управление (Nodes > Management).

Внимание

В этой статье не будет описано, как именно установить Remnawave Node на этот или другой сервер, для подробной информации по установке, пожалуйста, обратитесь к документации по установке.

Ноды

мы находимся в разделе Ноды > Управление (Nodes > Management)

Nodes management

Итак, в самом верху находится небольшой блок из 4-ех карточек, которые отображает некоторую статистику по текущему часу. (От начала часа до текущего момента: если вы открываете панель в 16:30, то статистика будет за период с 16:00 до 16:30).

Чуть ниже находится блок действий, выберите опцию Создать новую ноду (Сreate new node).

Node vitals

Node vitals

В этом блоке находятся жизненно важные параметры, без которых создать ноду не получится.

  • Страна – выберите страну, в которой будет находиться нода.
  • Внутреннее имя – это имя, которое будет использоваться для идентификации ноды в Remnawave.
  • Адрес – IP-адрес ноды (может так же являться доменом)
  • Порт – порт, на котором уже запущен Remnawave Node.

Consumption

Consumption

Коэффиент – множитель к трафику пользователя (1.0 = нормальный, 0.5 = половина, 2.0 = двойной).
Простыми словами, это означает, что если лимит трафика пользователя составляет 1 ГБ, а множитель потребления равен 2.0, пользователь сможет использовать только 0.5 ГБ трафика (реальное использование), но Remnawave покажет использование как 1 ГБ и пользователь будет переведен в статус LIMITED.

Core Configuration

Core Configuration

Этот блок так же является обязательно и без него нельзя создать ноду.

Здесь вам необхоимо выбрать, с каким Config Profile вы хотите запустить ноду.

Но, так как мы букквально только что запустили панель, у нас имеется только один профиль, который был автоматически сгенерирован панелью.

Нажмите на кнопку Select config profile (Select config profile), чтобы выбрать профиль.

Сonfig Profiles

Справа откроется меню, в которым вы можете увидеть все профили, а так же какие инбаунды находятся в каждом из профилей.

Для нас сейчас главное закрепить: мы можем выбрать только один профиль, так как профиль представляет из себя полноценную конфигурацию ядра Xray. Так что просто технически невозможно выбрать несколько профилей.

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

Так как у нас сейчас нет выбора, мы выберем Shadowsocks.

Сonfig Profiles

Обязательно сохраните выбор, нажав на синюю кнопку в верху экрана.

Tracking & Billing

Tracking & Billing

Этот раздел представляет из себя набор строго опциональных элементов, которые не обязательно должны быть заполнены.

  • Infrastructure Provider – на данный момент этот селектор недоступен, так как мы еще не создали "провайдеров", к которым можно привязать эту ноду. Чуть позже в этой статьи мы обязательно это сделаем. Вкратце, провайдер (или можно сказать хостер) – это сайт, где вы арендуете VPS/VDS. Если создать такого провайдера, вы можете привязать к нему ноду, а Remnawave будет отображать эту информацию в общем списке нод.

  • Track traffic usage – этот чекбокс отвечает за то, будет ли Remnawave отслеживать использование трафика на ноде. На самом деле панель в любом будет случае отслежить и записывать трафик, но если включить и настроить этот пункт, при достижении лимита – панель пришлет вам уведомление о том, что лимит достигнут. Так же в указанных день – этот лимит будет сбрасываться.

Пример: допустим, мы арендовали VPS у хостера Hetzner. Они предоставляет 20ТБ трафика ежемесячно. Расчет трафика у Hetzner происходит по схеме IN+OUT, а так как при использовании Xray идет расход трафика в обе стороны – наш реальный лимит это 10ТБ.
В Hetzner трафик сбрасывается каждый месяц 1-ого числа.

Основываясь на этих данных, мы можем настроить следующие параметры:

  • Traffic limit – лимит трафика в ГБ. В нашем случае это 10ТБ.
  • Reset day – день, в который будет сбрасываться лимит трафика. В нашем случае это 1-ое число.
  • Notification % – процент, в котором будет отправлено уведомление о достижении лимита. В нашем случае это 90%.

И при таких параметрах, Remnawave будет отправлять уведомление о том, что лимит достигнут, когда будет использовано 9ТБ трафика. А затем, 1-ого числа трафик будет сброшен и все начнется сначала.


Node Management

Tracking & Billing

После того, как мы заполнили все необходимые поля, мы можем создать ноду.

Tracking & Billing

И вот мы снова в общем списке нод, спустя несколько секунд после создания ноды – Remnawave подключиться к ней и запустит ядро Xray.

Отслеживать состояние ноды можно по иконке слева (в карточке каждой ноды в общем списке нод), а так же по фоновому цвету карточки.

Tracking & Billing

Если мы нажмем на карточку ноды, откроется модальное окно, где мы можем отредактировать параметры ноды, а так же многие другие параметры.

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

  • Слева вы можете увидеть иконку и число, которое обозначает количество пользователей, которые подключены к ноде конкретно в данный момент времени.
  • По центру отображается версия ядра Xray, которое запущено на ноде.
  • Справа отображается версия Remnawave Node
Tracking & Billing

Так же появилась кнопка More actions (More actions), которая открывает дополнительные действия с нодой.

  • Show usage – открывает модальное окно, в котором отображается статистика по использованию ноды за выбранный период по пользователям. Пока что нам нет смысла его открывать, так как там будет пусто. Вернемся к этому чуть позже.
  • Copy UUID – копирует UUID ноды, может пригодится для работы с API.
  • Disable – отключает ноду.
  • Delete – удаляет ноду.

Интерсекция

Итак, мы успешно создали и подключили Remnawave Node. И вот, нам уже кажется, что мы можем создать пользователя и подключиться, но нет.

Следующим шагом будет создание хоста.

Хост – эта такая сущность, которая "направит" пользователя на ноду из ваших нод.

На руках у пользователя в большинстве случаев будет ссылка, в простонародье это называется подписка (или subscrtipion url) или просто ссылка.

Subscriotion URL – это ссылка, при открытии которой пользователь получит список хостов, которые ему доступны.
А вот куда уже будут направлены хосты – это как раз то, чем мы сейчас и займемся.

И закрепим материал:

  • у конечного пользователя на руках будет ссылка
  • при добавлении в клиентское приложение, пользователь получит список хостов, которые ему доступны
  • пользователь выбирает для подключения один из хостов и подключается к ноде

Хосты

Hosts

После перехода в раздел Хосты (Hosts) выберите опцию Создать хост (Create host).

Перед вами открылось модальное окно.

  • Видимость хоста (Host visibility) – этот пункт отвечает за то, будет ли хост виден пользователям.
    • Например, мы можем создать хост, но отключить ему видимость – в таком случае в подписке пользователя не будет отображаться этот хост.
  • Примечание (Remark) – это "название" хоста, которое будет видно пользователю в клиентском приложении.
Hosts

Но прежде чем вы направим хост на одну из наших нод, необходимо выбрать к какому инбаунду будет принадлежать этот хост.

Дело в том, что хост (как сущность) строго привязан к одному конкретному инбаунд, так как хост наследует все настройки инбаунда, а "Расширенные настройки" в карточке хоста позволяют перезаписать некоторые из них.

Нажимаем на кнопку выбора инбаундов и перед нами открывается уже знакомое окно с Сonfig Profiles. Однако, в этот раз вы можете выбрать один единственный инбаунд из любого созданного вами профиля.

Выберем Shadowsocks и сохраним изменения.

Hosts

Внимательный читатель мог заметить, что после выбора инбаунда – поле порт автоматически заполнилось. Хорошее замечение!
Как уже упоминалось выше, хост наследует все параметры инбаунды, следовательно и порт тоже.

Примечание: в большинстве случаев порт в хосте будет совпадать с портом инбаунда, но это не всегда так. В некоторых конфигурациях Xray порты инбаунда и хоста могут отличаться.

Остается единственные поле, которые мы еще не обсудили – это адрес. C ним немного интересная история, сейчас расскажу.

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

Базовый пример: чуть ранее мы добавили ноду с IP-адресом 1.2.3.4, затем мы создали A-запись в DNS-сервере, которая будет указывать на этот IP-адрес.
Пусть будет: node.domain.com > 1.2.3.4.
Это означает, что в поле адрес мы можем вписать node.domain.com.

Примечание: но почему просто всегда не указывать просто IP-адрес? Дело в том, что IP-адрес вашей ноды может изменится, но при этом сам хост останется тем же. И чтобы конечный пользователь получил новый IP-адрес, ему необходимо будет обновить подписку. А процедуры "автообновления" подписки в клиентских приложениях могут работать далеко не всегда.
С другой стороны, если вы используете домен, то чтобы у этого хоста обновить IP-адрес, вам необходимо будет обновить DNS-запись. Никаких дополнительных действий со стороны пользователя не потребуется.


Hosts

И глянем одним глазком на расширенные опции, которые доступны в карточке хоста. Многие из них предоставляет возможность перезаписать некоторые параметры инбаунда из конфигурации Xray. Например, SNI позволяет перезаписать аналогичный параметр в конфигурации инбаунда – serverNames. В случае отсутствия этого параметра в хосте, Remnawave будет использовать параметр из конфигурации инбаунда.


Hosts

После создания хоста, он появится в общем списке хостов. При нажатии на него, откроется окно редактирования.

Интерсекция

Итак, мы создали хост, который будет направлять пользователя на одну из наших нод.
Теперь нам необходимо создать пользователя, который будет использовать этот хост.

Но перед этим, давайте рассмотрим, что же такое внутренний сквад.

Чуть ранее мы уже обсуждали Config Profiles, которые представляют из себя полноценные конфигурации ядра Xray и в карточке ноды мы могли выбрать активный профиль и активировать инбаунды.

Если попробовать представить, что Config Profile – это "шаблон" для ноды, то внутренний сквад – это "шаблон" для пользователя. Но не совсем шаблон. Скорее группа.

Один пользователь может быть привязан сразу к нескольким внутренним сквадам.

Hosts

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

В нашем случае, у нас уже есть один внутренний сквад, который содержит один инбаунд – Shadowsocks.

Значит, если мы создадим пользователя и привяжем его к этому скваду, то он будет иметь доступ только к Shadowsocks.

Совет

Мы уже подробно рассказывали про устройство профилей конфигураций и внутренних сквадов в этой статье. Статья доступна на русском языке.

Пользователи

Итак, после такой длительной подготовки – мы наконец-то можем создать пользователя.

Перейдем во вкладку Пользователи (Users) и выберем опцию Создать пользователя (Create user).

Hosts

Для начала нам необходимо выбрать имя пользователя, оно может быть любым, но не должно содержать пробелов.

В разделе Traffic & Limits мы можем установить лимиты для пользователя.

  • Лимит трафика (Data limit) – лимит трафика в ГБ.
  • Стратегия сброса трафика (Traffic reset strategy) – стратегия сброса трафика. Она определяет как часто панель будет сбрасывать лимит трафика для этого пользователя.

В качествет обучающего примера, мы установим лимит в 1ГБ и стратегию сброса по трафику – Сбрасывать ежедневно.

В разделе Access Settings мы будем управлять сроком действия подписки, а так же определим какие в каких внутренних сквадах будет состоять пользователь.

Выберем срок действия подписки в 1 месяц и активируем один единственный доступный внутренний сквад.

Hosts

Сохраним изменения и после этого наш первый пользователь будет успешно создан.

Hosts

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

Получение подписки

Hosts

После создания пользователя, мы можем получить его подписку.

Для этого нажмите на кнопку указанную на скриншоте.

Альтернативный способ – нажать на иконку карандаша и открыть карточку пользователя.

Hosts

Давайте откроем ее в браузере.

Hosts

Как мы видим, все работает корректно.

Интерсекция

Итак, мы создали пользователя, получили его подписку.

Давайте для теста попробуем использовать эту подписку в клиентском приложении.

Для примера возьмем приложение – Clash Verge Rev.

После импорта подписки, мы может подключиться к нашей ноде и проверить, что все работает корректно.

Hosts

Как и было обещано выше, теперь мы можем посмотреть как обновилась статистика на домашней странице панели и в карточке ноды.

Hosts Hosts

Config Profiles

Итак, перейдем в раздел Config Profiles (Config Profiles).

Hosts

Как уже было сказано выше, Config Profile – это "шаблон" для ноды. Каждый профиль содержит полноценную конфигурацию ядра Xray, которая будет передана на ноду при старте ядра.

Давайте попробуем создать новый профиль, нажав на кнопку Создать профиль (Create Config Profile).

Hosts

После ввода имени профиля, перед нами откроется полноценный редактор конфигурации.

Здесь мы можем добавлять/удалять инбаунды, а так же редактировать все остальные параметры конфигурации.

Внимание!

В этой статье не будет объясняется, как правильно настраивать конфигурацию ядра Xray.

За дополнительной информацией по синтаксису и функционалу конфигурации ядра Xray, рекомендуем обратиться к официальной документации.

Для примера, давайте загрузим уже готовую конфигурацию с помощью кнопки Загрузить с Github (Load from Github).

Hosts

Но, так как в этом шаблоне всего-лишь один инбаунд, мы еще дополнительно добавим второй инбаунд.

Добавляем второй инбаунд в секцию Inbounds (Inbounds), и дадим ему имя VLESS.

Hosts

Вернемся в общий список профилей и посмотрим, что у нас получилось.

Hosts

Как мы видим, в общем списке появился новый профиль – Sample, который мы только что создали.

Под именем профиля, мы так же можем увидеть две значка с иконкой и цифрами.

  • левая иконка обозначает количество инбаундов в профиле
  • правая иконка обозначает количество нод, которые используют этот профиль

Наш новый профиль содержит 2 инбаунда, и ни одна нода не использует его.

Давайте попробуем активировать этот профиль на одной из наших нод.
Вернемся в карточку ноды и выберем ей другой профиль, и активируем оба инбаунда из этого профиля.

Hosts

Если мы зайдем в раздел Хосты (Hosts), попробуем создать новый или отредакировать уже имеющийся – мы можем увидеть, что теперь мы можем назначить хосту свежесозданные инбаунды из нового профиля.

Hosts

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

Откроем раздел Внутренние сквады (Internal squads) и выберем наш единственный сквад – Default-Squad.

Hosts

Как мы можем заметить, в этом скваде у нас сейчас активирован только один инбаунд – Shadowsocks.

Давайте так же активируем все остальные инбаунды, которые содержит наш новый профиль.

Hosts

Не забудьте сохранить изменения после редактирования.

Просуммируем все, что мы сделали:

  • мы создали новый профиль с двумя инбаундами
  • мы активировали этот профиль на одной из наших нод
  • мы добавили хосты, которые будут использовать новые инбаунды
  • мы добавили новые инбаунды в внутренние сквады

Шаблоны

В левом меню панели, мы можем увидеть раздел Шаблоны (Templates).

Hosts

Как уже упоминалось ранее, после того как вы создали пользователя – вы получили его подписку (ссылку).

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

Глобально можно выделить четыре больших группы форматов подписок:

  • Mihomo – формат, наследник формата Clash (который сейчас уже практически не используется)
  • Base64
  • Xray-json
  • Sing-box

Вы наверное уже заметили, что когда мы чуть ранее открывали нашу подписку в браузере – там была красивая страничка, но когда мы добавили ее в клиентское приложение – она добавилась туда без каких-либо проблем.

Remnawave автоматически определяет с какого именно клиента (клиентского приложения) пришел запрос на получение подписки. Соотвественно, когда мы открывали подписку из браузера – Remnawave это определил и выдал нам красивую страничку.

Когда же запрос придет от клиентского приложения, Remnawave в зависимости от типа клиента, выдаст ему подписку в соотвествующем формате.

Mihomo

Hosts

Изначально, этот формат назывался Clash, однако в настоящее время клиентского/серверного ядра Clash больше не существует и ему на замену пришло ядро Mihomo.

Совет

Ознакомиться с документацией Mihomo можно по ссылке.

Популярные клиентские приложения, которые используют этот формат:

Это далеко не полный список приложений, которые использует этот формат.

Base64

Шаблона для этого формата не существует, так как этот формат является одним из старейших и представляет из себя простой набор "хостов", которые разделены символом \n и закодированы в base64.

Этот формат подписки используется в тех случаях, когда клиентское приложение не относится к одному из вышеперечисленных форматов.

Популярные клиентские приложения, которые используют этот формат:

Xray-json

Hosts

Один из самых молодых форматов, используется в клиентских приложениях, которые используют ядро Xray.

Популярные клиентские приложения, которые используют этот формат:

Sing-box

Hosts

Является аналогом формата Xray-json, но используется в клиентских приложениях, которые используют ядро Sing-box.

Популярные клиентские приложения, которые используют этот формат: