--- sidebar_position: 1 title: Быстрый старт --- В этой небольшой статье мы во всех подробностях и деталях расскажем о функциях панели, которые помогут вам быстро разобраться с ее работой. Мы буквально пройдемся от первого входа в админ-панель до импорта подписки в клиентские приложения. # Быстрый старт :::warning Внимание Эта статья написана для версии панели 2.0 и новее. ::: :::danger Дисклеймер Статья так же подразумевает, что вы уже установили Remnawave и ее компоненты. Статья в большей степени будет сфокусирована на разборе функционала панели. ::: --- ## Первые шаги {#first-steps} Итак, после того как вы установили панель и необходимые компоненты, в браузере откроется админ-панель. First steps Для начала нам необходимо зарегистрироваться. Зарегистрированный пользователь будет является "супер-админом". :::tip Совет Если вы вдруг забудете пароль, вы всегда можете пересоздать супер-админа через Rescue CLI. Для входа в Rescue CLI введите команду: `docker exec -it remnawave remnawave` ::: --- ## Главная страница {#home} После регистрации вы увидите главную страницу панели. First steps Разберем все элементы, которые вы видите на этой странице. ### Статистика Remnawave {#remnawave-stats} Remnawave stats В первых двух блоках – "Remnawave Usage", "Process Details" – вы можете увидеть как Remnawave использует ресурсы системы в данный момент. В "Process Details" вы можете увидеть, какие из внутренних процессов Remnawave используют больше всего ресурсов. В зависимости от настройки, REST-API процессов может быть больше, чем один. ### Расход трафика {#bandwidth} Traffic usage В этом блоке отображается общая статистика по расходу трафика по всем пользователям со сравнением по времени за аналогичный период. Возьмем например – "Сегодня". Если мы открыли панель в 16:00, то в этом блоке будет отображаться статистика за период с 0:00 до 16:00, но сравнение будет происходит с вчерашним календарным днем. (0:00 - 23:59) На данный момент на скриншоте все по нулям, но после того как мы все настроим и подключимся нашим пользователем – этот блок будет отражать реальную картину. В конце этой статьи обязательно будет дополнительный скриншот. ### Пользователи {#home-users} Users Эти три блока мы объединим в одно описание. Думаю, вы уже заметили, что есть две разных карточки, которые показывают онлайн пользователей: 1. Раздел `Система` > `Total online on nodes` - Отображает общее количество онлайн пользователей по всем нодам. Один пользователь может быть **_одновременно_** подключен к нескольким нодам, в этой графе показанно сумма всех пользователей на всех нодах, включая дубликаты. - **Пример**: если пользователь Х подключен к нодам A и B, то в этой графе будет отображаться 2 пользователя. 2. Раздел `Онлайн` > `В сети` - Отображает общее количество онлайн пользователей, но не учитывает дубликаты. - **Пример**: если пользователь Х подключен к нодам A и B, то в этой графе будет отображаться 1 пользователь. --- ## Интерсекция {#remark-one} Чтобы продолжить, необходимо закрепить некоторые базовые моменты. Remnawave (как панель) – не содержит в себе Xray-ядра, следовательно даже если вы создатите пользователя, настроите хосты, инбаунды и прочее, НО не подключите **Remnawave Node** – пользователь не сможет подключиться к прокси. Никакие настройки не помогут, пока не подключите **Remnawave Node**. Следовательно, нашим дальнейшим шагом будет подключение **Remnawave Node** – поэтому мы перейдем в раздел `Ноды` **>** `Управление` (`Nodes` **>** `Management`). :::warning Внимание В этой статье не будет описано, как именно установить **Remnawave Node** на этот или другой сервер, для подробной информации по установке, пожалуйста, обратитесь к [документации по установке](/docs/install/remnawave-node). ::: ## Ноды {#nodes} > мы находимся в разделе `Ноды` **>** `Управление` (`Nodes` **>** `Management`) Nodes management Итак, в самом верху находится небольшой блок из 4-ех карточек, которые отображает некоторую статистику по текущему часу. (От начала часа до текущего момента: если вы открываете панель в 16:30, то статистика будет за период с 16:00 до 16:30). Чуть ниже находится блок действий, выберите опцию `Создать новую ноду` (`Сreate new node`). ### Node vitals {#node-vitals} Node vitals В этом блоке находятся жизненно важные параметры, без которых создать ноду не получится. - Страна – выберите страну, в которой будет находиться нода. - Внутреннее имя – это имя, которое будет использоваться для идентификации ноды в Remnawave. - Адрес – IP-адрес ноды (может так же являться доменом) - Порт – порт, на котором **уже** запущен **Remnawave Node**. ### Consumption {#consumption} Consumption Коэффиент – множитель к трафику пользователя (1.0 = нормальный, 0.5 = половина, 2.0 = двойной). Простыми словами, это означает, что если лимит трафика пользователя составляет 1 ГБ, а множитель потребления равен 2.0, пользователь сможет использовать только 0.5 ГБ трафика (реальное использование), но Remnawave покажет использование как 1 ГБ и пользователь будет переведен в статус **LIMITED**. ### Core Configuration {#core-configuration} Core Configuration Этот блок так же является обязательно и без него нельзя создать ноду. Здесь вам необходимо выбрать, с каким `Config Profile` вы хотите запустить ноду. Но, так как мы буквально только что запустили панель, у нас имеется только один профиль, который был автоматически сгенерирован панелью. Нажмите на кнопку `Select config profile` (`Select config profile`), чтобы выбрать профиль. Сonfig Profiles Справа откроется меню, в которым вы можете увидеть все профили, а так же какие инбаунды находятся в каждом из профилей. Для нас сейчас главное закрепить: мы можем выбрать только один профиль, так как профиль представляет из себя полноценную конфигурацию ядра Xray. Так что просто технически невозможно выбрать несколько профилей. В профиле, который был по умолчанию – сейчас находится только один инбаунд и это инбаунд `Shadowsocks`. В будущем, если в одном профиле будет несколько инбаундов, вы сможете выбрать, какие из них будут использовать на ноде. В рамках одного профиля вы никак не ограничены в количество активных инбаундов. Так как у нас сейчас нет выбора, мы выберем `Shadowsocks`. Сonfig Profiles Обязательно сохраните выбор, нажав на синюю кнопку в верху экрана. ### Tracking & Billing {#tracking-and-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 {#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` – удаляет ноду. ## Интерсекция {#remark-two} Итак, мы успешно создали и подключили `Remnawave Node`. И вот, нам уже кажется, что мы можем создать пользователя и подключиться, но нет. Следующим шагом будет создание `хоста`. `Хост` – эта такая сущность, которая "направит" пользователя на ноду из ваших нод. На руках у пользователя в большинстве случаев будет _ссылка_, в простонародье это называется подписка (или subscription url) или просто _ссылка_. Subscription URL – это ссылка, при открытии которой пользователь получит список _хостов_, которые ему доступны. А вот куда уже будут направлены хосты – это как раз то, чем мы сейчас и займемся. И закрепим материал: - у конечного пользователя на руках будет _ссылка_ - при добавлении в клиентское приложение, пользователь получит список _хостов_, которые ему доступны - пользователь выбирает для подключения один из _хостов_ и подключается к ноде ## Хосты {#hosts} 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 После создания хоста, он появится в общем списке хостов. При нажатии на него, откроется окно редактирования. ## Интерсекция {#remark-three} Итак, мы создали хост, который будет направлять пользователя на одну из наших нод. Теперь нам необходимо создать пользователя, который будет использовать этот хост. Но перед этим, давайте рассмотрим, что же такое `внутренний сквад`. Чуть ранее мы уже обсуждали `Config Profiles`, которые представляют из себя полноценные конфигурации ядра Xray и в карточке ноды мы могли выбрать активный профиль и активировать инбаунды. Если попробовать представить, что `Config Profile` – это "шаблон" для ноды, то `внутренний сквад` – это "шаблон" для пользователя. Но не совсем шаблон. Скорее `группа`. **Один пользователь может быть привязан сразу к нескольким внутренним сквадам.** Hosts В карточке редактирования внутреннего сквада мы можем включать/выключать инбаунды, которые будут доступны пользователям, которые состоят в этом скваде. В нашем случае, у нас уже есть один внутренний сквад, который содержит один инбаунд – `Shadowsocks`. Значит, если мы создадим пользователя и привяжем его к этому скваду, то он будет иметь доступ только к `Shadowsocks`. :::tip Совет Мы уже подробно рассказывали про устройство профилей конфигураций и внутренних сквадов в [этой статье](/blog/misc/new-profiles-and-squads/explaining-new-profile-and-squads-system). Статья доступна на русском языке. ::: ## Пользователи {#users} Итак, после такой длительной подготовки – мы наконец-то можем создать пользователя. Перейдем во вкладку `Пользователи` (`Users`) и выберем опцию `Создать пользователя` (`Create user`). Hosts Для начала нам необходимо выбрать имя пользователя, оно может быть любым, но не должно содержать пробелов. В разделе `Traffic & Limits` мы можем установить лимиты для пользователя. - `Лимит трафика` (`Data limit`) – лимит трафика в ГБ. - `Стратегия сброса трафика` (`Traffic reset strategy`) – стратегия сброса трафика. Она определяет как часто панель будет сбрасывать лимит трафика для этого пользователя. В качествет обучающего примера, мы установим лимит в 1ГБ и стратегию сброса по трафику – `Сбрасывать ежедневно`. В разделе `Access Settings` мы будем управлять сроком действия подписки, а так же определим какие в каких `внутренних сквадах` будет состоять пользователь. Выберем срок действия подписки в 1 месяц и активируем один единственный доступный `внутренний сквад`. Hosts Сохраним изменения и после этого наш первый пользователь будет успешно создан. Hosts После создания пользователя мы вернемся в таблицу пользователей. Прошу уделить внимание (зона выделена на скриншоте выше) на функции которые доступны в этой таблице. Вы можете гибко управлять колонками, которые будут видны, включить режим полного экрана и включить поиск по некоторым полям. Поверьте, доступные здесь функции вам очень пригодятся в будущем. ### Получение подписки {#get-subscription} Hosts После создания пользователя, мы можем получить его подписку. Для этого нажмите на кнопку указанную на скриншоте. Альтернативный способ – нажать на иконку карандаша и открыть карточку пользователя. Hosts Давайте откроем ее в браузере. Hosts Как мы видим, все работает корректно. ## Интерсекция {#remark-four} Итак, мы создали пользователя, получили его подписку. Давайте для теста попробуем использовать эту подписку в клиентском приложении. Для примера возьмем приложение – [Clash Verge Rev](https://github.com/clash-verge-rev/clash-verge-rev). После импорта подписки, мы может подключиться к нашей ноде и проверить, что все работает корректно. Hosts Как и было обещано выше, теперь мы можем посмотреть как обновилась статистика на домашней странице панели и в карточке ноды. Hosts Hosts --- ## Config Profiles {#config-profiles} Итак, перейдем в раздел `Config Profiles` (`Config Profiles`). Hosts Как уже было сказано выше, `Config Profile` – это "шаблон" для ноды. Каждый профиль содержит полноценную конфигурацию ядра Xray, которая будет передана на ноду при старте ядра. Давайте попробуем создать новый профиль, нажав на кнопку `Создать профиль` (`Create Config Profile`). Hosts После ввода имени профиля, перед нами откроется полноценный редактор конфигурации. Здесь мы можем добавлять/удалять инбаунды, а так же редактировать все остальные параметры конфигурации. :::warning Внимание! В этой статье не будет объясняется, как правильно настраивать конфигурацию ядра Xray. За дополнительной информацией по синтаксису и функционалу конфигурации ядра Xray, рекомендуем обратиться к [официальной документации](https://xtls.github.io/ru/config/). ::: Для примера, давайте загрузим уже готовую конфигурацию с помощью кнопки `Загрузить с Github` (`Load from Github`). Hosts Но, так как в этом шаблоне всего-лишь один инбаунд, мы еще дополнительно добавим второй инбаунд. Добавляем второй инбаунд в секцию `Inbounds` (`Inbounds`), и дадим ему имя `VLESS`. Hosts Вернемся в общий список профилей и посмотрим, что у нас получилось. Hosts Как мы видим, в общем списке появился новый профиль – `Sample`, который мы только что создали. Под именем профиля, мы так же можем увидеть две значка с иконкой и цифрами. - левая иконка обозначает количество инбаундов в профиле - правая иконка обозначает количество нод, которые используют этот профиль Наш новый профиль содержит 2 инбаунда, и ни одна нода не использует его. Давайте попробуем активировать этот профиль на одной из наших нод. Вернемся в карточку ноды и выберем ей другой профиль, и активируем оба инбаунда из этого профиля. Hosts Если мы зайдем в раздел `Хосты` (`Hosts`), попробуем создать новый или отредакировать уже имеющийся – мы можем увидеть, что теперь мы можем назначить хосту свежесозданные инбаунды из нового профиля. Hosts --- Но даже если мы активируем новый профиль на ноде, добавим хост и привяжем к новому инбаунду – пользователи все равно не получат его до тех пор, пока мы не добавим наши новые инбаунды в `внутренние сквады`. Откроем раздел `Внутренние сквады` (`Internal squads`) и выберем наш единственный сквад – `Default-Squad`. Hosts Как мы можем заметить, в этом скваде у нас сейчас активирован только один инбаунд – `Shadowsocks`. Давайте так же активируем все остальные инбаунды, которые содержит наш новый профиль. Hosts Не забудьте сохранить изменения после редактирования. Просуммируем все, что мы сделали: - мы создали новый профиль с двумя инбаундами - мы активировали этот профиль на одной из наших нод - мы добавили хосты, которые будут использовать новые инбаунды - мы добавили новые инбаунды в `внутренние сквады` ## Шаблоны {#templates} В левом меню панели, мы можем увидеть раздел `Шаблоны` (`Templates`). Hosts Как уже упоминалось ранее, после того как вы создали пользователя – вы получили его подписку (ссылку). При открытии которой, пользователь получит список хостов, которые ему доступны. Проблема в том, что клиентских приложений существует великое множество, и некоторые из них имеют свой формат подписки, с которым они работают. Глобально можно выделить четыре больших группы форматов подписок: - `Mihomo` – формат, наследник формата Clash (который сейчас уже практически не используется) - `Base64` - `Xray-json` - `Sing-box` Вы наверное уже заметили, что когда мы чуть ранее открывали нашу подписку в браузере – там была красивая страничка, но когда мы добавили ее в клиентское приложение – она добавилась туда без каких-либо проблем. Remnawave автоматически определяет с какого именно клиента (клиентского приложения) пришел запрос на получение подписки. Соотвественно, когда мы открывали подписку из браузера – Remnawave это определил и выдал нам красивую страничку. Когда же запрос придет от клиентского приложения, Remnawave в зависимости от типа клиента, выдаст ему подписку в соотвествующем формате. ### Mihomo {#mihomo} Hosts Изначально, этот формат назывался `Clash`, однако в настоящее время клиентского/серверного ядра `Clash` больше не существует и ему на замену пришло ядро `Mihomo`. :::tip Совет Ознакомиться с документацией Mihomo можно по [ссылке](https://wiki.metacubex.one/ru/config/). ::: Популярные клиентские приложения, которые используют этот формат: - [Clash Verge Rev](https://github.com/clash-verge-rev/clash-verge-rev) - [FlClash](https://github.com/chen08209/FlClash) - [ClasX.Meta](https://github.com/MetaCubeX/ClashX.Meta/tree/meta) - [Clash Meta For Android](https://github.com/MetaCubeX/ClashMetaForAndroid) - [ClashMi](https://github.com/KaringX/clashmi) Это далеко не полный список приложений, которые использует этот формат. ### Base64 {#base64} Шаблона для этого формата не существует, так как этот формат является одним из старейших и представляет из себя простой набор "хостов", которые разделены символом `\n` и закодированы в base64. Этот формат подписки используется в тех случаях, когда клиентское приложение не относится к одному из вышеперечисленных форматов. Популярные клиентские приложения, которые используют этот формат: - [Shadowrocket](https://apps.apple.com/tr/app/shadowrocket/id932747118) - [Happ](https://happ.su) - [V2RayNG](https://github.com/2dust/v2rayNG) - [V2RayTUN](https://v2raytun.com/) - [V2RayN](https://github.com/2dust/v2rayN) ### Xray-json {#xray-json} Hosts Один из самых молодых форматов, используется в клиентских приложениях, которые используют ядро `Xray`. Популярные клиентские приложения, которые используют этот формат: - [Happ](https://happ.su) - [V2RayTUN](https://v2raytun.com/) ### Sing-box {#sing-box} Hosts Является аналогом формата `Xray-json`, но используется в клиентских приложениях, которые используют ядро `Sing-box`. Популярные клиентские приложения, которые используют этот формат: - [Sing-box](https://sing-box.sagernet.org/clients/) - [Throne](https://github.com/throneproj/Throne) - [Nekobox](https://github.com/MatsuriDayo/NekoBoxForAndroid) - [Karing](https://karing.app/)