Tightvnc восстановить значок в трее. VNC Viewer: как пользоваться, установка и настройки. Скачайте утилиту для удаления TightVNC от российской компании Security Stronghold

  • 08.03.2020
25 ноября 2009 в 13:21

Подключение к удаленному компьютеру по VNC

  • Настройка Linux

Работа с VNC-клиентом. Материал ориентирован на неопытного пользователя.

1. Установка VNC-клиента
2. Подключение VNC-клиента к удаленному компьютеру
3. Отключение VNC-клиента от удаленного компьютера
4. Тюнинг VNC-клиента
5. Частые проблемы

Для работы с удаленным компьютером по VNC на компьютере пользователя нужно запустить программу-клиент (VNC viewer, VNC client). Эта программа передает на удаленный компьютер данные о нажатиях на клавиши и о движениях мыши, сделанных пользователем, и показывает информацию, предназначенную к выводу на экран.

1. Установка VNC-клиента
Для ОС Windows можно бесплатно скачать и инсталлировать VNC-клиент UltraVNC и TightVNC .

Mac OS X начиная с версии 10.5 имеет поддержку VNC-клиента в RemoteDesktop . Для предыдущих версий можно использовать VNC-клиенты JollysFastVNC и .

Для Linux ветви Debian (Ubuntu) VNC-клиент устанавливается из репозитория командой:

Apt-get install vncviewer

Для ветви RedHat (CentOS, Fedora) - командой:

Yum install vnc

Для FreeBSD VNC-клиент (TightVNC) устанавливается из пакетов командой:

Pkg_add -r tightvnc

2. Подключение VNC-клиента к удаленному компьютеру
Для подключения VNC-клиента к удаленному компьютеру требуется указать его IP-адрес или DNS-имя, и номер дисплея (по умолчанию, :0) или номер TCP-порта (по умолчанию, 5900). Если VNC-сервер требует авторизации, то при подключении к нему VNC-клиент запросит пароль. Обратите внимание, что пароль доступа к VNC-серверу не связан с каким-либо аккаунтом (учетной записью пользователя) на удаленном компьютере, а служит только для ограничения доступа к дисплею VNC-сервера.

После установки соединения и открытия экрана, в зависимости от настроек VNC-сервера может потребоваться авторизация пользователя на виртуальном сервере или может быть открыта уже запущенная рабочая сессия какого-либо пользователя.

Так как на компьютере одновременно могут работать несколько VNC-серверов, для их разделения используют параметр номер дисплея . Например, один VNC-сервер может быть запущен на дисплее:0, другой - на дисплее:1. Каждому номеру дисплея соответствует номер TCP-порта, на котором VNC-сервер принимает соединения. Номер порта для дисплея получается прибавлением номера дисплея к базовому номеру порта - 5900. Дисплею:0 соответствует TCP-порт 5900, дисплею:1 - порт 5901.

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

Главный параметр, который влияет на объем передаваемых данных - алгоритм кодирования передаваемой графики. Для уменьшения объема и, соответственно, ускорения работы, рекомендуется использовать алгоритмы Tight, ZLib, ZRLE - по сравнению с несжатыми данными (Raw), они обеспечивают сжатие в десятки раз, заметно нагружая процессор. Эти алгоритмы кодирования обеспечивают комфортную работу даже на каналах со скоростью 256-512 Кбит/сек.

Для сокращения объема передаваемой по сети информации также можно устанавливать высокий уровень сжатия (Compression Level, Compression Value), низкий уровень качества JPEG (JPEG Quality) и включать режим уменьшения количества цветов (-bgr233, Restricted colors). Самый большой эффект из них при заметном снижении качества изображения дает режим уменьшения количества цветов - объем передаваемой информации уменьшается в 1.5-3 раза, соответственно, в 1.5-3 раза ускоряется отображение на экране.

JPEG применяется алгоритмом кодирования Tight для сжатия участков экрана, содержащих фотографии и другие сложные изображения с большим числом цветов. Использование Tight+JPEG сокращает в 2-5 раз объем передаваемых при этом данных. Другие алгоритмы кодирования JPEG не поддерживают.

1. Выпадающего меню «Система -> Параметры»

Объем передаваемых данных и скорость отображения на канале 1 Мбит/сек при открытии выпадающего меню «Система -> Параметры» (на рисунке меню выделено зеленым пунктиром):

5. Частые проблемы
Не удается подключиться к VNC-серверу
Нужно проверить:
  1. есть ли доступ к интернету;
  2. отвечает ли виртуальный сервер на пинги;
  3. запущен ли на виртуальном сервере VNC-сервер;
  4. нет ли по пути файервола, закрывающего доступ к TCP-порту VNC-сервера;
  5. правльно ли указан номер дисплея или TCP-порт VNC-сервера (номер порта = 5900 + номер дисплея).
Медленная работа через достаточно быстрый канал
Если VNC-клиент не может согласовать с VNC-сервером использование алгоритм кодирования графики с компрессией данных, выбирается алгоритм по умолчанию - Raw, который передает данные без сжатия. Также кодирование без сжатия или с низким уровнем сжатия может автоматически выбираться VNC-клиентом при работе через быструю локальную сеть. Данную проблему можно исправить, принудительно указав в настройках VNC-клиента алгоритм кодирования с высоким уровнем сжатия - ZLib, ZRLE, Tight.

Однако, для некоторых сочетаний клиента и сервера такое решение может быть бесполезным из-за ошибок в согласовании алгоритма кодирования. Например, клиент TightVNC с сервером RealVNC часто могут работать только с кодировкой Raw. Решением в этом случае будет смена VNC-клиента или VNC-сервера.

  • Tutorial

Это руководство о том, как настроить noVNC для удалённого доступа к компьютерам на Windows.

Почему noVNC?

- У Windows есть «родное» средство для удалённого доступа - Remote Desktop Connection. Но оно есть не во всех версиях Windows - например нет в Home edition.
- Также существует множество VNC серверов и клиентов для любой версии Windows. Но для их использования нужно ставить VNC клиент. А бывают случаи, когда ставить ничего нельзя (ограничение прав), или нежелательно, чтобы не оставлять следов на чужом компьютере.
- Ещё есть Chrome Remote Desktop, которому на стороне клиента нужно только расширение в браузере. Но у меня был случай, когда протокол Хрома был заблокирован организацией (там почто всё было заблокировано), а noVNC использует обычный HTTP и поэтому работал.

Насколько я знаю, noVNC - единственное средство, которое позволяет подключиться к удалённому компьютеру без установки какого-либо клиента - используется лишь браузер.
Ещё есть SPICE , но для него я не нашёл сервера под Windows.

В результате этого руководства, мы сможем просто открыть линк в браузере, ввести пароль и пользоваться удалённой системой.

Необходимым условием является проброс портов, или белый IP удалённого компьютера. Также можно воспользоваться VNC repeater. Но это уже выходит за рамки этой статьи.

Общая схема

Сначала мы поставим обычный VNC сервер на порт 5900.

Затем поставим noVNC и WebSockify на порт 5901.

Цель, чтобы получилось приблизительно вот так:


Теперь запускаем command prompt с администраторскими правами:


Запускаем WebSockify:

C:\> cd c:\noVNC\websockify c:\noVNC\websockify> websockify.exe 5901 127.0.0.1:5900 --web c:\noVNC\noVNC-master WARNING: no "resource" module, daemonizing support disabled WebSocket server settings: - Listen on:5901 - Flash security policy server - Web server. Web root: c:\noVNC\noVNC-master - No SSL/TLS support (no cert file) - proxying from:5901 to 127.0.0.1:5900
Первый параметр выше - порт на котором noVNC будет слушать: 5901 . Этот порт нужно сделать доступным для клиентов.

Второй параметр - IP и порт, где стоит VNC сервер: 127.0.0.1:5900

Третий параметр --web инструктирует noVNC, чтобы он отдавал содержимое директории c:\noVNC\noVNC-master по HTTP(s). По умолчанию noVNC отдаёт только VNC вебсокет, но этот параметр позволяет иметь и HTTP сервер на этом же порту.

В директории c:\noVNC\noVNC-master переименуйте файл vnc.html в index.html , чтобы он отдавался по умолчанию.

Теперь noVNC клиент должен быть доступен на порту 5901:


Попробуйте также открыть noVNC страницу с другого компьютера/смартфона, чтобы удостовериться, что она доступна снаружи. Если нет - то проверьте:

Что у вас Windows Firewall не блокирует внешние подключения на этот порт,
- что ваш роутер правильно перенаправляет запросы на этот порт на нужный компьютер; если надо гуглите «проброс портов».

Соединяемся (Connect), вводим VNC пароль и видим рабочий стол удалённого компьютера!

Если что-то пошло не так, то ошибки должны показаться в нашей консоли.

Остановить noVNC сервер можно нажав Ctrl-C в консоли. Описанная выше конфигурация работает по HTTP (и по WS).

Добавляем SSL с самоподписанным сертификатом

Добавлять SSL - необязательно. Создать самоподписанный сертификат можно вот так:

Openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem
Для Windows openssl можно взять .

В результате получаем файл self.pem, на который надо указать при старте noVNC:

C:\noVNC\websockify> websockify.exe 5901 127.0.0.1:5900 --web c:\noVNC\noVNC-master --cert=c:\noVNC\self.pem
Теперь у нас работает HTTPS и WSS (WebSocket Secure). Для WSS в настройках (Settings) нужно указать Encrypt. Интересно, что noVNC использует один и тот же порт для HTTP и HTTPS - он «умеет» различать запросы и правильно отвечать.

Так как сертификат самоподписанный, то в браузере нужно будет принять этот сертификат.

Let"s Encrypt

У меня нет инструкций о том, как настроить систему, чтобы Let"s Encrypt автоматически генерировал сертификат специально для нашей системы. Для этого потребовалось бы, чтобы noVNC работал на порту 80, что конечно же возможно, но может быть неудобно, и найти способ интегрировать certbot, чтобы эти файлы публиковались в нужную директорию. Думаю, что это возможно, но я этого не сделал. Если вы допилите - поделитесь в комментариях.

В моём случае, у меня уже есть домашний сервачок с NGINX и DDNS именем, который настроен автоматически получать сертификат от Lets Encrypt.

Вы можете запустить что-то похожее у себя. есть инструкции о настройке Let"s Encrypt для Linux и Windows.

Поэтому для noVNC я просто использую уже существующие pem -файлы, сгенерированные для nginx .

Let"s Encrypt создаёт следующие файлы:

Cert.pem: Your domain"s certificate chain.pem: The Let"s Encrypt chain certificate fullchain.pem: cert.pem and chain.pem combined privkey.pem: Your certificate"s private key
На Ubuntu их можно найте по вот такому пути: /etc/letsencrypt/live/your_domain_name

Нужно скопировать (объединить) fullchain.pem и privkey.pem в один файл, например назовём его encrypt.pem , и этот файл мы будем использовать для noVNC .

Конечно, работать это будет только если nginx сервер и noVNC - на одном домене. Порты могут быть разными.

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

Добавляем noVNC, как Windows-сервис

Загружаем zip-архив , и распаковываем файлы оттуда так, чтобы они лежали в той же папке, где и файл websockify.exe , то есть в нашем случае в c:\noVNC\websockify .

При запуске, сервис будет использовать параметры из файла noVNCConfig.ini . Вот пример моего конфига:

5901 127.0.0.1:5900 --web C:\noVNC\noVNC-master --cert=c:\noVNC\encrypt.pem
В консоли, запущенной с администраторскими привилегиями создаём новый сервис:

Sc create "noVNC Websocket Server" binPath= "c:\noVNC\websockify\noVNC Websocket Service.exe" DisplayName= "noVNC Websocket Server"
Если нужно будет удалить сервис, то вот так:

Sc delete "noVNC Websocket Server"
Открываем сервисы (Control Panel → Administrative Tools → Services) и запускаем noVNC Websocket Server. Также здесь можно настроить, чтобы сервис стартовал каждый раз вместе с Windows:

Известные недоработки

Раскладка клавиатуры

Я обнаружил, что русская раскладка клавиатуры работает довольно необычным образом:
Если у клиента выбран русский язык, то на удалённый компьютер нажатия клавиш не передаются вообще.remote desktop Добавить метки

TightVNC runs basically on any version of Windows (both 32-bit and 64-bit systems are supported):

  • Windows XP / Vista / 7 / 8 / 8.1 / 10,
  • corresponding versions of Windows Server.

On Windows XP, you should have the latest Service Pack installed. Windows CE systems are not supported.

There are no minimum disk space or RAM requirements. TightVNC uses so little space and memory that it can run anywhere Windows is running.

Previous TightVNC version 1.2 and 1.3 have some limitations, however. It is not possible to use TightVNC Server as a system service on Windows Vista / Windows 7 in this case.

How would I connect from the Internet to a machine in the internal network which is behind a router?

You should enable "port forwarding" in your router"s configuration. Port forwarding allows passing external connections to computers in the internal network. Almost all routers support this type of redirection.

For example, to access VNC or TightVNC server running on default ports, a router can be configured such way that TCP connections to ports 5900 and 5800 would be passed to the same ports of a particular machine with a specified private IP address (typically 192.168.x.x).

Here is an example of configuring port forwarding, assuming that TightVNC Server is running on default ports 5900 and 5800, on the machine with IP 192.168.1.100:

Application Start
Port
End
Port
Protocol IP Address Enable
TightVNC 5900 5900 TCP 192.168.1.100 yes
TightVNC 5800 5800 TCP 192.168.1.100 yes

When port forwarding is set up, you can connect to the router"s IP address such way as if it was your target machine"s IP address, but you should specify those port numbers on which port forwarding was activated.

Answer for TightVNC versions 2.x:

Open TightVNC configuration, choose Server tab, uncheck "Show icon in the notification area", press Ok.

To show the icon again, use one of Control Interface or Offline Configuration shortcuts found under the TightVNC group under Start\All Programs.

Does TightVNC work on Mac OS X?

Currently, we do not offer a version for Mac OS X. It"s very likely that TightVNC will include one in the future, but not in the nearest days. Currently, our team is busy working on the Windows version.

If you need viewer part on Mac OS X, try TightVNC Java Viewer. It"s cross-platform and should work fine in any system where Java environment can be installed, including MacOS X.

Also note that recent versions of Mac OS X include built-in VNC-compatible server which is compatible with TightVNC as well. In other words, you can connect to any modern Mac OS X system with TightVNC Viewer.

How do I uninstall TightVNC?

Normally, TightVNC can be removed just like any other software, from the Control Panel (Add/Remove Programs). But if something goes wrong, or TightVNC was installed manually, you can always remove it manually using step-by-step procedures below.

Uninstall procedure for TightVNC versions 1.x:

  1. If TightVNC Server is running, close it. If it is running but not showing the tray icon, choose Process Manages, locate WinVNC.exe process and shutdown it.
  2. If TightVNC Server was registered as a system service, unregister it. To do that, locate WinVNC.exe file under \Program Files\TightVNC (or wherever TightVNC was installed), and type in the command line: WinVNC.exe -remove
  3. Remove the settings from the registry if desired. The settings can be found in HKEY_LOCAL_MACHINE\Software\ORL and/or HKEY_CURRENT_USER\Software\ORL.

Uninstall procedure for TightVNC versions 2.x:

  1. Log in as an Administrator (or as a user with similar permissions).
  2. If TightVNC Server is running, close it. If it is running but not showing the tray icon, choose Process Manages, locate all tvnserver.exe process and shutdown each one of them.
  3. If TightVNC Server was registered as a system service, unregister it. To do that, locate tvnserver.exe file under \Program Files\TightVNC (or wherever TightVNC was installed), and type in the command line: tvnserver.exe -remove
  4. Remove the whole \Program Files\TightVNC directory (or wherever TightVNC was installed).
  5. Remove all TightVNC shortcuts from the Start\All Programs menu.
  6. Remove the settings from the registry if desired. The settings can be found in HKEY_LOCAL_MACHINE\Software\TightVNC and/or HKEY_CURRENT_USER\Software\TightVNC

Проверяем установлен ли tightvncserver

на хосте к которому будем удаленно подключаться:

Dpkg -l | grep vnc

пакет установлен увидим:

Ii tightvncserver 1.3.9-6.4 amd64 virtual network computing server software

Установим Tightvncserver

если нет, установим его:

Sudo apt-get install tightvncserver

Запускаем tightvncserver

(дополнительные ключи запуска ищите в интернете):

Tightvncserver:1 -geometry 1024x768 -dpi 96 -nolisten tcp

где
:1 - номер дисплея, который будет доступен по порту 5901
-geometry 1024x768 - разрешение дисплея
-dpi 96 - Dots per inch
будет запрошен пароль (с подтверждением, нужно ввести два раза) и запрос на необходимость ввода пароля на режим "только просмотр", сразу же после этого можно подключиться к дисплею. К примеру из под Windows запустив программу Tightvnc Viewer , и введя

Ipaddress:5901

где ipaddress - айпшник хоста, к которому подключаемся
5901 - порт, на котором доступен дислпей 1, можно в TightVNC Viewer для Windows вводить ipaddress:1

Выведем список запущенных дисплеев

ps aux | grep vnc

Останавливаем дисплей

№1 командой

Tightvncserver -kill:1

Установим постоянный пароль для доступа к дисплею

Поскольку дисплей всегда запускается от имени какого либо пользователя, установми пароль для пользователя NameUser, от имени которого мы будем запускать дисплей в автозагрузке (см. далее)

залогинемся под пользователем от имени которого будем запускать дисплей, введя команду и пароль (интересно что su расшифровывается как switch user, а не как super user как многие считают)

Su NameUser

введем команду для задания пароля, его необходимо будет ввести два раза и указать необходим ли пароль для режима "только чтение"

Tightvncpasswd

пароль записывается в файл

/home/NameUser/.vnc/passwd

удалив этот файл, сбрасывается пароль

Настраиваем отображение дисплея при запуске

Сделаем бекап файла настройки дисплея

Sudo cp /home/NameUser/.vnc/xstartup /home/NameUser/.vnc/xstartup.default

заменим содержимое файла дисплея xstartup на

#!/bin/sh def export XKL_XMODMAP_DISABLE=1 unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS gnome-panel & gnome-settings-daemon & metacity & nautilus & gnome-terminal & Можно добавлять запускаемы программы при старте дислпея через символ &

Можно запустить другой оконный менеджер (он разумеется должен быть установлен, в данном примере запускаеться Gnome), а так же еще много что интересного...

Добавим tightvncserver в автозагрузку

создадим скрипт автозапуска для этого перейдем в папку

Cd /etc/init.d/

Или создадаем файл скрипта с именем vncserver

Touch vncserver

вставляя в файл следующий текст

Содержимое файла

#!/bin/sh -e
### BEGIN INIT INFO
# Provides: vncserver
# Required-Start: networking
# Default-Start: 3 4 5
# Default-Stop: 0 6
### END INIT INFO

PATH="$PATH:/usr/X11R6/bin/"

# The Username:Group that will run VNC
export USER="NameUser"
#${RUNAS}

# The display that VNC will use
DISPLAY="1"

# Color depth (between 8 and 32)
DEPTH="16"

# The Desktop geometry to use.
#GEOMETRY="x"
#GEOMETRY="800x600"
GEOMETRY="1024x768"
#GEOMETRY="1280x1024"

# The name that the VNC Desktop will have.
NAME="my-vnc-server"

OPTIONS="-name ${NAME} -depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY}"

. /lib/lsb/init-functions

case "$1" in
start)
log_action_begin_msg "Starting vncserver for user "${USER}" on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"
;;

stop)
log_action_begin_msg "Stoping vncserver for user "${USER}" on localhost:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver -kill:${DISPLAY}"
;;

restart)
$0 stop
$0 start
;;
esac

Или копируем его с сайта командой

Wget http://сайт/vncserver

Выставим на него права

для добавления в автозагрузку выполняем команду

Update-rc.d vncserver defaults

для запуска без перезагрузки и вообще запуска и остановки tightvncserver с параметрами указаными в скрипте используйте команды соответветсвенно

/etc/init.d/vncserver start /etc/init.d/vncserver stop

Джек Уоллен (Jack Wallen) рассказывает, как использовать TightVNC для удаленного и наоборот при кроссплатформенном администрировании.

С точки зрения администратора, одной из самых важных функций системы является возможность удаленного обслуживания. Инструменты для выполнения этой задачи имеются практически в любой ОС, но что делать, если удаленное администрирование требуется в кроссплатформенной среде? Протокол удаленного рабочего стола в таком случае не вариант. Чтобы подключиться к Windows с компьютера под управлением Linux, лучше всего использовать VNC (Virtual Network Computing), а точнее, TightVNC.

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

Подключение из Linux к Windows

Установить TightVNC в Windows очень просто. Достаточно загрузить подходящую версию установщика с сайта TightVNC, запустить файл двойным щелчком и следовать указаниям мастера. А вот дальше все немного сложнее.

Чтобы к компьютеру можно было подключиться, нужно для начала настроить и запустить на нем сервер TightVNC. Для этого найдите в меню «Пуск | Все программы» (Start | All Programs) папку «TightVNC | TightVNC Server (Application Mode)», а в ней запустите средство «TightVNC Server - Offline Configuration». В появившемся окне откройте вкладку «Server» (рис. A) и настройте сервер TightVNC в соответствии со своими потребностями.

Рисунок A. Для входящих соединений необходимо установить пароль, и он не может быть пустым.

Как минимум нужно установить пароль для входящих соединений. После этого можно запустить сервер. Для этого воспользуйтесь ярлыком «Run TightVNC Server» в той же папке. Никаких окон при этом не откроется - вместо этого в фоновом режиме будет запущен демон TightVNC.

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

Если вы не знаете, какой VNC-клиент выбрать, я рекомендую Vinagre - простое и удобное приложение для рабочей среды GNOME.

Подключение из Windows к Linux

Подключиться из Windows к Linux немного проще (см. ). Я объясню, как настроить подключение на компьютере под управлением Ubuntu 10.10. Для начала нужно установить tightvncserver.

1. Запустите Центр приложений Ubuntu (Ubuntu Software Center).
2. Введите в строке поиска «tightvncserver» (без кавычек).
3. Выделите tightvncserver и нажмите кнопку «Установить» (Install).
4. Введите пароль к учетной записи root.

После установки нужно настроить сервер. Для этого:

1. Откройте терминал.
2. Выполните команду tightvncserver.
3. Введите пароль.
4. При необходимости задайте пароль для просмотра.

Теперь к этому компьютеру можно подключиться с помощью приложения TightVNC Viewer из Windows. Вызовите его из меню «Пуск | Все программы | TightVNC | TightVNC Viewer» и введите в появившемся окне IP-адрес компьютера под управлением Linux с указанием порта 5901 в формате «192.168.100.21:5901». Если номер порта не указать, TightVNC Viewer попытается подключиться к порту 5900, и соединение установить не удастся.

При подключении потребуется указать пароль, который вы задали при запуске сервера на компьютере под управлением Linux. После успешной авторизации будет установлено соединение (рис. B).


Рисунок B. Подключение к tightvncserver с помощью TightVNC Viewer позволяет осуществлять удаленное администрирование компьютера под управлением Linux из Windows.

В заключение

Существует масса способов подключиться к удаленному компьютеру, но наличие универсального кроссплатформенного решения типа TightVNC значительно облегчает эту задачу. А какими средствами для удаленного подключения пользуетесь вы? Используете ли вы VNC, RDP или стороннее программное обеспечение типа Logmein? Поделитесь своим опытом в комментариях!