WinVNC — программный сервер удалённого доступа для операционных систем семейства Microsoft Windows, реализующий протокол RFB (Remote Framebuffer), более известный как VNC. Он позволяет передавать содержимое графического рабочего стола и события ввода между локальной и удалённой машинами, предоставляя возможность просматривать и управлять текущим сеансом пользователя через сетевое соединение. WinVNC традиционно используется для администрирования, технической поддержки и удалённой работы с приложениями в средах, где требуется доступ к уже запущенному рабочему столу.
Исторически реализации VNC для Windows развивались в рамках различных проектов с открытым и проприетарным исходным кодом; конкретные названия и реализации могли изменяться, а информация о некоторых версиях может быть ограничена. В случае WinVNC под этим именем обычно понимают модификации сервера VNC, адаптированные под особенности Windows — интеграцию с системными службами, поддержку управления сеансами, работу с правами доступа и совместимость с различными средствами аутентификации. При отсутствии единого централизованного реестра версий, описание ниже сочетает общепринятые характеристики серверной части VNC для Windows.
- Передача экрана: захват графического буфера рабочего стола и передача изменений удалённому клиенту с использованием протокола RFB.
- Удалённое управление: передача событий клавиатуры и мыши от клиента к серверу для управления приложениями и интерфейсом удалённой системы.
- Настройки безопасности: поддержка базовых методов аутентификации, управление доступом по паролю и, в ряде реализаций, интеграция с механизмами аутентификации Windows.
- Сетевые настройки: конфигурация прослушиваемых портов, ограничение подключений и возможность работы через защищённые туннели.
- Работа как служба: возможность запуска сервера в фоновом режиме как системной службы для обеспечения постоянного доступа без активной сессии пользователя.
- Совместимость клиентов: взаимодействие с широким набором VNC-клиентов на разных платформах, включая Windows, macOS и Unix-подобные системы.
- Производительность: оптимизации передачи изменений экрана (например, дифференциальная передача областей) и выбор кодеков/методов сжатия для снижения сетевого трафика.
- Управление сессиями: возможности просмотра текущего сеанса пользователя без разрыва локального взаимодействия, а также опциональное создание отдельных сеансов в некоторых реализациях.
- Локализация и конфигурация: графические и текстовые интерфейсы для настройки параметров сервера, логирования и управления пользователями.
- Масштабируемость и интеграция: использование в малых офисах и корпоративных сетях, возможность интеграции с инструментами мониторинга и управления ИТ‑инфраструктурой.