Jump to content

Виртуальные сетевые вычисления

(Перенаправлено с VNC )
Логотип виртуальных сетевых вычислений

Virtual Network Computing ( VNC ) — это графическая система совместного использования рабочего стола, которая использует протокол удаленного буфера кадров (RFB) для удаленного управления другим компьютером . Он передает вводимые данные с клавиатуры и мыши с одного компьютера на другой, передавая обновления графического экрана по сети . [1]

VNC не зависит от платформы: существуют клиенты и серверы для многих операционных систем с графическим интерфейсом, а также для Java . Несколько клиентов могут одновременно подключаться к VNC-серверу. Популярные варианты использования этой технологии включают удаленную техническую поддержку и доступ к файлам на рабочем компьютере с домашнего компьютера или наоборот.

Первоначально VNC был разработан в исследовательской лаборатории Olivetti & Oracle в Кембридже, Великобритания. Исходный код VNC и многие современные производные находятся в открытом доступе под лицензией GNU General Public License .

VNC в KDE 3.1

Существует несколько вариантов VNC. [2] которые предлагают свои особые функции; например, некоторые из них оптимизированы для Microsoft Windows или предлагают передачу файлов (не является частью собственно VNC) и т. д. Многие из них совместимы (без дополнительных функций) с собственно VNC в том смысле, что средство просмотра одного варианта может подключаться к серверу другого. ; другие основаны на коде VNC, но несовместимы со стандартом VNC.

VNC и RFB являются зарегистрированными торговыми марками RealVNC Ltd. в США и некоторых других странах.

Исследовательская лаборатория Olivetti & Oracle (ORL) [3] в Кембридже в Великобритании разработали VNC в то время, когда Olivetti и Oracle Corporation лабораторией владели . В 1999 году лабораторию приобрела AT&T, а в 2002 году закрыла ее исследовательскую деятельность.

Среди разработчиков, которые работали над VNC еще в исследовательской лаборатории AT&T: [4]

После закрытия ORL в 2002 году несколько членов команды разработчиков (в том числе Ричардсон, Хартер, Уэзералл и Хоппер) сформировали RealVNC, чтобы продолжить работу над открытым и коммерческим программным обеспечением VNC под этим именем.

Исходный исходный код под лицензией GPL был использован в нескольких других версиях VNC. Такое разветвление не привело к проблемам совместимости, поскольку протокол RFB спроектирован так, чтобы его можно было расширять. Клиенты и серверы VNC согласовывают свои возможности с помощью подтверждения связи , чтобы использовать наиболее подходящие параметры, поддерживаемые на обоих концах.

По состоянию на 2013 год , RealVNC Ltd заявляет, что термин «VNC» является зарегистрированным товарным знаком в США и других странах. [5]

Этимология

[ редактировать ]

Название Virtual Network Computer/Computing (VNC) возникло в связи с работой ORL над тонким клиентом под названием Videotile, который также использовал протокол RFB. Videotile имел ЖК-дисплей с перьевым вводом и быстрое банкоматное подключение к сети. В то время сетевой компьютер обычно использовался как синоним тонкого клиента; VNC, по сути, представляет собой программный (то есть виртуальный) сетевой компьютер. [ нужна ссылка ]

Операция

[ редактировать ]
  • VNC Сервер — это программа на машине, которая совместно использует некоторый экран (и не может быть связана с физическим дисплеем — сервер может быть «безголовым» ) и позволяет клиенту совместно управлять им.
  • VNC Клиент (или программа просмотра) — это программа, которая представляет данные экрана, поступающие с сервера, получает от них обновления и, предположительно, управляет ими, сообщая серверу о собранных локальных входных данных.
  • VNC Протокол ( протокол RFB ) очень прост и основан на передаче одного графического примитива от сервера к клиенту («Поместите прямоугольник пиксельных данных в указанную позицию X,Y») и сообщений о событиях от клиента к серверу.

При обычном режиме работы средство просмотра подключается к порту на сервере (порт по умолчанию: 5900). Альтернативно (в зависимости от реализации) браузер может подключиться к серверу (порт по умолчанию: 5800). Сервер может подключиться к средству просмотра в «режиме прослушивания» через порт 5500. Одним из преимуществ режима прослушивания является то, что сайту сервера не нужно настраивать свой брандмауэр для разрешения доступа к порту 5900 (или 5800); обязанность лежит на зрителе, что полезно, если серверный сайт не имеет компьютерных знаний, а пользователь зрителя более осведомлен.

Сервер отправляет небольшие прямоугольники фреймбуфера клиенту . В своей простейшей форме протокол VNC может использовать большую полосу пропускания , поэтому были разработаны различные методы для снижения накладных расходов на связь. Например, существуют различные кодировки (методы определения наиболее эффективного способа передачи этих прямоугольников). Протокол VNC позволяет клиенту и серверу согласовывать, какую кодировку они будут использовать. Самая простая кодировка, поддерживаемая всеми клиентами и серверами, — это необработанное кодирование слева направо , при котором данные пикселей отправляются в порядке развертки , а после передачи исходного полноэкранного режима передаются только изменяющиеся прямоугольники. Это кодирование работает очень хорошо, если только небольшая часть экрана меняется от одного кадра к другому (например, когда указатель мыши перемещается по рабочему столу или когда текст пишется под курсором), но требования к пропускной способности становятся очень высокими, если много пикселей изменяются одновременно (например, при прокрутке окна или просмотре полноэкранного видео).

VNC по умолчанию использует TCP-порт 5900+ N , [6] [7] где N — номер дисплея (обычно: 0 для физического дисплея). Некоторые реализации также запускают базовый HTTP- сервер на порту 5800+ N , чтобы предоставить средство просмотра VNC в виде Java-апплета , что позволяет легко подключаться через любой веб-браузер с поддержкой Java. Можно использовать различные назначения портов, если и клиент, и сервер настроены соответствующим образом. Также существует реализация HTML5 VNC-клиента для современных браузеров (плагины не требуются). [8]

Хотя это возможно даже при низкой пропускной способности, использование VNC через Интернет облегчается, если у пользователя есть широкополосное соединение на обоих концах. может потребоваться расширенная трансляция сетевых адресов (NAT), настройка брандмауэра и маршрутизатора, Однако для установления соединения например переадресация портов. Пользователи могут устанавливать связь через технологии виртуальной частной сети (VPN), чтобы упростить использование через Интернет, или через подключение к локальной сети, если VPN используется в качестве прокси-сервера, или через повторитель VNC (полезно при наличии NAT). [9] [10]

Xvnc — это Unix VNC-сервер, основанный на стандартном X-сервере . Для приложений Xvnc выглядит как «сервер» X (т. е. он отображает клиентские окна), а для удаленных пользователей VNC — как VNC-сервер. Приложения могут отображаться на Xvnc, как если бы это был обычный X-дисплей, но они будут отображаться на любых подключенных средствах просмотра VNC, а не на физическом экране. [11] В качестве альтернативы можно настроить машину (которая может быть рабочей станцией или сетевым сервером) с экраном, клавиатурой и мышью для загрузки и запуска VNC-сервера в качестве службы или демона, после чего экран, клавиатуру и мышь можно удалить. и машина хранится в труднодоступном месте.

Кроме того, изображение, обслуживаемое VNC, не обязательно совпадает с изображением, которое видит пользователь на сервере. На компьютерах Unix/Linux, поддерживающих несколько одновременных сеансов X11, VNC может быть настроен на обслуживание определенного существующего сеанса X11 или на запуск одного из них. Также возможно запустить несколько сеансов VNC с одного компьютера. В Microsoft Windows обслуживаемым сеансом VNC всегда является текущий сеанс пользователя. [ нужна ссылка ]

Пользователи обычно развертывают VNC как кроссплатформенную систему удаленного рабочего стола. Например, Apple Remote Desktop для Mac OS X (и какое-то время « Back to My Mac » в «Leopard» — Mac OS X 10.5 до «High Sierra» — macOS 10.13) взаимодействует с VNC и подключается к компьютеру пользователя Unix. текущий рабочий стол, если он обслуживается с помощью x11vnc , или в отдельный сеанс X11, если он обслуживается с помощью TightVNC . Из Unix TightVNC подключится к сеансу Mac OS X, обслуживаемому Apple Remote Desktop, если опция VNC включена, или к VNC-серверу, работающему в Microsoft Windows. [12]

В июле 2014 года RealVNC опубликовала предварительную версию Wayland для разработчиков. [13] [14]

Безопасность

[ редактировать ]

По умолчанию RFB не является безопасным протоколом. Хотя пароли не передаются в виде открытого текста (как в telnet ), взлом может оказаться успешным, если и ключ шифрования , и закодированный пароль будут перехвачены из сети. По этой причине рекомендуется использовать пароль длиной не менее 8 символов. С другой стороны, в некоторых версиях VNC существует ограничение в 8 символов; если отправляется пароль, длина которого превышает 8 символов, лишние символы удаляются, а усеченная строка сравнивается с паролем.

UltraVNC поддерживает использование плагина шифрования с открытым исходным кодом, который шифрует весь сеанс VNC, включая аутентификацию по паролю и передачу данных. Он также позволяет выполнять аутентификацию на основе учетных записей пользователей NTLM и Active Directory . Однако использование таких плагинов шифрования делает его несовместимым с другими программами VNC. RealVNC предлагает высоконадежное шифрование AES как часть своего коммерческого пакета, а также интеграцию с Active Directory. Workspot выпустила патчи шифрования AES для VNC. По данным TightVNC, [15] TightVNC небезопасен, поскольку данные изображения передаются без шифрования. Чтобы обойти это, его следует туннелировать через SSH-соединение (см. ниже).

VNC может быть туннелирован через соединение SSH или VPN , что добавит дополнительный уровень безопасности с более надежным шифрованием. Клиенты SSH доступны для большинства платформ; Туннели SSH можно создавать из клиентов UNIX , клиентов Microsoft Windows, клиентов Mac (включая Mac OS X и System 7 и выше) и многих других. Существуют также бесплатные приложения, которые создают мгновенные VPN-туннели между компьютерами.

Дополнительной проблемой безопасности при использовании VNC является проверка того, требует ли используемая версия авторизации от владельца удаленного компьютера, прежде чем кто-либо возьмет под контроль свое устройство. Это позволит избежать ситуации, когда владелец компьютера, к которому получен доступ, без предварительного уведомления узнает, что кто-то контролирует его устройство.

См. также

[ редактировать ]
  1. ^ Ричардсон, Т.; Стаффорд-Фрейзер, К.; Вуд, КР; Хоппер, А. (1998). «Виртуальные сетевые вычисления» (PDF) . IEEE Интернет-вычисления . 2 : 33–38. CiteSeerX   10.1.1.17.5625 . дои : 10.1109/4236.656066 .
  2. ^ Семейство приложений дистанционного управления VNC: список вариантов VNC.
  3. ^ «Часто задаваемые вопросы о VNC (FAQ)» . 1999. Архивировано из оригинала 15 августа 2000 года.
  4. ^ Профили руководителей RealVNC
  5. ^ Авторские права и товарные знаки RealVNC. По состоянию на 23 февраля 2018 г.
  6. ^ «RealVNC – Часто задаваемые вопросы» .
  7. ^ «Конфигурация UltraVnc» .
  8. ^ «ноВНК» .
  9. ^ «Репитер OpenWRT VNC» .
  10. ^ «UVNC-ретранслятор» .
  11. ^ Лаборатории AT&T, Кембридж (1999). «VNC-сервер на базе X» . Виртуальные сетевые вычисления . Архивировано из оригинала 19 марта 2007 года . Проверено 24 марта 2007 г.
  12. ^ «Сервер OnlineVNC для ОС Windows» .
  13. ^ «Предварительный просмотр VNC® Wayland для разработчиков» . 8 июля 2014 года. Архивировано из оригинала 14 июля 2014 года . Проверено 10 июля 2014 г.
  14. ^ «Электронное письмо с предварительным просмотром для разработчиков RealVNC Wayland» . сайт freedesktop.org . 9 июля 2014 г.
  15. ^ Насколько безопасен TightVNC? TightVNC Часто задаваемые вопросы. TightVNC.com, доступ: 23 февраля 2018 г.
[ редактировать ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 72cbe0b13942dceed392eb8d92ddef96__1711785780
URL1:https://arc.ask3.ru/arc/aa/72/96/72cbe0b13942dceed392eb8d92ddef96.html
Заголовок, (Title) документа по адресу, URL1:
Virtual Network Computing - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)