mmaxsim.ucoz.ua
Меню сайта
Категории раздела
Ubuntu [69]
Ubuntu
DLE [7]
баги. фиксы и тд
Windows [6]
eyeOS [3]
FreeBSD [5]
FreeBSD
Linux [0]
VMware ESXi [7]
Amazon kindle [0]
Debian [4]
Trimax TR-2012HD [1]
Статистика

Онлайн всего: 3
Гостей: 3
Пользователей: 0
Главная » 2010 » Декабрь » 5 » Удаленный доступ к рабочему столу между Ubuntu/Linux и Windows
13:04
Удаленный доступ к рабочему столу между Ubuntu/Linux и Windows

Удаленный доступ к рабочему столу между Ubuntu/Linux и Windows


Вы используете как Windows, так и Linux? Можете ли вы удаленно управлять Windows из Linux (Ubuntu либо другого дистрибутива) или Linux из Windows? Несомненно, можете. Подобно тому, как используется Подключение к удаленному рабочему столу между платформами Microsoft (или удаленное управление между машинами с Linux), возможно и управление рабочим столом из разных платформ. Вы можете щелкать мышью на рабочем столе и запускать приложения, точно так же, как если бы вы сидели прямо перед компьютером.

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

Выбор протокола удаленного рабочего стола

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

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


Платформа
Протокол
Клиент
Сервер
Windows Home Edition
RDP
X
Windows XP Professional
RDP
X
X
Windows Vista Home Basic & Premium
RDP
X
Windows Vista Business & Ultimate
RDP
X
X
Most Linux Distros
VNC
X
X

Обратите внимание:

  • Удаленный рабочий стол VNC обычно медленнее, чем RDP соединения, тем не менее, VNC обычно легче реализовать на различных платформах.
  • Для лучшей производительности и безопасности, вы можете использовать свободный сервер и клиентов NoMachine's NX или сервер и клиентов FreeNX, но он более сложный в настройке, здесь требуется думать.
  • Возможно также, обеспечить поддержку RDP соединений на машинах с Linux, например, используя xrdp сервер.

Открытие брандмауэра (межсетевого экрана)


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

В Windows, при старте сервера, вы должны получить запрос на Блокирование или Разрешение доступа к сети приложению сервера удаленного рабочего стола. Если нажать кнопку "Разрешить", все должно заработать. Если вы не получили запрос, то можете зайти в свойства брандмауэра Windows и добавить разрешение для этого приложения вручную, используя номера портов, указанных ниже.

В Linux, вам, скорее всего, необходимо будет вручную добавить правила для входящих соединений в брандмауэре, на компьютере принимающем запросы на подключение. Если необходимо, вы можете вызвать из меню браузер и поискать в Google информацию о том, как настроить брандмауэр. Ваш дистрибутив Linux может включать GUI (графический интерфейс пользователя) для вашего брандмауэра или вы можете использовать командную строку для его настройки. Таким же образом добавьте исключение или правило для того, чтобы разрешить трафик на соответствующих портах, перечисленных ниже.

  • RDP использует TCP порт 3389
  • VNC использует порты, начиная с 5900 (каждое удаленное соединение к серверу использует разные порты; дисплей 1 использует порт 5901, дисплей 2 использует порт 5902, и т. д.). Лучшим методом, поэтому, будет определение области портов (таких как 5900 - 5905), когда вы создаете правило брандмауэра или исключения.

Теперь вы имеете возможность удаленно подключаться к компьютерам в вашей локальной сети. Для удаленного соединения через Интернет вы должны также, настроить ваш маршрутизатор. Мы обсудим это в следующей части.


Использование VNC сервера и клиента в Ubuntu

Если вы используете Ububntu, то вы уже имеете установленные и готовые к использованию клиент и сервер VNC. (Эта статья базируется на дистрибутиве Ubuntu Desktop 8.10 Intrepid Ibex.) Для того, чтобы иметь возможность принимать удаленные соединения, просто выберете в меню Система > Свойства > Удаленный рабочий стол. В диалоговом окне настройте желаемые ресурсы общего пользования и параметры безопасности. Список команда/адрес представлен вам для указания других компьютеров в локальной сети с установленным Ubuntu или другим дистрибутивом Linux, с которых будет производиться подключение.

Для использования VNC вьюера (просмотрщика) на Ubuntu, выберите Приложения > Служебные > Терминал. Если вы подключаетесь к компьютеру, на котором установлен Ubuntu, наберите команду предлагаемую Ubuntu. Если производится подключение к компьютеру, на котором установлен другой дистрибутив Linux, применяется следующий формат команды:

$ vncviewer Имя_Компьютера_или_IP_адрес:#

так как показано на рисунке 1. Эта строка содержит команду, vncviewer, за которой следует имя или IP адрес компьютера (или Internet IP, если подключение производится через web), оканчиваясь двоеточием и ID (идентификатором) дисплея (туннеля). Если производится подключение к компьютеру, на котором установлен Windows, то двоеточие и номер дисплея не указываются, в этом случае формат команды следующий:

$ vncviewer ИмяКомпьютера_или_IP_адрес

SECURITY SERVICE - безопасное решение. Информационная безопасность.

рисунок 1


Установка VNC Клиента и Сервера на другие дистрибутивы Linux

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

Сервер TightVNC/RealVNC не имеет графического интерфейса, вы должны использовать командную строку, но не беспокойтесь - это легко. Просто откройте Терминал, наберите vncserver и нажмите Enter. При первом запуске вам будет предложено создать пароль для VNC соединений. После того, как вы установили пароль, будет автоматически настроен дисплей или туннель, как показано на рисунке 2.

SECURITY SERVICE - безопасное решение. Информационная безопасность.

рисунок 2

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

Ниже даны различные опции команды vncserver, которые полезно запомнить:

  • Для получения помощи используйте опцию -help или введите команду man vncserver.
  • Используя опцию -name desiredname вы можете назначить имя определенному туннелю или дисплею, которое отображается в строке заголовка VNC клиента, когда производится удаленное подключение к этому дисплею.
  • Поправка :# позволяет вам вручную определить номер туннеля или дисплея.
  • Используя опцию -geometry WxH вы можете установить ширину и высоту экрана для отображения удаленного рабочего стола.
  • Добавив -depth # вы можете установить глубину цвета от 8 до 32 бит на пиксель.
  • Для закрытия VNC туннеля используйте опцию -kill :#, заменив значок решетки желаемым идентификатором туннеля (дисплея).

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

Для графического интерфейса вы можете, как правило, настроить опции из диалогового окна. Когда подключаетесь к машине с дистрибутивом Linux, наберите имя компьютера или IP адрес удаленной машины (или Internet IP когда подключаетесь через web), затем двоеточие, ID туннеля или дисплея и нажмите Enter. Например, ericlinuxbox:1 или 192.168.0.122:1. Если подключаетесь к машине с Windows, двоеточие и номер дисплея не требуется. Для подключения из терминала, введите vncviewer и информацию об узле, таким же образом как показано на рисунке 1 ранее.

Установка VNC клиента/сервера в Windows

TightVNC также предлагает клиента и сервер в версии для Windows на его странице для скачивания. После установки TightVNC вы можете запустить сервер из меню Пуск (прим. переводчика: Пуск > Все Программы > TightVNC), выбрав Запустить TightVNC сервер. При этом появится диалоговое окно свойств (см. рисунок 3), где вы должны назначить пароль для входящих сессий.

SECURITY SERVICE - безопасное решение. Информационная безопасность.

рисунок 3

После проверки всех установок нажмите ОК. Сервер будет запущен и готов к приему входящих соединений, одновременно в системном трее появится иконка сервера. Еще раз напомню, не используйте двоеточие и номер дисплея, когда подключаетесь к компьютеру с Windows из любой платформы.

Если вы подключаетесь к удаленному компьютеру из Windows, выберите ярлык TightVNC Вьюер из стартового меню. Подобным образом, для подключения из других платформ, введите имя или IP адрес удаленного компьютера (или Internet IP адрес, когда подключаетесь через web), и когда подключаетесь к компьютеру с Linux включите в команду двоеточие и номер дисплея.

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

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

Перед тем, как вы сможете удаленно подключиться к вашему компьютеру из другого местоположения через Интернет, необходимо правильно настроить маршрутизатор. Маршрутизатор выступает в роли распределителя вашего сетевого трафика. Если вы не укажете на нем куда перенаправлять трафик удаленного рабочего стола, ничего не будет происходить и ваше удаленное подключение не будет работать. Таким образом, вы должны создать перенаправление портов или запись виртуального сервера для соответствующих портов к IP адресам желаемого компьютера. В дальнейшем, когда входящий трафик будет поступать из Интернета на эти порты, ваш маршрутизатор будет перенаправлять его на компьютер и сервер удаленного рабочего стола будет отвечать.

В зависимости от вашего протокола, используйте один из следующих портов (или области портов):

  • RDP использует TCP порт 3389.
  • VNC использует порты начиная с 5900 (каждое удаленное соединение к серверу использует отдельный порт; дисплей 1 использует порт 5901, дисплей 2 использует порт 5902, и т.д.). Лучше всего, поэтому, будет определить области портов (таких как 5900 - 5905), когда вы создаете перенаправление или запись для виртуального сервера.

Для того, чтобы настроить маршрутизатор, вы можете использовать его веб-интерфейс, введя в адресной строке браузера его IP адрес. Затем необходимо перейти на страницу Виртуальные серверы или Перенаправление портов. Возможно, имя записи уже имеется, тогда его можно выбрать из выпадающего списка, а если нет - можно вручную ввести IP адрес компьютера, кроме того, необходимо ввести частный и публичный порт (оба одинаковые) или область портов и нажать кнопку Сохранить.

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

Если имеется множество компьютеров, которыми вы хотите управлять удаленно через Интернет с использованием VNC, то вам необходимо создать отдельную запись для каждого компьютера. Убедитесь, что каждый компьютер использует свой порт, который представлен номером дисплея или туннеля, когда вы запускаете команду vncserver, например, в Linux. Так же необходимо убедиться, что каждая запись перенаправляется на другой IP адрес.

Безопасность VNC соединений

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

Один из путей создания безопасного туннеля между клиентом и сервером для пропуска в нем VNC трафика, это установка Secure Shell (SSH) соединения между ними. Для этого вы должны установить SSH сервер на компьютеры, к которым вы хотите организовать удаленный доступ, и SSH клиентов на компьютеры, с которых вы будете выполнять удаленное подключение. В некоторых случаях вы можете установить и сервер и клиента вместе, на каждом компьютере. На компьютерах под управлением Windows вы можете скачать и установить freeSSHd для сервера и PuTTY для клиента (оба имеют графический интерфейс). Для машин под управлением Linux, попробуйте использовать OpenSSH.

Перед тем, как вы попытаетесь установить SSH соединение, убедитесь, что маршрутизатор настроен для перенаправления трафика и межсетевой экран разрешает его. Для SSH по умолчанию используется 22 порт TCP. Если производится подключение через Интернет, настройте перенаправление портов или запись виртуального сервера (подобно тому как обсуждалось ранее для VNC трафика) для этого порта на маршрутизаторе, к которому подключен принимающий соединение компьютер. Откройте порты на клиентском и серверном компьютере как обсуждалось выше.

После установки SSH сервера создайте частный и публичный ключи и поместите их в правильное местоположение. Для SSH серверов на Linux используйте инструмент OpenSSH для создания ключей. Для компьютеров с Windows вы можете использовать PuTTygen. Для подключения из Windows к Linux запустите PuTTy, перейдите к настройкам SSH туннеля и введите порт VNC, который вы хотите использовать, базируясь на номере дисплея. Затем, в настройках Сессии введите IP адрес машины Linux и нажмите Открыть. На машинах Linux, для создания туннеля, используйте OpenSSH клиент, подключаясь по IP адресу удаленного компьютера. После установки SSH туннеля запустите VNC Вьюер так, как описывалось выше, но взамен IP адреса удаленного компьютера введите localhost.

Поддержка "родного" Х дисплея

Теперь, как вы понимаете, VNC соединения по умолчанию используют другой Х дисплей, не используя при этом "родной" дисплей удаленного компьютера (тот дисплей, который физически подключен к удаленному компьютеру). Это может быть достаточно неприятно, если вы работали за компьютером перед тем, как к нему произвели удаленное подключение, и вы хотели бы продолжить работу с теми приложениями, которые запустили на самОм удаленном компьютере. В данном случае, Один из легчайших способов осуществить это - использовать x0vncserver взамен vncserver. Этот вопрос мы обсудим чуть ниже. Другая опция, более объемная, но обеспечивающая лучшую производительность - это использование vnc.so модуля.

Как было отмечено выше, один из простейших путей удаленного подключения к "родному" дисплею - это использование x0vncserver взамен vncserver. В терминале вы можете ввести x0vncserver password = ВАШПАРОЛЬ SecurityType=none. При этом будет запущен прием удаленных соединений на дисплей 0, защищенных паролем, который вы выбрали. Для установки соединения используйте VNC вьюер таким же образом, как обсуждалось в предыдущей части, но здесь есть одно отличие - не нужно вводить номер дисплея после ввода IP адреса.

Получение справки

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

Для получения документации о компонентах Linux вспомните, что вы можете использовать страницы документации, запустив в терминале следующие команды:

  • man vncserver
  • man vncviewer
  • man x0vncserver

Так же не забудьте посмотреть FAQ и страницу поддержки на веб-сайте соответствующего разработчика.

Автор: Eric Geier
Перевод: Коваленко А.М
Источник



Категория: Ubuntu | Просмотров: 6200 | Добавил: Maxs | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Поиск
Календарь
«  Декабрь 2010  »
ПнВтСрЧтПтСбВс
  12345
6789101112
13141516171819
20212223242526
2728293031
Архив записей
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright MyCorp © 2024