Руководство по консоли оператора Nodeboard
Как операторы узлов AeroNyx используют Nodeboard для регистрации узлов, просмотра состояния и ёмкости, настройки политики, выполнения команд и управления сеансами VPN, включая то, какие именно данные по сеансам и ключам клиентов видят операторы и какую ответственность они за них несут.
Nodeboard (app.aeronyx.network) — это веб-консоль, в которой операторы узлов AeroNyx регистрируют узлы, следят за их состоянием и ёмкостью, задают политику для каждого узла и управляют сеансами VPN на принадлежащих им узлах. Для этих узлов она показывает записи о трафике по каждому сеансу и каждому ключу клиента (байты, время, уровень и адрес в туннеле) и позволяет операторам отключать сеансы и блокировать ключи клиентов. Она не показывает адреса назначения, DNS-запросы или содержимое пакетов.
На сегодняшний день все производственные узлы эксплуатирует AeroNyx. Любой, кто эксплуатирует узел, обязан соблюдать Политику для операторов узлов.
Вход
В Nodeboard есть два способа входа:
- Кошелёк. Подключите Phantom (Solana), MetaMask (Ethereum) или OKX (Ethereum или Solana). Nodeboard запрашивает у бэкенда одноразовый nonce и просит ваш кошелёк подписать его. Подписанный nonce доказывает, что вы контролируете кошелёк; пароль не используется.
- Телефон. Log in with your phone показывает QR-код, который нужно отсканировать в приложении AeroNyx, и короткий код для сверки на обоих экранах.
Ваша учётная запись видит только зарегистрированные на неё узлы. Все списки узлов, списки сеансов, представления оплаты и команды ограничены узлами, которыми вы владеете.
Навигация
| Страница | Назначение |
|---|---|
| Overview | Сводка по парку узлов: общее число узлов и число узлов в сети, активные сеансы, трафик, время безотказной работы, сводка операций, ёмкость размещения клиентов, карточка трафика и оплаты за 24 часа, Needs Attention и недавние события |
| Nodes | Ваши узлы с состоянием, сеансами, размещением и текущим действием; каждый открывает страницу сведений об узле |
| Services | Представления по всему парку в разрезе служб: сигнал оператора, основа протокола, допуск в пул луковой ретрансляции, ёмкость, транспорт, DNS шлюза, размещение клиентов, риски служб, готовность узлов, а также готовность к перезапуску, очередь и аудит результатов |
| Sessions | Состояние узлов и активные туннели VPN, качество сеансов и действия для отключения сеанса или блокировки ключа клиента |
| Registration Codes | Создание одноразовых кодов, копирование команд установки, отслеживание хода установки |
| Alerts / Events | Поток событий и Incident Closure |
| Traffic & Billing | Трафик и время по узлам, ключам клиентов, сеансам и дням, с поиском и экспортом в CSV |
| Settings | Размещение и политика для каждого узла, предустановки для парка, синхронизация и аудит политик, язык |
| Chat | Открывает веб-чат AeroNyx, который связывается с приложением по QR-коду. Он не относится к эксплуатации узлов. |
Что Nodeboard показывает о пользователях
Каждый зарегистрированный узел VPN сообщает бэкенду AeroNyx о каждом сеансе VPN во время его работы и при его завершении. Nodeboard показывает эти записи владельцу узла.
| Данные | Где отображаются |
|---|---|
| Идентификатор сеанса | Sessions, Traffic & Billing → Sessions, сведения об узле → Recent Sessions |
Ключ клиента (client_wallet): открытый ключ, который приложение использует при рукопожатии VPN. Он остаётся одинаковым во всех сеансах, поэтому связывает сеансы одного пользователя во времени. В таблицах сокращён, но доступен для поиска и экспортируется полностью. | Sessions (столбец Client), Traffic & Billing → Identities и Sessions |
Уровень членства, который бэкенд находит для ключа клиента (unknown, если его нет) | Traffic & Billing → Identities и разбивка по уровням |
Виртуальный IP-адрес туннеля (адрес внутри VPN, например в 100.64.0.0/22) | Sessions, Traffic & Billing → Sessions |
| Входящие и исходящие байты, количество сеансов, длительность | По узлам, ключам клиентов, сеансам и дням |
| Первое и последнее появление для каждого ключа клиента; начало, конец и последняя активность для каждого сеанса | Traffic & Billing, Sessions |
| Качество соединения: время приёма-передачи, потери пакетов, результаты keepalive, последняя ошибка | Sessions, Traffic & Billing → Sessions |
Traffic & Billing охватывает последние 7, 14, 30, 60 или 90 дней. Export CSV выгружает строки текущей вкладки, включая полные ключи клиентов и виртуальные IP-адреса, если они есть на вкладке.
Что узлы не сообщают и Nodeboard не показывает: публичные IP-адреса клиентов, адреса или домены назначения, DNS-запросы, URL-адреса, содержимое пакетов или сообщений и закрытые ключи. Панели ретрансляции чата, обнаружения и протокола показывают только агрегированные счётчики.
С хостом узла дело обстоит иначе. Узел VPN является точкой выхода для трафика своих пользователей, поэтому человек с доступом root к серверу может наблюдать этот трафик так же, как на любом сервере VPN, независимо от того, что показывает Nodeboard. Что разрешено операторам, определяет Политика для операторов узлов. О том, как сама AeroNyx обращается с этими данными, см. Центр доверия.
Обязанности оператора
- Используйте данные о сеансах и ключах клиентов только для эксплуатации, защиты и тарификации сервиса, как это разрешает Политика для операторов узлов.
- Обращайтесь с экспортом CSV как с персональными данными: храните его только столько, сколько необходимо, храните надёжно и никому не передавайте.
- Не пытайтесь связать ключи клиентов или виртуальные IP-адреса с конкретными людьми и не просматривайте, не записывайте и не сохраняйте пользовательский трафик на хосте.
- Отключайте сеансы и блокируйте ключи клиентов только по эксплуатационным причинам или из-за злоупотреблений и фиксируйте причину.
- Обеспечивайте безопасность кошельков и телефонов для входа, а также учётных данных серверов.
Регистрация узла
- Откройте Registration Codes и выберите Generate Code. Код действителен 15 минут и действует один раз.
- Скопируйте Quickstart command (или команды пошагового просмотра плана и установки) и выполните её на сервере от root. Полная процедура, включая то, как не допустить попадания кода в историю оболочки, описана в разделе Установка и регистрация узла AeroNyx.
- Следите за Install Progress:
not_started → planning → running → completed | failed. Этап показывает, где находится установщик (план, предварительные проверки, зависимости, репозиторий, конфигурация, сеть, сборка, systemd, регистрация, запуск, завершение). При ошибке отображаются этап, на котором она произошла, и код выхода.
Состояния кода: Available, Used, Expired и Revoked. Когда код истёк, Nodeboard скрывает его команды установки. AI assistant prompt содержит сам код; передавая эту подсказку, вы передаёте и код.
Обзор и первичный разбор
Начинайте с Overview. На каждой карточке статистики парка, операций, размещения и оплаты указано, когда она обновлялась в последний раз. Если обновление не удалось, карточки сохраняют предыдущие данные и сообщают об этом. «Нет событий» и «события не удалось загрузить» отображаются по-разному, а отсутствующие данные не показываются как ноль.
Разумный порядок внимания:
- Узлы не в сети или устаревшие heartbeat.
- Неудавшиеся, просроченные или устаревшие команды.
- Узлы в режиме обслуживания, у которых всё ещё есть активные сеансы.
- Нагрузка на ёмкость: пул IP-адресов, файловые дескрипторы, отслеживание соединений, отбрасывание пакетов, пропускная способность, диск, память, CPU.
- Ещё не синхронизированная политика.
- Проблемы с готовностью обнаружения или ретрансляции.
Узлы и сведения об узле
Страница сведений об узле группирует данные по разделам, среди которых Node Details, Hardware Info, AeroNyx Health, Rust Runtime (версия, коммит, время работы), Node Capacity, AeroNyx Privacy Protocol, Node Discovery, Encrypted Chat Relay, Service Configuration, Install Workflow, Rust Upgrade Workflow, Maintenance Drain, Bandwidth Limit, Policy Enforcement, Recent Sessions, Wallet Ban Policies, Recent AeroNyx Commands, Recent AeroNyx Events, Recent Operational Events (очищенные предупреждения службы за последние 24 часа) и Operator Runbook с копируемыми командами.
Capacity Decision
Capacity Decision отвечает на вопрос, должен ли узел принимать новых пользователей. Он объединяет пул IP-адресов, максимальное число сеансов по политике и собственное состояние допуска узла в консервативную оценку оставшихся мест для пользователей и называет главное узкое место.
| Состояние | Значение |
|---|---|
ready | Узел может принимать новые сеансы по текущей телеметрии |
watch | Узел может принимать сеансы, но какой-то ресурс требует внимания |
blocked | Узлу не следует принимать новые сеансы, например потому, что служба неактивна или собственная проверка допуска узла заблокирована |
waiting | Телеметрия ёмкости отсутствует или недостаточно свежая для принятия решения |
Сеансы: отключение и блокировка
Sessions перечисляет активные и недавние туннели VPN с узлом, ключом клиента, статусом, длительностью, трафиком, качеством и последней активностью. Поиск выполняется по идентификатору сеанса, ключу клиента или виртуальному IP-адресу. Качество принимает значения healthy, degraded, stale, error, pending или completed.
- Kick ставит в очередь команду
kick_session, которая отключает один сеанс. - Ban Wallet ставит в очередь команду
ban_wallet, которая блокирует ключ клиента на этом узле и отключает соответствующие ему туннели. - Unban находится на странице сведений об узле в разделе Wallet Ban Policies (
unban_wallet).
Каждое действие запрашивает подтверждение и сначала проверяет, что свежий снимок сеансов по-прежнему совпадает. Ничего не меняется, пока узел не выполнит команду при одном из следующих heartbeat, поэтому до тех пор туннель остаётся активным.
Traffic & Billing
Вкладки: Nodes, Identities (по ключам клиентов), Sessions и Daily. Фильтры: дни, статус сеанса, узел и поиск по ключу клиента или идентификатору сеанса. Сводные карточки показывают трафик, активные сеансы, месячную квоту и время по ваучерам вашей учётной записи, а также выпуск ваучеров. Поля перечислены выше в разделе «Что Nodeboard показывает о пользователях».
Настройки и политика
Для каждого узла: код региона, предлагается ли узел в пуле выхода AeroNyx, уровень узла (public или premium), интервал heartbeat, максимальное число сеансов, ограничение пропускной способности в Мбит/с и Maintenance Mode. Maintenance Mode прекращает приём новых сеансов, пока существующие постепенно завершаются.
Политика доходит до узла в его heartbeat. После сохранения в истории команд узла появляется команда apply_policy, а Policy Sync переходит из pending или unknown в synced, как только узел подтвердит её. Fleet Presets применяют одну политику к нескольким узлам и сообщают, каким из них нужно внимание. Recent Settings Audit показывает изменения политики за последние 30 дней.
Команды
С помощью команд Nodeboard просит узел выполнить действие. Они ограничены владельцем, записываются и доставляются в ответе на следующий heartbeat узла.
| Действие | Результат |
|---|---|
system_info, collect_logs | Сбор сведений о хосте или журналов |
refresh_config, apply_policy | Обновление конфигурации или подтверждение текущей политики |
two_hop_smoke | Запуск локальной проверки двухшаговой ретрансляции на узле и возврат агрегированных счётчиков |
kick_session, ban_wallet, unban_wallet | Действия с сеансами и ключами клиентов |
restart_service | Перезапуск службы aeronyx-server |
Жизненный цикл: pending → sent → executing → completed | failed | timeout. Команду, которая всё ещё находится в состоянии pending или sent, можно отменить. Команда, которая остаётся в состоянии sent или executing дольше тайм-аута бэкенда (по умолчанию 300 секунд), помечается как timeout. У узла не может быть двух активных команд одного вида.
Перезапуск узла из Nodeboard
restart_service отключает всех пользователей на узле. Services → Fleet Restart Readiness считает узел готовым к перезапуску, только если ему нужен перезапуск для развёртывания, включён Maintenance Mode и число активных сеансов снизилось до нуля. Restart Action Queue предлагает Enable maintenance, Queue restart и Cancel command. API команд требует явного подтверждения перезапуска, но сам не проверяет сеансы, поэтому сначала освободите узел. После перезапуска убедитесь в наличии свежего heartbeat, новой версии среды выполнения, исправного состояния и синхронизации политики, прежде чем отключать Maintenance Mode. Обновления выполняются на сервере с помощью процедуры обновления; см. Эксплуатация и проверка узла AeroNyx.
Alerts / Events и Incident Closure
Event Stream перечисляет события состояния узлов, ошибки сеансов, команды операторов и изменения политики с фильтрацией по дням, серьёзности, типу и узлу.
Incident Closure группирует связанные события за выбранный период и для каждой группы приводит описание влияния, рекомендуемое действие и состояние восстановления:
| Состояние | Значение |
|---|---|
open | Есть события, требующие действий и ещё не просмотренные |
watch | Текущих блокирующих проблем нет, но проблема повторялась |
recovered | Последнее событие указывает на восстановление, или событие носит информационный характер |
Завершённая команда сама по себе не означает закрытие инцидента. Закрывайте инцидент, когда heartbeat свежий, состояние и синхронизация политики восстановились, а затронутый сигнал ёмкости или ретрансляции вернулся в норму.
Коды и учётные данные не взаимозаменяемы
| Учётные данные | Назначение |
|---|---|
| Регистрационный код | Привязывает один узел к вашей учётной записи. Одно использование, 15 минут. |
| Подпись кошелька или вход с телефона | Вход в Nodeboard |
| Анонимный ваучер VPN | Позволяет пользователю приложения доказать, что он вправе пользоваться сервисом; это не учётные данные оператора |
Никогда не указывайте коды, закрытые ключи или данные для восстановления в событиях, URL-адресах, снимках экрана или обращениях в поддержку.
Связанные страницы
- Установка и регистрация узла AeroNyx
- Эксплуатация и проверка узла AeroNyx
- Статистика сети и граница приватности
- Политика для операторов узлов
- Центр доверия
Часто задаваемые вопросы
Могут ли операторы узлов видеть, какие пользователи подключены к их узлу?
Для принадлежащих им узлов операторы видят ключ клиента каждого сеанса (client_wallet), виртуальный IP-адрес туннеля, количество байтов, время и уровень. Публичные IP-адреса клиентов, адреса назначения, DNS-запросы или содержимое трафика в Nodeboard им не видны.
Как войти в Nodeboard?
Войдите, подписав одноразовый nonce с помощью Phantom, MetaMask или OKX, либо отсканировав QR-код в приложении AeroNyx. Пароля нет.
Почему отключение или блокировка ещё не применены?
Nodeboard ставит команду в очередь, а узел выполняет её при одном из следующих heartbeat. Проверьте состояние команды в разделе Recent AeroNyx Commands узла; оно меняется с pending на sent, executing, а затем на completed, failed или timeout.
Что означает Capacity Decision waiting?
Узел не прислал достаточно свежую телеметрию ёмкости для принятия решения. Выполните на узле status или проверку состояния и убедитесь, что heartbeat свежий; если телеметрия так и не появляется, обновите или перезапустите узел.
Можно ли перезапустить узел из Nodeboard, не отключая пользователей?
Нет, перезапуск отключает все сеансы на узле. Включите Maintenance Mode, дождитесь, пока число активных сеансов станет нулевым, и затем поставьте перезапуск в очередь.
Является ли экспорт CSV персональными данными?
Да, он содержит полные ключи клиентов, виртуальные IP-адреса и время использования. Обращайтесь с ним в соответствии с Политикой для операторов узлов и храните его только столько, сколько необходимо.
<!-- faq:end -->