Регистрация устройств
RCAT принимает регистрацию клиентов, хранит сведения о peer-устройствах (устройствах-участниках соединения) и помогает понять, какие устройства сейчас доступны для подключения.
RCAT, RailDesk Connect and Transit Server, помогает клиентам RailDesk находить друг друга, проверять online-статус (доступность устройства), согласовывать прямое соединение и переключаться на transit/relay-сервер (транзитный сервер), если прямой путь недоступен из-за NAT, firewall (межсетевого экрана) или сетевой политики.
RCAT создан командой Krass Team как самостоятельный серверный проект для RailDesk. Он не является форком RailDesk OSS, RustDesk Server или других открытых проектов и развивается автономно внутри Krass Team.
Функциональность переносилась методом clean room (независимой реализации): команда описывала ожидаемое серверное поведение RailDesk OSS и реализовывала его заново, без переноса исходного кода, структуры модулей или комментариев открытого сервера.
Совместимость с клиентом RailDesk также опирается на обратный инжиниринг API RustDesk, который используется в RailDesk. Это позволяет сохранять нужное поведение протокола там, где оно важно для подключения клиентов, и при этом развивать собственную серверную архитектуру Krass Team.
RCAT отвечает не за сам интерфейс удаленного рабочего стола, а за инфраструктуру подключения: регистрацию, доступность устройств, выбор пути соединения, резервный маршрут через relay-сервер (транзитный сервер) и серверную конфигурацию.
RCAT принимает регистрацию клиентов, хранит сведения о peer-устройствах (устройствах-участниках соединения) и помогает понять, какие устройства сейчас доступны для подключения.
Сервер координирует ID/Meet (Rendezvous), NAT test и direct/punch flow, чтобы клиенты могли попробовать прямое соединение.
Если прямой путь не сработал из-за NAT, CGNAT, firewall (межсетевого экрана) или сетевой политики, RCAT переводит сессию через transit/relay-сервер (транзитный сервер).
Клиент получает через RCAT серверную конфигурацию, адреса сервисов и информацию об обновлениях, нужную для управляемой эксплуатации.
В реальных сетях прямое P2P-соединение часто ломают NAT, CGNAT, корпоративные firewall (межсетевые экраны) и правила провайдеров. RCAT берет на себя координацию прямого подключения и дает понятный резервный маршрут через transit/relay, чтобы пользователь не занимался сетевой диагностикой вместо работы.
Для SaaS-версии RailDesk (облачной версии) RCAT стал собственной серверной основой Krass Team. Для self-hosted и enterprise-сценариев (самостоятельного развертывания и корпоративных сценариев) он дает организациям возможность держать сервер удаленного доступа под своим контролем: на своих серверах, со своими сетевыми правилами, хранилищем и политикой безопасности.
RCAT 1.0.13 — это стабильная эксплуатационная линия первого поколения: Connect/Transit, API bootstrap (начальная конфигурация API), RailDesk webUI, SSO/OIDC compatibility (совместимость с единым входом) и набор исправлений по производительности.
В RCAT 1.0.13 есть режимы запуска all, id, transit и api, UDP/TCP/WebSocket-пути для согласования соединения, TCP/WebSocket-пути для транзита, регистрация устройств и public key (публичного ключа).
Стабильная версия закрывает API bootstrap (начальную конфигурацию API): health/config/version, server-config, login/logout, heartbeat/sysinfo-события, devices, peers, users и update endpoints.
RailDesk webUI доступен на /admin/: dashboard (панель состояния), список peer-устройств, карточка устройства, пользователи, профиль администратора, SSO/OIDC-настройки, журналы входов и базовые audit-разделы (разделы аудита).
RCAT поддерживает SQLite и PostgreSQL для peer/control данных (данных устройств и управляющего контура), импорт legacy peer database (старой базы устройств) и генерацию server key (ключа сервера) для самостоятельного развертывания.
В стабильной линии есть runtime blocklist/blacklist (оперативные списки ограничений), bandwidth policy (политика пропускной способности), forced transit mode (принудительный транзит) и служебные команды для управления серверным контуром.
В 1.0.13 снижена нагрузка на transit relay (транзитную маршрутизацию) и heartbeat-события, улучшено обновление IP peer-устройств, исправлена обработка Android-устройств и выдача software update (информации об обновлениях).
Это не просто relay-процесс (транзитный процесс). RCAT объединяет сервер подключения, резервный transit-маршрут, HTTP API, RailDesk webUI, клиентскую конфигурацию, обновления и будущие policy-слои (слои политик) в один продуктовый контур.
Командам поддержки, которым нужен управляемый сервер удаленного подключения.
SaaS-инфраструктуре RailDesk (облачной инфраструктуре), где важны контроль регистрации устройств, relay-трафика (транзитного трафика) и клиентской конфигурации.
Организациям, которым нужен self-hosted удаленный доступ (самостоятельное развертывание) без зависимости от внешнего rendezvous или relay-сервера.
Администраторам, которым нужна видимость peer-устройств, пользователей, входов и базовой telemetry (технической телеметрии).
Enterprise-командам (корпоративным командам), которым постепенно понадобятся SSO, аудит, политики доступа и управляемые рабочие контуры.
RailDesk OSS остается открытым вариантом для базового самостоятельного развертывания ID/Meet и Transit/Relay. RCAT шире: он добавляет RailDesk API, RailDesk webUI, SSO/OIDC, control store и эксплуатационные настройки для управляемой инфраструктуры.
| Функция | RailDesk OSS | RCAT Server |
|---|---|---|
| Назначение | Базовая открытая серверная часть для самостоятельного развертывания, включая запуск из Docker-образа. | Управляемая серверная платформа для SaaS, self-hosted и enterprise-сценариев. |
| ID/Meet (Rendezvous) | Да. Помогает клиентам находить друг друга. | Да. Входит в серверный слой Connect и поддерживает дополнительные сценарии эксплуатации. |
| Transit/Relay | Да. Дает базовый транзитный маршрут для соединений. | Да. Поддерживает TCP и WebSocket transit path, forced transit mode и политики пропускной способности. |
| RailDesk API | Нет. API-компоненты не входят в RailDesk OSS. | Да. Есть API bootstrap, конфигурация клиента, heartbeat/sysinfo, devices, peers, users и update endpoints. |
| RailDesk webUI | Нет. Управляющая веб-панель не входит в базовый OSS-сервер. | Да. RailDesk webUI показывает dashboard, устройства, пользователей, журналы входов, SSO/OIDC и базовые audit-разделы. |
| SSO/OIDC | Нет. Единый вход не относится к базовой серверной части OSS. | Да. В стабильной версии есть совместимый SSO/OIDC flow и хранение конфигурации в control store. |
| Хранение данных | Достаточно для базовых серверных функций. | SQLite и PostgreSQL для peer/control данных, импорт legacy peer database и эксплуатационные данные серверного контура. |
| Администрирование и политики | Минимальный набор для самостоятельного запуска ID/Meet и Transit/Relay. | Runtime blocklist/blacklist, bandwidth policy, forced transit mode, служебные команды и наблюдаемость. |
| Использование в SaaS RailDesk | Не используется как серверная основа SaaS-версии RailDesk. | Используется как собственная серверная основа Krass Team для SaaS-инфраструктуры RailDesk. |
| Кому подходит | Командам, которым нужна открытая базовая серверная часть и самостоятельная проверка архитектуры. | Командам, которым нужны управляемость, API, RailDesk webUI, SSO/OIDC, контроль инфраструктуры и коммерческое сопровождение. |
RCAT реализован как clean-room Go-сервер (независимая реализация без переноса стороннего AGPL-кода) и не является форком открытых проектов. Он сохраняет совместимое поведение клиентского протокола там, где это нужно для подключения RailDesk, но развивается как собственная архитектура Krass Team.