Перейти к содержимому

Рабочее место оператора

На машину оператора ставятся два инструмента, и по желанию третий:

Инструмент Зачем
nyx-operator CLI: список машин, реле-туннели руками
nyx-mcp MCP-сервер: те же действия для Claude Code и других MCP-клиентов
nythronix-agent необязательно: делает саму машину оператора управляемой

Входящие порты не нужны ни на вашей машине, ни на целевой: достаточно, чтобы агент на целевой машине был online.

Одна команда, Linux x86_64:

Окно терминала
curl -fsSL https://nx.3fe.ru/downloads/install-operator.sh | bash

Скрипт скачивает бинарники, которые публикует сервер управления, сверяет каждый с опубликованным рядом списком sha256 и ставит в ~/.local/bin, а при запуске от root в /usr/local/bin. При несовпадении контрольной суммы установка прерывается.

Обновление это та же команда. Скрипт сравнивает установленную версию с той, что отдаёт сервер, и заменяет только изменившееся. Работающий nyx-mcp заменяется безопасно: новый файл подкладывается переименованием, и процесс, который держит Claude Code, доживает до своего завершения на старом.

Флаги скрипта передаются после bash -s --:

Флаг Назначение
--check показать установленные и доступные версии и выйти
--only operator,mcp,agent поставить только перечисленное
--prefix DIR каталог установки
--force переустановить, даже если версия совпадает
--server URL другой сервер управления, по умолчанию https://nx.3fe.ru
--cabinet URL адрес кабинета для nyx-operator login, по умолчанию https://app.nx.3fe.ru
--with-agent поставить ещё и агента и зарегистрировать эту машину
--token nyxet_… токен подключения, обязателен с --with-agent
--name "Имя" имя этой машины в кабинете

Чтобы машина оператора сама стала управляемой, нужен root: агент регистрируется в /etc/nythronix/agent.json и ставит systemd-юнит.

Окно терминала
curl -fsSL https://nx.3fe.ru/downloads/install-operator.sh \
| sudo bash -s -- --with-agent --token nyxet_… --name "Мой ноутбук"

Один раз на каждой машине:

Окно терминала
nyx-operator login --server https://app.nx.3fe.ru --token nyxop_…
claude mcp add nythronix -s user -- ~/.local/bin/nyx-mcp

Учётные данные ложатся в ~/.config/nythronix/operator.json с правами 0600. Этим файлом пользуются и CLI, и MCP-сервер, так что входить нужно один раз. Относитесь к файлу как к SSH-ключу. Переменные окружения NYX_SERVER и NYX_TOKEN имеют приоритет над файлом.

Вторая строка нужна, только если вы работаете через Claude Code. Подробности в разделе MCP для операторов.

Это две разные вещи, и токен не создаётся вместе с учётной записью.

  1. Учётная запись. Её создаёт администратор в кабинете, «Админ → Операторы»: e-mail, пароль, роль. Пароль нужен только для входа в кабинет. CLI и MCP-сервер им не пользуются.
  2. Токен. Оператор сам входит в кабинет и выпускает токен в «Настройки → API-токены», задав ему имя. Значение nyxop_… показывается один раз: хранится только его хеш, поэтому сразу скопируйте его в nyx-operator login. Если токен потерян, отзовите его и выпустите новый.

Токены выпускаются только себе. Администратор не может выпустить токен за другого человека. Чтобы дать коллеге доступ из CLI, создайте ему учётную запись и передайте пароль, а токен он выпустит сам. Так каждый токен в журнале аудита привязан к одному человеку.

Роль Кабинет Туннели run_command, SSH-ключи Страницы админки
viewer только чтение нет нет нет
operator да да нет нет
admin да да да да
owner да да да да, все организации

Обычный operator открывает реле-туннели и работает по SSH. Проверки через run_command и установка ключа через authorize_ssh_key требуют роли admin.

Окно терминала
nyx-operator agents --online
nyx-operator tunnel web-01 --port 22 --listen 127.0.0.1:2222
ssh -p 2222 user@127.0.0.1 # в другом терминале

Машина называется так, как вы её зовёте: по имени в кабинете, hostname, логину или ID, хватает уникальной подстроки. Туннель живёт, пока жив процесс, Ctrl-C его закрывает. Порт любой, не только 22: --port 3389 для RDP, --port 5432 для Postgres.

Нужна, только если вы дорабатываете сами инструменты или ведёте self-hosted установку без опубликованных бинарников:

Окно терминала
make mcp # nyx-operator и nyx-mcp в target/release/