Софт

Vnc клиент для Windows

Рейтинг: 4.1/5.0 (312 проголосовавших)

Категория: Windows

Описание

Тонкий клиент WTPRO - VNC - Терминальный клиент

VNC
Тонкий клиент WTPRO

Virtual Network Computing (VNC) система удаленного доступа к компьютеру, использующая RFB (Remote FrameBuffer) протокол. Она передает нажатия клавиш на клавиатуре и движения мыши с одного компьютера на другой, транслируя обновления экрана в обратном направлении по сети.

VNC - платформонезависимая система: VNC viewer, запущенный на одной операционной системе может подключаться к VNC серверу, работающему на совершенно другой ОС. Существуют реализации клиентской и серверной части практически для всех операционных систем, в том числе для Java среды. К одному VNC серверу может быть подключено несколько клиентов одновременно. Наиболее популярный способ использования VNC - удаленная техническая поддержка и доступ к рабочему компьютеру из дома. VNC была разработана компанией AT&T. Оригинальные исходные коды VNC доступны под лицензий GNU General Public License, как и многие варианты VNC, существующие сегодня.

VNC была создана в Olivetti & Oracle Research Lab, в последствии приобретенная Olivetti и Oracle Corporation. В 1999 году AT&T приобрела лабораторию и в 2002 прикрыла отдел разработок. Имя возникло из компьютерной сети тонких клиентах ATM Network Computer называемой Videotile, которая представляла собой LCD панель со стилусом и быстрым ATM подключением к сети. По существу, VNC - это программная реализация 'ATM Network Computer'.

Где это можно использовать?
  • VNC можно использовать для организации терминального доступа. В отличие от RDP протокола (удаленный рабочий стол) VNC полностью открыт и, следовательно, Вам не нужно покупать у Microsoft лицензии. При помощи VNC клиента встроенного в ElinuxT вы можете подключаться к UNIX машинам.
  • Также VNC можно использовать для организации презентаций. На сервере запускается программа, а на клиентских компьютерах загружается ElinuxT в режиме VNC с использованием разделения сеанса. В результате изображение с сервера передается на все компьютеры и пользователи видят все, что происходит на сервере.
Как это работает

VNC состоит из двух частей, клиентской и серверной. Сервер - программа, предоставляющая доступ к экрану компьютера, на котором она запущена. Клиент (или viewer) - программа, получающая изображение экрана с сервера и взаимодействующая с ним.

VNC очень простой протокол, основанный на графических примитивах: "Положить прямоугольник пикселей на заданную позицию x, y". Сервер посылает небольшие прямоугольники framebuffer'а клиенту. Такая схема в своей примитивной форме потребляет большую часть пропускной возможности канала. Для снижения нагрузки на канал используются различные методы. Существует вариант использования сжатия - метод определения наиболее эффективного способа передачи прямоугольников пикселей. VNC протокол позволяет клиенту и серверу договориться об используемом методе кодирования. Самый простой метод кодирования, поддерживаемый всеми клиентами и серверами - "raw encoding", при котором пиксели передаются в порядке слева-на-право, сверху-вниз, и после передачи первоначального состояния экрана, передаются только изменившиеся пиксели. Этот метод работает очень хорошо при незначительных изменениях изображения на экране (движения указателя мыши по рабочему столу, набор текста под курсором), но загрузка канала становится очень высокой при одновременном изменения большого количества пикселей (просмотр видео в полноэкранном режиме).

По умолчанию VNC использует диапазон портов с 5900 до 5906. Каждый порт представляет собой соответствующий X экран (порты с 6000 по 6006 ассоциированы с экранами с :0 по :6). Java клиенты, доступные во многих реализациях, (например RealVNC) соответствуют той же модели, но на портах с 5800 до 5806. Диапазоны портов могут быть изменены.

Многие Windows компьютеры могут использовать лишь один порт из-за отсутствия многосессионных свойств, присущих UNIX системам. Экран по умолчанию, для windows систем :0, что соответствует 5900 TCP порту.

Серверные реализации

RealVNC - официальная реализация VNC протокола от AT&T. Существует в исполнении как для Windows, так и для UNIX систем. Предлагается как в платном, так и в бесплатном вариантах.

http://sourceforge.net/projects/vnc-tight/
TightVNC - бесплатная реализация VNC сервера. Работает под Windows и Linux. Рекомендуется в качестве сервера.

Особенности работы

В отличие от RDP протокола VNC сервер для авторизации не использует системные имена пользователей и пароли. Он вообще не использует имена пользователей!

Вместо имени пользователя используется номер порта. На Unix машинах можно запустить несколько VNC серверов, на windows машинах мы ограничены только одним сеансом. То есть при работе в Unix наш сервер поддерживает столько клиентов, сколько VNC серверов мы запустили. В Windows все пользователи работают с одним сеансом, а именно с локальной консолью сервера. Все пользователи используют одну и туже клавиатуру и одну и туже мышь. Поэтому вполне вероятно, что пользователи на различных компьютерах будут тянуть в разные стороны мышь!

В связи с этим в VNC сеансе существует два вида паролей:

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

Еще одной особенностью протокола является возможность "расшарить" сессию - разрешить нескольким пользователям параллельно работать с одним портом и использовать общий сеанс. В этом режиме целесообразно использовать пароль "только на чтение".

Внимание! Xарактеристики, комплект поставки и внешний вид данного товара могут отличаться от указанных или могут быть изменены производителем без отражения в каталоге.

Обращаем Ваше внимание на то, что данный интернет-сайт носит исключительно информационный характер и ни при каких условиях информационные материалы и цены, размещенные на сайте, не являются публичной офертой, определяемой положениями Статьи 43.

Другие статьи, обзоры программ, новости

Как подключиться к рабочему столу Linux-а из Windows

Допустим есть у нас где-то комп с линуксом и каким-то desktop environment-ом, например, KDE. Вот пришли мы утром, поработали за этим компом, понаоткрывали кучу окошек с разными интересными сайтами и ушли в конце дня домой. А придя домой, вспомнили, что надо срочно дочитать один из интересных сайтов, да, вот незадача, адреса его не помним. И, вполне логично, начинаем задумываться как бы это подключиться из своей домашней винды к X-серверу по аналогии, как это можно сделать rdesktop-ом или Radmin-ом для хождения на виндовый рабочий стол. Решение есть. Причём, очень простое. Называется x11vnc. Подразумевается, что доступ по SSH к линуксовому компу у нас имеется. Пошаговое решение задачи доступа из windows к рабочему столу linux.

  1. Устанавливаем пакет x11vnc:

$ sudo yum install x11vnc

$ rpm -qi x11vnc | sed -r '/Summary/,$ !d'

Summary. VNC server for the current X11 session

Description. What WinVNC is to Windows x11vnc is to X Window System,

i.e. a server which serves the current X Window System desktop via RFB

( VNC ) protocol to the user. Based on the ideas of x0rfbserver and on

LibVNCServer it has evolved into a versatile and productive while

still easy to use program.

Тут она на консоль вывалит кучу текста, из которого самой полезной является информация о порте. По умолчанию используется TCP-порт 5900.
  • На винде устанавливаем программу TigerVNC
  • Запускаем putty. подключаемся к линуксу, предварительно сделав локальный проброс порта 5900, логинимся:

    Локальный проброс порта в putty для работы с x11vnc

  • Запускаем vncviewer.exe, в качестве сервера указываем 127.0.0.1:

    Подключаемся из виндовс к linux через SSH-туннель с помощью vncviewer.exe

    И далее в окошке tigervnc видим наш вожделенный линуксячий рабочий стол :) В принципе можно обойтись и без putty, но с ним надёжнее, так как трафик по Интернету будет бегать шифрованным.

    Есть и другой подход. Стандартная оконная система для Linux – это X Window System (в простонародье – "иксы"). Она занимается отрисовкой графических элементов и взаимодействием с устройствами ввода-вывода. X Window System имеет прозрачную клиент-серверную архитектуру: оконная система выполняет роль сервера, а графические приложения – соответственно, роль клиентов. Клиенты подключаются к серверу и взаимодействуют с ним для отрисовки и для получения событий от мыши и клавиатуры. Оконная система может находиться на одном компьютере, а графическое приложение – на другом. И приложение может связываться с X Window System по сети. То есть можно запустить приложение на удалённом компьютере, настроив его отображение (отрисовку) на том компьютере, за которым Вы в данный момент находитесь. А также запустить программу на одном удаленном компьютере с отрисовкой элементов интерфейса на другом удаленном компьютере :) Существуют также X-серверы и для Windows, например XMing. Так вот с помощью этого XMing-а и включённого "X11 forwarding" в putty можно запросто заставить линуксячие приложения отрисовываться на рабочем столе Windows :) В подробностях опишу это, может быть, в какой-нибудь из последующих статей.

    Похожие заметки:
  • VNC - скачать бесплатно клиент VNC для управления компьютерами под Windows 7

    Основная информация о программе

    VNC - программа для дистанционного управления компьютером через интернет. Управляющий и управляемый компьютеры могут иметь разные операционные системы (Windows, Mac, Linux). Программа также позволяет использовать клиентский модуль на Java и управлять компьютером непосредственно из веб-браузера.

    Что нового в этой версии?
    • изменен параметр DisplayDevice;
    • исправлена vnckeyhelper.exe утилита, которая позволяет подключенным пользователям безопасно выполнять привилегированные нажатия клавиш, такие как Alt+Tab.
    Смотреть всю историю изменений Новые отзывы о VNC

    1. Управлять рабочим столом удаленно можно по локальной сети или через интернет.
    2. Программа позволяет работать с разными операционными системами.
    3. Сбой связи не приведет ни к каким последствиям. Можно будет продолжить с того момента, когда произошло разъединение.
    4. Возможность обмена файлами.
    5. Достаточно удобная адресная книга
    6. Встроенный чат в корпоративной версии
    7. Разделение на серверную и клиентскую части. Клиентских частей, называемых VNC Viewer, может быть несколько. Серверная часть ставится 1 раз на ту машину, которой нужно управлять.

    1. Может не работать пересылка буфера обмена
    2. Может не работать передача нажатия функциональных клавиш и сочетаний.
    3. Работа VNC может значительно замедлять часть антивирусов. К примеру, антивирус Касперского рекомендует отключать самозащиту при удаленном подключении через RealVNC.
    4. В бесплатной версии не использует шифрование данных. В закрытом виде передается только пароль.
    5. Для освоения программы понадобится некоторое время. Дружелюбным интерфейс не назовешь.
    6. Серверная часть нуждается в качественной настройке. Объяснить настройку пользователю будет сложновато. Придется настраивать администратору.

    Итоги и комментарии

    VNC – хорошая программа. Непростая в настройке, требовательная к пользователю. Но это качественный инструмент для работы. Системным администраторам стоит добавить программу в свой арсенал.

    Вход в многопользовательскую систему через VNC

    Вход в многопользовательскую систему через VNC Архитектура VNC и X server

    В качестве графического интерфейса пользователя (GUI) в Linux®применяется X Window System (сокращенно X ). X — это необычный GUI в нескольких отношениях, в частности, это изначально сетевой интерфейс. X-сервер. по сути, представляет собой программу сетевого сервера. Программы сетевого сервера предоставляют клиентским программам доступ к локальным ресурсам, и это верно также для X-сервера. Особенность заключается в том, что в случае Х-сервера "локальные ресурсы" – это дисплей, клавиатура и мышь, с которыми работает пользователь. В самой распространенной конфигурации программы Х-клиента работают на том же компьютере, что и сервер. Таким образом, LibreOffice, GNU Image Manipulation Program (GIMP) или другие программы являются X-клиентами, использующими сетевые протоколы Х для приема данных от пользователя и отображения результатов на том же компьютере.

    Однако когда X используется в сети, пользователь сидит за компьютером X-сервера, а X-клиентами служат программы, которые нужно запускать на другом компьютере. Для этой конфигурации требуется второй сетевой протокол, устанавливающий соединение. Таким вторым протоколом может быть telnet, Secure Shell (SSH) или X Display Manager Control Protocol (XDMCP). Сервер этого протокола удаленного входа работает на компьютере X-клиента, а клиент удаленного входа ? на компьютере X-сервера. Сервер удаленного входа запускает X-клиенты, которые, в свою очередь, устанавливают соединение с X-сервером. Рисунок 1 иллюстрирует это взаимодействие. Пунктирными стрелками обозначено начало сеанса. (В случае XDMCP XDMCP-клиент встроен в программу X-сервера.)

    Рисунок 1. Для удаленного доступа X требуется клиент и сервер на обоих компьютерах

    Эта конфигурация прекрасно работает во многих локальных сетях, но не лишена недостатков. Например, для нее нужно инициировать двусторонний сетевой протокол, а этому может помешать межсетевой экран или маршрутизатор Network Address Translation (NAT). (SSH устраняет это препятствие, позволяя туннелировать X-сеансы.) Кроме того, хотя существуют X-серверы для большинства платформ, они обычно не устанавливаются на компьютерах под управлением Windows®. По этим и иным причинам многие предпочитают использовать другой протокол, Remote Frame Buffer (RFB), который реализован в семействе программ Virtual Network Computing (VNC).

    VNC - это кроссплатформенный инструмент, который обеспечивает удаленный доступ к Linux, UNIX®, Mac OS X, Windows и другим системам из клиента любого типа. Пользователь сидит за клиентским компьютером и обращается к удаленному серверному компьютеру. В Linux VNC-сервер либо зеркально отражает содержимое локального экрана Х-сервера на удаленный компьютер, либо содержит свой собственный X-сервер, способный работать независимо от того, что управляет локальным экраном. Результат показан на рисунке 2. Опять же, пунктирная стрелка указывает начало сеанса. Эта конфигурация устраняет необходимость в обратном сетевом соединении, а так как клиенты и серверы VNC имеются для многих операционных систем, одна и та же клиентская программа обеспечивает доступ к любому серверу.

    Рисунок 2. В состав VNC-сервера входит X-сервер, способный взаимодействовать с локальными программами через X-клиент

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

    Для решения этой проблемы можно объединить эти два подхода: перенастроить локальный XDMCP-сервер так, чтобы он помогал X-серверу, встроенному в VNC, обеспечить недостающую многопользовательскую аутентификацию. (Результирующая конфигурация иллюстрируется на рисунке 3. Пунктирная стрелка указывает начало сеанса.) Теперь, когда удаленные пользователи VNC обращаются к компьютеру VNC-сервера, они могут вводить имена пользователей и пароли доступа к своим собственным уникальным сеансам VNC, так что с компьютером могут работать сколько угодно пользователей.

    Рисунок 3. Добавление XDMCP к конфигурации VNC обеспечивает повышенную гибкость Настройка VNC-сервера

    Существует несколько способов запуска VNC, включая использование сценариев, привязку VNC к среде рабочего стола с помощью настольных инструментов и использование xinetd для прослушивания VNC-соединений. Этот последний подход и описывается здесь, так как он позволяет запускать VNC так, что тот может использовать XDMCP-сервер. Прежде чем перейти к инструкциям по настройке VNC для запуска посредством xinetd. необходимо выбрать VNC-сервер.

    Выбор VNC-сервера

    Существует несколько программ VNC-сервера. (См. раздел Ресурсы ). Некоторые из наиболее популярных: TightVNC, TigerVNC и RealVNC. В этой статье в качестве примера используется TightVNC. К сожалению, детали конфигурации зависят как от сервера, так и от дистрибутива, поэтому приведенные здесь инструкции нужно будет адаптировать к своему программному обеспечению.

    Установка xinetd

    Многие дистрибутивы устанавливают суперсервер xinetd по умолчанию, но не все. Так как описанный здесь метод предполагает использование xinetd. необходимо установить xinetd. если он еще не установлен. В большинстве дистрибутивов xinetd можно установить с помощью менеджера пакетов, например, вызывав apt-get install xinetd в дистрибутивах на основе Debian или zypper install xinetd в openSUSE.

    Может также потребоваться настройка процесса запуска xinetd. Обычно для одноразового запуска можно использовать сценарий запуска System V (SysV):

    Для настройки автоматического запуска xinetd при загрузке компьютера требуется знание методов работы сценариев запуска своего дистрибутива. Как правило, это делается с помощью утилиты, такой как chkconfig (используется в Fedora, openSUSE и родственных дистрибутивах), update-rc.d (используется в Debian и родственных дистрибутивах) или rc-update (используется в Gentoo), примерно так:

    Введите только одну из этих команд или найдите эквивалент для своего дистрибутива.

    Заметим, что xinetd может не запускаться, если он не настроен на выполнение каких-либо служб. Так что, возможно, придется отложить его запуск до тех пор, пока вы не настроете xinetd для управления своим VNC-сервером.

    Настройка xinetd

    Серверы, которыми должен управлять xinetd. помещают файлы конфигурации в каталог /etc/xinetd.d. Таким образом, чтобы настроить xinetd на управление VNC, нужно создать или отредактировать файл с именем типа /etc/xinetd.d/vnc. (В некоторых дистрибутивах, таких как openSUSE, пакет VNC-сервера устанавливает такой файл.) В листинге 1 приведен пример.

    Листинг 1. Пример настройки VNC для xinetd

    Эта запись задает несколько параметров xinetd. большинство из которых нужно оставить как есть. Ниже перечислены те параметры, которые могут потребовать настройки.

    • service . VNC с разными параметрами можно запустить через несколько портов, но в этом случае в первой строке листинга 1 нужно присвоить VNC отдельное имя службы для каждого порта.
    • server . Этот параметр нужно изменить так, чтобы он указывал на главный двоичный файл VNC-сервера, который обычно называется Xvnc.
    • server_args . Некоторые из этих значений вы почти наверняка захотите изменить, как описано ниже.
    • port . VNC использует порты с номерами 5900 и выше. Можно запустить сервер с разными значениями параметров через разные порты. В этом случае каждому экземпляру нужно назначить свой номер порта.

    Самая каверзная часть настройки xinetd - это настройка аргументов сервера. В качестве модели можно использовать аргументы, приведенные в листинге 1, изменив некоторые из них.

    • -query localhost . Этот параметр указывает, что сервер VNC X должен проверять систему localhost на аутентификацию XDMCP. Его можно изменить, если вы хотите использовать один компьютер в качестве транслятора для доступа к программам другого.
    • -geometry 1024x768 . Этот параметр устанавливает виртуальное разрешение сеанса VNC. Заметим, что это разрешение не обязательно должно соответствовать разрешению обычного X-сервера, работающего на компьютере сервера. Можно создать несколько записей, работающих с разным разрешением, чтобы пользователи могли входить в VNC-сервер с тем разрешением, которое удобно для их локальных систем.
    • -depth 16 . Этот параметр задает глубину цвета. Чем ниже значение, тем быстрее обновляется дисплей, но на экране с большим количеством цветов могут появиться искажения. Диапазон допустимых значений от 2 до 32.

    Имеются многие другие параметры, и некоторые из них зависят от VNC-сервера. Обращайтесь к документации по своему серверу VNC.

    Настройка XDMCP-сервера

    Большинство дистрибутивов Linux настраивают свои XDMCP-серверы только для управления локальным дисплеем. Чтобы обеспечить удаленный доступ, нужно перенастроить XDMCP-сервер так, чтобы принимать запросы на доступ с VNC-сервера, работающего на том же компьютере. Детали зависят от XDMCP-сервера. Три наиболее часто используемых в Linux ? это GNOME Display Manager (GDM), Light Display Manager (LightDM) и KDE Display Manager (KDM). Для других XDMCP-серверов, таких как XDM, требуются настройки, отличные от описанных здесь. В любом случае после перенастройки XDMCP-сервера его придется перезапустить.

    Редактирование файла конфигурации XDMCP

    Если вы не уверены, какой XDMCP-сервер используется в вашей системе, это можно определить, просмотрев листинг процесса с помощью строки dm. например:

    В первой строке этой распечатки указано, что работает KDM, поэтому для того чтобы VNC мог использовать XDMCP, нужно отредактировать файл конфигурации этого сервера. Файлы конфигурации большинства программ XDMCP имеют один и тот же формат. Они содержат разделы с именами, указанными в квадратных скобках, например [xdmcp]. Строки, следующие за именем раздела, задают параметры через знак равенства, например: enable=true. В таблице 1 перечислены имена файлов конфигурации, имена разделов и параметры, которые необходимо определить, чтобы XDMCP работал на нескольких распространенных XDMCP-серверах Linux.

    Таблица 1. Параметры, позволяющие XDMCP поддерживать VNC для разных XDMCP-серверов

    Имя файла конфигурации

    Раздел XDMCP в файле конфигурации может полностью отсутствовать. Если он присутствует, он может явно отключать поддержку XMDCP, содержать закомментированные параметры или быть пустым. Независимо от исходного состояния файла необходимо сделать так, чтобы раздел XDMCP присутствовал и чтобы поддержка была включена. В качестве примера рассмотрим настройку KDM для включения XDMCP:

    Некоторые дистрибутивы позволяют включить дополнительные меры безопасности, которые потребуется ослабить. Одна из них ? межсетевой экран. Сценарии межсетевых экранов обычно зависят от дистрибутивов, поэтому за инструкциями по настройке межсетевого экрана обращайтесь к документации на свою систему. Нужно, чтобы localhost имел доступ к порту 177, а VNC-клиенты - к порту 5900 (или любым другим портам, которые используются для VNC).

    В OpenSUSE есть дополнительный файл конфигурации, который управляет некоторыми типами доступа, включая XDMCP-доступ: /etc/sysconfig/displaymanager. Откройте этот файл в текстовом редакторе и найдите следующую строку:

    Измените значение этого параметра на "yes". Если оставить "no". окно входа XDMCP-сервера при подключении к VNC-серверу отображаться не будет. В большинстве дистрибутивов такое изменение не требуется: этот файл использует только openSUSE.

    Перезапуск XDMCP-сервера

    Когда XDMCP-сервер настроен на поддержку удаленных соединений, его необходимо перезапустить. В дистрибутивах, которые запускают X посредством файла инициализации SysV, таких как Debian и Gentoo, это можно сделать с помощью параметра restart.

    В системе, которая для запуска X использует уровень runlevel, такой как Fedora или openSUSE, нужно перейти на уровень текстового режима (обычно 3), а затем вернуться на уровень GUI (обычно 5):

    Имейте в виду, что при любом подходе производится выход из X, поэтому прежде чем продолжать, сохраните всю проделанную в сеансе X работу.

    Тестирование и отладка

    Теперь можно входить в систему с удаленного компьютера с помощью VNC-клиента. Большинство дистрибутивов Linux содержат команду vncviewer. так что можно ввести:

    чтобы войти в систему remotename через VNC. Если VNC настроена и работает правильно, результат будет примерно таким, как показано на рисунке 4. Если настроить несколько сеансов VNC через разные порты, можно указать номер сеанса VNC, передав его как часть имени хоста. Введите:

    чтобы войти в сеанс 3 (через порт 5903).

    Рисунок 4. При настройке на работу с XDMCP VNC обеспечивает обычное приглашение Linux

    Если при выполнении этого теста вы не видите экран входа в систему XDMCP, придется произвести отладку. Ниже приведены некоторые рекомендации.

    • Если vncviewer сообщает, что в соединении было отказано, это, скорее всего, означает, что суперсервер на компьютере сервера VNC не настроен должным образом. Проверьте конфигурацию xinetd и попробуйте перезапустить суперсервер. Возможно также, что межсетевой экран блокирует доступ к компьютеру VNC-сервера.
    • Если VNC-клиент запускается и подключается к серверу, но вы видите только серый экран с курсором, который можно перемещать, проблема, скорее всего, в настройке XDMCP-сервера. Проверьте описанные выше параметры и перезапустите XDMCP-сервер.
    • Просмотрите файлы журнала событий, как это обычно делается при отладке. Может потребоваться поиск всех файлов журнала в каталоге /var/log по ссылкам на ваши xinetd. XDMCP-сервер и VNC-сервер.
    Вопросы безопасности VNC

    RFB не является безопасным протоколом; большинство VNC-клиентов и серверов не шифруют свои данные. (VNC шифрует свои собственные пароли, но при описанном здесь подходе эти пароли не используются.) Будьте осторожны при выборе способа и места установки VNC. Если вы хотите использовать VNC в незащищенной сети, возможны три варианта:

    • использовать виртуальную частную сеть (VPN);
    • туннелировать протокол через SSH;
    • использовать вариант VNC, поддерживающий шифрование, такой как TigerVNC с возможностью шифрования Transport Layer Security.

    При включении окон входа VNC, как описано в этой статье, во внешний мир открываются, по крайней мере, два порта (VNC и XDMCP). Оба порта можно ограничить правилами межсетевого экрана, чтобы свести к минимуму риск злоупотреблений. Заметим, что порт XDMCP (UDP 177) должен быть открыт только для localhost, поэтому правило межсетевого экрана для него может быть весьма ограничивающим.

    Заключение

    В целом соединение VNC и XDMCP ? полезный метод обеспечения удаленного входа с графическим интерфейсом пользователя для многопользовательских Linux компьютеров. Этот метод имеет преимущества по сравнению с прямым применением XDMCP в кроссплатформенной среде или при наличии проблем, вызванных межсетевым экраном или NAT. На многопользовательских компьютерах он предпочтительнее более распространенных способов прямого подключения VNC. При использовании этого метода необходимо рассмотреть вопросы безопасности. Будьте готовы настроить правила межсетевого экрана для ограничения нежелательного доступа извне и используйте шифрование, если данные передаются по ненадежной сети.

    Ресурсы Научиться
    • Оригинал статьи
    • Firewall uptime and security with iptables (Alfredo Deza, developerWorks, январь 2012 г.): как настроить межсетевой экран Linux.
    • Lazy Linux: 10 essential tricks for admins (Vallard Benincosa, developerWorks, июль 2008 г.): как туннелировать VNC через SSH (Trick #6).
    • Set up a Linux VPN server by following these 10 steps (James M. Garvin, TechRepublic, февраль 2006 г.): как настроить VPN с помощью инструментария Linux.
    • Speaking UNIX: Working with inetd and xinetd, the Internet "super servers" (Martin Streicher, developerWorks, декабрь 2009 г.): подробнее о суперсерверах.
    • Раздел Open Source портала developerWorks открывает широкий доступ к информации, инструментам и обновлениям проектов, которые помогут вам в разработке технологий с открытым исходным кодом и их использовании с продуктами IBM.
    • Интересные интервью и дискуссии разработчиков программного обеспечения в подкастах портала developerWorks .
    • Следите за developerWorks в Твиттере .
    Получить продукты и технологии
    • TightVNC входит во многие дистрибутивы или доступен для загрузки на Web-сайте TightVNC.
    • TigerVNC представляет собой версию TightVNC, которая содержится в некоторых дистрибутивах и доступна для загрузки на Web-сайте TigerVNC. Примечательна тем, что содержит расширения, поддерживающие защищенные соединения.
    • RealVNC – это компания, основанная некоторыми из разработчиков VNC. Предлагает как бесплатные, так и коммерческие версии VNC собственной реализации.
    Комментарии

    Удаленный доступ в Ubuntu Linux (VNC) - Ubuntu Linux для начинающих

    Удаленный доступ в Ubuntu Linux (VNC)

    В этой статье я подробно расскажу о протоколе VNC, позволяющем удаленно управлять Ubuntu как с другой машины с Ubuntu, так и из Windows, а также управлять Windows из Ubuntu в графическом режиме.

    Настройка Ubuntu для разрешения удаленного доступа

    Здесь все очень просто: сервер и клиент VNC включены в стандартную комплектацию Ubuntu Desktop. На компьютере с Ubuntu, которым мы собираемся управлять, идем в меню "Система - Параметры - Удаленный рабочий стол", и выставляем нужные настройки. В-первую очередь выставим галочку "Позволять другим пользователям видеть ваш рабочий стол", если необходимо позволить им управлять - выставляем вторую галочку также. Внизу на желтом фоне появляется информация о том, как можно подключиться к вашему компьютеру из локальной сети или интернета. Еще один важный момент: не забудьте установить параметры доступа к вашему компьютера, обязаны ли вы будете разрешать каждое входящее подключение, или будете требовать пароль для доступа к компьютеру. Выставлять вариант свободного доступа и без пароля и без разрешений я крайне не рекомендую - все таки время в сети не спокойное =).

    ВНИМАНИЕ! Если вы используете эффекты рабочего стола, то необходимо их ОТКЛЮЧИТЬ на время сеанса удаленного доступа, иначе удаленный доступ либо вообще не будет работать, либо будет дико тормозить.

    После этого мы можем подключаться к нашей машине из Ubuntu или Windows. Для подключения из Ubuntu никаких дополнительных настроек не надо: просто идем в меню "Приложения - Интернет - Просмотр удаленных рабочих столов", нажимаем кнопку "Подключиться" в панели инструментов, выбираем протокол VNC и указываем имя компьютера в локальной сети или его IP-адрес в поле "Узел", внизу есть дополнительные параметры на ваше усмотрение: "Полноэкранный режим", "Только просмотр", "Масштабировать". Можно подключаться.

    Кроме того, можно использовать альтернативные клиенты VNC для Linux, один из которых - gtkvncviewer. Его можно установить командой:

    sudo apt-get install gtkvncviewer

    VNC в Windows. Настройка UltraVNC.

    Для работы с VNC в Windows мы будем пользоваться пакетом UltraVNC. Раньше я пользовался другим пакетом - RealVNC, однако его серверная часть в бесплатной версии не работает под Windows Vista, 2008 и 7, поэтому я буду рассматривать именно UltraVNC, хотя он и более сложен в настройке.

    Если вы используете Windows 2000 или XP, то можете попробовать настроить RealVNC самостоятельно, его можно скачать на официальном сайте: http://realvnc.com/products/free/4.1/download.html .

    UltraVNC скачиваем здесь: http://www.uvnc.com/download/index.html (выбираем самую последнюю версию, затем выбираем версию Full, затем win32 для обычной 32-битной ОС, или X64 - для 64-битной).

    Запускаем установку. На шаге "Select Components" необходимо выбрать тип установки, я не буду останавливаться на этом подробно - опытные пользователи разберутся с этим и сами, я же рекомендую просто выбрать "Full Installation" - полную установку в том случае, если к этой машине будут подключаться. Если нет - выбираем "Viewer only" - только клиентская часть, чтобы иметь возможность подключаться с этого компьютера.

    Если у вас установлена Windows Vista или 7, то установочник также предложит скачать дополнительные не-свободные компоненты, без которых под этими версиями Windows будет немного тормозить изображение и не будет возможности передать нажатия клавиш "ctrl+alt+del". Настоятельно рекомендую установить их, отметив галочку "Download Vista addons files now".

    Далее установочник предлагает установить "Mirror Driver", при использовании которого обновление экрана происходит быстрее, а нагрузка на центральный процессор снижается в несколько раз. Рекомендую его установить, отметив галочку "Download the mirror driver". Следующий шаг особо важный, если вы устанавливаете программу вместе с серверной частью. Выбираем:

    • "Register UltraVNC Server as system service" - зарегистрировать сервер как системную службу. Отмечаем, если хотим чтобы серверная часть запускалась сама при включении компьютера и работала в фоновом режиме.
    • "Start or restart UltraVNC Server" - запустить или перезапустить серверную службу СЕЙЧАС (отмечаем, иначе для запуска службы придется перезапустить компьютер).
    • "Create UltraVNC desktop icons" - создать значки на рабочем столе (на ваше усмотрение).
    • "Associate UltraVNC Viewer with the .vnc file extension" - ассоциировать файлы .vnc с программой (желательно отметить).
    • "UltraVNC Server driver install" - установка драйвера серверной части (отмечаем обязательно).

    После завершения установки с серверной частью, нам предложат сразу же ее настроить. Не буду объяснять все пункты окна настройки - расскажу о самых важных: Раздел "Authentication":

    • "VNC Password" - пароль для подключения (крайне рекомендую указать!).
    • "View-Only Password" - пароль для подключения в режиме просмотра (только наблюдение без управления клавиатурой и мышью, крайне рекомендую указать!).
    • "Remove Aero (Vista)" - отключить эффекты Aero при подключении клиента. Крайне рекомендуется для повышения быстродействия.
    • "Remove Wallpaper for Viewers" - Не показывать обои рабочего стола клиентам. Крайне рекомендуется для повышения быстродействия.
    • "Capture Alpha-Blending" - отображать прозрачности. Не рекомендуется для повышения быстродействия.
    • "Disable Tray Icon" - убрать значек в системной лотке (трее). Таким образом можно скрыть работу сервера.

    "When Last Client Disconnects" - что делать когда все отключаются:

    • "Do Nothing" - ничего не делать
    • "Lock Workstation" - заблокировать экран
    • "Logoff Workstation" - выйти из учетной записи

    Все. Когда сервер настроен - можно к нему подключаться, причем как из Windows, так и из Ubuntu или любой другой системы, где установлен клиент VNC.

    Для подключения к другой машине из Windows используйте ярлык UltraVNC Viewer: здесь нужно ввести IP-адрес или имя компьютера в локальной сети в поле "VNC Sever".

    Также может быть интересна опция "View Only" - просмотр экрана без управления компьютером.

    Вот в-принципе и все. Если честно, в начале написания этой статьи я и сам не ожидал что в голой только что установленной Ubuntu можно так легко и без проблем настроить удаленный доступ к рабочему столу. Как видите, это намного проще аналогичной задачи в Windows. Конечно вы можете возразить мне, сказав что у Windows есть свой собственный протокол удаленного управления рабочим столом RDP, который настраивается ее стандартными средствами - однако тут я с вами не совсем соглашусь. Во-первых RDP нельзя использовать таким же образом как и VNC для таких задач, как "удаленная помощь другу": при подключении к компьютеру удаленно, локального пользователя выкидывает из его учетной записи, или же удаленный пользователь должен работать в отдельной учетной записи. В то время как удаленные пользователи VNC работают с локальным в одном сеансе (не хватает только второго курсора =)), что позволяет демонстрировать выполнение каких-либо задач через сеть. Ну а во-вторых существуют прекрасные клиенты RDP для Linux, например - krdp, зато вот серверов RDP для других систем, отличных от Windows - нет, так что в плане кросс-платформенности решения от Microsoft, как обычно, остались позади.

    О проблемах пишите в комментариях - буду дополнять и исправлять.

    enigman 27.09.2010 в 23:45 #1332
    если хотите провернуть удаленное управление через интернет, то рекомендую обратить внимание на программу Team Viewer. Бесплатна для домашнего использования и кросплетформенна. Можно заходить на удаленный компьютер даже из браузера. В ней не нужно знать IP удаленной машины. Правда для коммерческого использования дороговата.

    Илья 01.11.2010 в 00:37 #1464
    Здравствуй, уважаемый автор!
    Пробовал управлять windows 7 64-bit home premium (лицензия), с установленным Kaspersky Internet Security 2011 из под windows 7 64-bit home basic по локальной сети. Всё шло гладко до тех пор, пока система безопасности не запросила подтверждение на запуск программы. Тут же произошёл обрыв связи и законнектится удалось лишь после исчезновения запроса.
    Ваше мнение, есть ли выход, кроме отключения подтверждения системы безопасности?
    Удачи, и спасибо за статью!
    P.S Хорошо, что есть VNC, денег экономит уйму, ведь windows 7 ultimate стоит не малых денег, а удалённо управлять можно только из под неё и выше.

    netwalk 14.11.2010 в 20:37 #1541
    2 Илья
    можно попробывать добавить исключение в каспера, по идее должно сработать

    2 D3
    тут можно попробывать поработать с DynDNS.com(по free лицензии получаем доступ к 3 доменам) с динамическими ip получаем статический домен и по нему цепляемся.
    реальный ip - выделенный статический адресс, который закупается у провайдера(подробности подключения у них же)

    2 enigman
    Team Viewer хорош, но уд больно тормознутый, но решение очень хорошее(имхо)

    З.Ы. ну в общем то гугл в помощь)

    Николай 24.11.2010 в 14:50 #1580
    Спасибо, описание помогло, ultraVNC настроен и работает. Однако у меня возникает другой вопрос: Как настроить ubuntu, чтобы при инциализации входящего VNC соединения запрашивался логин и пароль? Это необходимо для одновременного удаленного доступа к linux с двух виндовых машин с двумя разными рабочими столами и соответственно с подключением своих домашних каталогов и своих прав доступа.

    Dorote 16.12.2010 в 13:48 #1634
    У меня сеть между двумя компами. KUbuntu и Windows. С kubentu все шикарно подключается, а вот d Window никак не может подключится к серверу 192.168.230.130 (ip Kubuntu). Адрес даже не пингуется. Подключения нет ни по vnc ни по rdp. В чем может быть проблемма?

    Halsver 16.12.2010 в 23:48 #1636
    Всем привет! Большое, просто огромное спасибо автору за помощь. Сам далеко не программист, а так пользователь. И все пытался найти прогу, которой можно было бы управлять компом с Ubuntu из под виндоус 7. Работает отлично. На лтнуксе просто окрыл под пароль доступ, а на винде запустил, не установил, а просто запустил приложение. Прописал адрес и нажал коннект. Все, машина полностью под управлением. Теперь осталось под вопросом а нужен ли на домашнем серваке для закачки и раздачи контента Ubuntu? Но автору большой респект за помощь.

    Laimous13 17.12.2010 в 11:54 #1639
    Уважаемый народ, такой вопрос. Если ПК с Windows работает под роутером, IP роутера 192.168.1.1, соответственно IP компа по DHCP(от роутера) 192.168.1.12. IP компа в локальной сетке к примеру 10.250.95.25 (на роутере прописаны маршруты работает и локалка и VPN) и как бы роутер получает внешний IP к примеру 89.208.5.65. Так вот собственно сам вопрос - управлять ПК надо из под Ubuntu(ПК с ubuntu так же находится и в локалке и в интернете через VPN протокол но без роутера), какой IP надо вводить при попытке подключения через VNC 10.250.95.25 или 89.208.5.65 и вообще работать будет? возможен вариант как-то за роутером админить ПК с Windows?

    Laimous13 19.12.2010 в 12:58 #1641
    порты прокинул, вопрос отпал. админю комп и из винды и из Linux.

    В рубрике "Другие HOW-TO":