VNC#
Использование VNC#
VNC (Virtual Network Computing) — технология удалённого рабочего стола. Позволяет смотреть экран компьютера робота и управлять им мышкой и клавиатурой через браузер.
Как это работает#
Браузер пользователя
│ WebSocket (порт 6080-6100)
▼
orchestrator-vnc-proxy (websockify)
│ TCP (порт VNC, обычно 5900)
▼
VNC-сервер на компьютере робота
Пользователь нажимает кнопку → Оркестратор создаёт прокси-соединение через websockify → браузер подключается к экрану робота.
Подготовка#
1. На каждом роботе должен быть VNC-сервер#
Установите на компьютер робота VNC-сервер.
- Настройка пароля и порта выполняется в настройках Ассистента, во вкладке «Выполнение/VNC-сервер»
Поля для заполнения в Ассистенте:
- Порт Робота VNC
- Пароль VNC
- Чекбокс "Запускать VNC-сервер при запуске робота"
- Чекбокс "Автоматический запуск VNC-сервера при запуске Unattended робота"
Убедитесь, что VNC-сервер запущен, его фактический порт открыт в firewall на компьютере робота и VNC-пароль установлен.
2. Заполните данные VNC в карточке робота#
В Оркестраторе откройте карточку робота (редактирование) и заполните поля:
| Поле | Описание | Пример |
|---|---|---|
| Machine IP | Адрес компьютера робота и порт VNC. Указывайте порт явно, чтобы подключиться к нужному серверу | 192.168.1.100:5900 |
| Machine Login | Логин для VNC (если VNC-сервер требует) | admin |
| Machine Password | Пароль от VNC-сервера на роботе (не путать с паролем от Оркестратора и паролем учетной записи Windows!) | vnc_pass_123 |
| SHA-256 fingerprint ключа VNC RA2-сервера | Доверенный отпечаток открытого ключа VNC-сервера: 32 пары шестнадцатеричных цифр через двоеточие | AA:BB:... (32 пары) |
Где взять пароль: Пароль задаётся при установке VNC-сервера на компьютере робота. Это отдельный VNC-пароль, а НЕ пароль пользователя Windows и НЕ пароль от аккаунта в Оркестраторе.
Пароль VNC должен быть не длиннее 128 символов, занимать не более 255 байт в UTF-8 и не содержать пробелов или других пробельных символов.
Где взять отпечаток: Скопируйте его из настроек VNC Sherpa RPA, запущенной под той же учётной записью Windows, что и ProcessAgent. Сверьте значение через доверенный канал с администратором робота до сохранения карточки. При смене ключа VNC-сервера обновите сохранённый отпечаток.
3. Права доступа пользователей#
У роли пользователя должно быть разрешение VNC (access_vnc) с правами Read и Update:
- Зайдите в раздел Роли
- Выберите нужную роль
- Найдите поле access_vnc и поставьте галочки на Read и Update
- Сохраните
(Если у вас нет прав на редактирование ролей, обратитесь к администратору)
Использование VNC#
Способ 1: Подключиться к роботу из таблицы#
- Зайдите в раздел Роботы
- В строке нужного робота нажмите иконку монитора (крайняя правая колонка)
- Откроется новая вкладка с экраном робота
Если в карточке робота заполнены адрес, пароль и доверенный отпечаток ключа сервера, подключение начнётся автоматически. Если отпечаток не задан, откроется форма, но подключиться без него нельзя. Браузер сначала проверяет ключ сервера и только затем передаёт учётные данные.
Способ 2: Подключиться вручную через VNC Viewer#
Откройте в браузере:
https://ВАШ_ОРКЕСТРАТОР/main/vnc-viewerЗаполните форму:
Поле Что вводить VNC Server (host:port) IP-адрес робота и порт VNC (например 192.168.1.100:5900)Пароль VNC-пароль SHA-256 fingerprint ключа сервера Доверенный отпечаток из настроек VNC робота: 32 пары шестнадцатеричных цифр через двоеточие Логин (опционально) Логин, если VNC-сервер требует
Если отпечаток отсутствует, имеет неверный формат или не совпадает с ключом сервера, соединение прерывается. Не обходите проверку: уточните правильный отпечаток у администратора робота.
Отключение#
- Нажмите красную кнопку "Отключиться" в левом верхнем углу
- Или просто закройте вкладку браузера
Прокси-сервис автоматически остановится и освободит порт.
Переменные окружения VNC (.env)#
| Переменная | По умолчанию | Описание |
|---|---|---|
VNC_HOST |
orchestrator-vnc-proxy |
Адрес VNC-прокси сервиса |
VNC_PORT |
5000 |
Порт API VNC-прокси |
VNC_LOG_LEVEL |
INFO |
Уровень логирования |
VNC_START_PORT |
6080 |
Начальный порт для прокси-соединений |
VNC_MAX_PORTS |
100 |
Максимум одновременных соединений |
Список портов#
| Порт | Назначение |
|---|---|
| 5000 | API VNC-прокси (внутренний, container-to-container) |
| 6080-6100 | WebSocket-прокси для VNC-сессий (браузер → websockify) |
| 5900 | Стандартный порт VNC-сервера на роботе |
Возможные проблемы#
| Проблема | Причина | Решение |
|---|---|---|
| Иконка монитора серая | Нет прав access_vnc | Выдайте права в разделе Роли |
| "VNC proxy API не найден" | Не запущен orchestrator-vnc-proxy | Проверьте состояние контейнера с vnc docker-compose ps |
| "Ошибка безопасности VNC: неверный пароль" | Неправильный VNC-пароль | Проверьте поле Machine Password в карточке робота |
| "Не задан доверенный fingerprint VNC-сервера" | Отпечаток отсутствует | Скопируйте доверенный отпечаток в карточку робота или форму подключения |
| "Ключ VNC-сервера не совпадает с доверенным fingerprint" | Ключ сервера изменился либо выбран другой сервер | Проверьте адрес робота и сверьте новый отпечаток через доверенный канал; до проверки не подключайтесь |
| "VNC-сервер не отвечает" | Робот выключен или VNC не запущен | Проверьте робот и VNC-сервер на нём |
| Чёрный экран после подключения | Экран робота заблокирован | Проверьте, активна ли графическая сессия |