Virtual Network Computing (VNC) - система удалённого доступа к рабочему столу компьютера, использующая протокол прикладного уровня RFB (Remote FrameBuffer) . Управление удаленным компьютером осуществляется путём передачи нажатий клавиш на клавиатуре и перемещений указателя мыши с одного компьютера на другой через сеть. На управляемом компьютере используется серверная часть VNC (VNC server), на управляющем - клиентская (VNC viewer) . VNC не зависит от систем, в которых она функционирует и, например, клиент для Linux может подключаться к серверу VNC работающему в среде Windows. Также существуют и реализации VNC для Java, в том числе и для мобильных телефонов. Протокол RFB был разработан относительно давно и первоначально использовал для передачи буфера экрана метод простого кодирования Raw Encoding - когда сервер передавал клиенту точки экрана в порядке слева на право и сверху вниз. После передачи первого буфера в дальнейшем, для минимизации трафика, передавались только изменившиеся пиксели. При таком способе кодирования и небольшой степени изменения изображения трафик минимален, однако, например, при просмотре видео - нагрузка на канал передачи резко возрастает, поскольку в буфере экрана будут изменяться практически все пиксели. Для минимизации обменного трафика, системы VNC стали использоваться различные методы кодирования и сжатия передаваемых данных. Не все методы являются стандартом для каждой реализации VNC. Если метод RAW Encoding может использоваться в любой VNC-системе, то специфические методы (CopyRect, Zlib, CoRRE и др.) зависят от используемого программного обеспечения и могут отличаться для разных версий VNC. Возможности по кодированию передаваемых данных клиент и сервер согласовывают при установлении соединения. По умолчанию для обмена данными по протоколу RFB используется диапазон TCP-портов с 5900 до 5906. Каждому порту соответствует свой экран графического сервера (в Linux - терминалы 0 - 6 X-сервера, в Windows - рабочий стол с номером дисплея 0 и TCP порт 5900). В некоторых реализациях VNC возможно обратное подключение от сервера к клиенту через TCP порт 5500. Многие бесплатные реализации VNC имеют коммерческий вариант, отличающийся дополнительными возможностями по обеспечению удобства использования, повышенной безопасности и производительности. Одним из наиболее простых и удобных представителей семейства VNC является RealVNC . Продукт выпускается в 3-х вариантах: - Free Edition - бесплатная версия с поддержкой базовых возможностей серверной и клиентской части. - Personal Edition - платная версия для использования в домашних условиях и в малом бизнесе. Добавлены возможности шифрования данных, чат, удаленная печать. - Enterprise Edition - коммерческая версия с улучшенной аутентификацией, шифрованием данных, удаленной печатью, чатом, передачей файлов. Сайт производителя - www.realvnc.com Инсталлятор RealVNC ver 4.1.3 включает в себя и серверную, и клиентскую части. Сервер может быть сконфигурирован для запуска в пользовательском режиме (User-Mode) или в качестве системной службы (Service-Mode). В режиме системной службы запуск сервера выполняется автоматически в процессе загрузки Windows. В таком режиме VNC-сервер готов к приему входящих подключений без входа пользователя в систему и каких-либо его действий. В пользовательском режиме, сервер запускается вручную или через автозапуск, как обычная прикладная программа. Конфигурирование VNC-сервера выполняется либо с помощью вызова контекстного меню щелчком правой кнопки мышки на иконке в панели задач Windows (пункт меню "Options"), либо запуском с использованием ярлыков в меню "Программы" -"RealVNC" - "VNC-Server : "- "Configure VNC Server" . В процессе конфигурирования сервера выполняются минимальные настройки - способ аутентификации и пароль для подключения (вкладка Authentication):
No Authentication - запрос пароля при подключении клиента к серверу не выполняется. VNC Password Authentication - подключение к серверу с проверкой пароля, заданного настройками сервера. Пароль задается при нажатии кнопки Configure. Во многих бесплатных версиях VNC используется пароль длиной в 8 символов. Если задать пароль большей длины, то для проверки все равно будут использоваться первые 8 символов, что делает такой сервер весьма уязвимым для взлома с использованием подбора пароля. Тем более, что количество попыток ввода пароля не проверяется. В платных версиях безопасность значительно улучшена, поскольку можно использовать длинные пароли, шифрование данных и проверку доступа с использованием средств Windows (режим NT Logon Authentication) Настройки соединения выполняются на вкладке Connections: Accept connection on port - принимать соединения на порт TCP 5900. Номер порта, при необходимости, можно изменить. Disconnect idle client after (seconds) - время неактивности клиента в секундах, по истечении которого, соединение будет сброшено. Serve Java viewer via HTTP on port - обслуживать подключения Java-клиента, подключающегося по протоколу HTTP на порт 5800. При использовании этого пункта конфигурации, подключение к VNC - серверу возможно в окне браузера с поддержкой Java. В поле Access Control можно задать правила обработки подключений для отдельных IP-адресов или подсетей. Для каждой записи возможно 3 варианта предопределенного действия: Allow - Разрешить подключение. В окне со списком адресов, отображается со знаком + перед адресом. Deny - Запретить подключение. В окне со списком адресов, отображается со знаком - перед адресом. Query - Выдать запрос на разрешение подключения.. В окне со списком адресов, отображается со знаком ? перед адресом. Режимы обслуживания подключений клиентов настраиваются на вкладке Sharing: ![]() Never treat new connection as shared - никогда не трактовать новое соединение как разделяемое. Use client's preferred sharing settings - использовать установки клиента для определения разделяемого соединения. Non shared connection replace existing ones - не разделяемое соединение заменяет существующее. При установке данного режима, подключение нового клиента с признаком неразделяемого соединения, сервер выполнит сброс всех остальных подключений. Для подключения множества клиентов к одному серверу флажок нужно снять. Вкладка Desktop определяет параметры обработки буфера рабочего стола при подключении клиентов VNC, и выполняемые действия после отключения от сервера последнего из них. . ![]() Установка флажков для каждого из полей уменьшает трафик при обмене буфером рабочего стола, но немного упрощает его внешний вид. Желательно включать при низком быстродействии канала передачи данных. When last client disconnects - когда последний клиент отключится. - Do nothing - ничего не делать. - Lock Workstation - запереть рабочий стол. Сеанс пользователя не завершается, но для продолжения работы с рабочим столом нужно ввести имя пользователя и пароль. - Logoff user - выполнить выход пользователя из системы. Режимы вкладки Inputs определяют взаимодействие между клиентом и сервером при обработке событий клавиатуры и мышки. Режим "Disable local inputs while server in use" отключает клавиатуру и мышь на удаленном компьютере при подключении к серверу VNC. Вкладка Capture method задает режим обработки изображения рабочего стола при передаче данных от сервера к клиенту и обработку прозрачных окон (Alpha - blended windows). Изменение режимов влияет на объем трафика между клиентом и сервером, а также степень использования ресурсов центрального процессора при обработке буфера рабочего стола. Настройки сервера RealVNC хранятся в разделе реестра HKEY_LOCAL_MACHINE\SOFTWARE\RealVNC\WinVNC4 Клиент Real VNC Viewer после запуска выдает на экран окно подключения к серверу. В поле ввода используется имя или IP-адрес удаленного компьютера, и при необходимости - номер порта, например 5909: ![]() Вкладка Color & Encoding позволяет выбрать режим кодирования данных при передаче буфера рабочего стола и глубину его цвета. Имеется возможность выбора одного из 3-х предпочитаемых типов кодирования или установить режим Auto Select - когда выбор выполняется автоматически при установлении соединения с сервером VNC. ![]() Настройки вкладки Inputs во многом сходны с настройками сервера и относятся к параметрам устройств ввода - клавиатуры и мыши ![]() ![]()     Для установки серверной части на удаленном компьютере можно воспользоваться бесплатной утилитой pushVNC Скачать, 433кб. . Программа позволяет системным администраторам выполнять установку VNC сервера на удаленном компьютере по локальной сети без какого-либо вмешательства конечного пользователя. ![]() Для подключения к удаленному компьютеру требуется учетная запись с правами администратора. Кроме того, на удаленном компьютере должны быть доступны скрытые сетевые ресурсы ADMIN$ и IPC$ и должна работать служба удаленного управления реестром. Программа копирует несколько своих файлов для создания VNC - сервера на удаленный компьютер, регистрирует в реестре новый сервис PushVNC и выполняет его запуск. Затем выполняется обычное клиентское подключение к удаленно созданному серверу. Если не установлен режим Leave Service, то после завершения сеанса созданный сервер и скопированные по сети файлы удаляются. RealVNC - одна из простых и удобных бесплатных реализаций VNC. Кроме нее имеется еще несколько десятков, отличающихся в незначительной степени. Например, популярный пакет UltraVNC имеет практически такие же настройки, как и RealVNC, но позволяет использовать большее количество методов кодирования данных, шифрование даже в бесплатной версии, можно использовать специальный собственный драйвер для обработки буфера рабочего стола. И так же как RealVNC, сервер UltraVNC в бесплатной редакции выполняет усечение пароля до 8 символов. Ниже приведены ссылки и краткое описание бесплатных реализаций VNC на проекте SourceForge.     SourceForge.net - один из самых больших в мире веб-сайтов для разработчиков открытого программного обеспечения, который обслуживается SourceForge, Inc. и использует собственническую систему SourceForge. На этом сайте разработчики могут размещать и совместно разрабатывать свои программные проекты. На SourceForge.net размещены более 230 тыс. проектов, а количество зарегистрированных пользователей составляет около 2 млн. человек. Многие проекты, опубликованные на sourceforge.net имеют свой собственный сайт, ссылка на который размещена на странице с кратким описанием программного продукта.
компьютерный мир |