Другие имена | Терминальные службы |
---|---|
Разработчики) | Microsoft |
Операционная система | Майкрософт Виндоус |
Наименование услуги | TermService |
Тип | Программное обеспечение удаленного рабочего стола |
Веб-сайт | документы |
Службы удаленных рабочих столов ( RDS ), известные как службы терминалов в Windows Server 2008 и более ранних версиях [1], являются одним из компонентов Microsoft Windows, которые позволяют пользователю управлять удаленным компьютером или виртуальной машиной через сетевое соединение. RDS - это реализация Microsoft архитектуры тонких клиентов , в которой программное обеспечение Windows и весь рабочий стол компьютера, на котором запущена RDS, доступны для любого удаленного клиентского компьютера, поддерживающего протокол удаленного рабочего стола (RDP). Пользовательские интерфейсыотображаются с сервера на клиентскую систему, а входные данные от клиентской системы передаются на сервер, где происходит выполнение программного обеспечения. [2] Это контрастирует с системами потоковой передачи приложений , такими как Microsoft App-V , в которых компьютерные программы передаются клиенту по запросу и выполняются на клиентском компьютере.
RemoteFX был добавлен в RDS как часть Windows Server 2008 R2 Service Pack 1.
Впервые RDS был выпущен как сервер терминалов в Windows NT 4.0 Terminal Server Edition , автономном выпуске Windows NT 4.0, который включал пакет обновления 3 и исправления. Начиная с Windows 2000 , он был интегрирован под названием Terminal Services в качестве дополнительного компонента в серверных выпусках семейства операционных систем Windows NT [3], получая обновления и улучшения с каждой версией Windows. [4] Службы терминалов были затем переименованы в службы удаленных рабочих столов с Windows Server 2008 R2 [5] в 2009 году.
Windows включает три клиентских компонента, использующих RDS:
Первые две - это отдельные утилиты, которые позволяют пользователю управлять удаленным компьютером по сети. В случае удаленного помощника удаленный пользователь должен получить приглашение, и управление осуществляется совместно. Однако в случае RDC удаленный пользователь открывает новый сеанс на удаленном компьютере и имеет все возможности, предоставленные правами и ограничениями его учетной записи. [2] [6] [7] Быстрое переключение пользователей позволяет пользователям переключаться между учетными записями пользователей на локальном компьютере без выхода из программного обеспечения и выхода из системы. Быстрое переключение пользователей является частью Winlogon и использует RDS для выполнения своей функции переключения. [8] [9] Сторонние разработчики также создали клиентское программное обеспечение для RDS. Например, rdesktopподдерживает платформы Unix .
Хотя RDS поставляется с большинством выпусков всех версий Windows NT, начиная с Windows 2000 [3], его функциональные возможности различаются в каждой версии. Windows XP Home Edition вообще не принимает RDC-подключения, оставляя RDS только для быстрого переключения пользователей и удаленного помощника. Другие клиентские версии Windows позволяют подключаться к системе максимум одному удаленному пользователю за счет отключения пользователя, выполнившего вход в консоль. Windows Server позволяет двум пользователям подключаться одновременно. Эта схема лицензирования, называемая «Удаленный рабочий стол для администрирования», упрощает администрирование необслуживаемых или автономных компьютеров.. Только после приобретения дополнительных лицензий (помимо лицензии Windows) компьютер под управлением Windows Server может одновременно обслуживать нескольких удаленных пользователей и создавать инфраструктуру виртуальных рабочих столов . [5] [8]
Для организации RDS позволяет ИТ-отделу устанавливать приложения на центральный сервер, а не на несколько компьютеров. [10] Удаленные пользователи могут войти в систему и использовать эти приложения по сети. Такая централизация может упростить обслуживание и устранение неисправностей. Системы проверки подлинности RDS и Windows предотвращают несанкционированный доступ пользователей к приложениям или данным.
Microsoft имеет давнее соглашение с Citrix для облегчения обмена технологиями и лицензирования патентов между Microsoft Terminal Services и Citrix XenApp (ранее Citrix MetaFrame и Citrix Presentation Server ). В этом случае Citrix получает доступ к ключевому исходному коду платформы Windows, что позволяет его разработчикам повысить безопасность и производительность платформы служб терминалов. В конце декабря 2004 года обе компании объявили о пятилетнем продлении этого соглашения на Windows Vista . [11]
Ключевым серверным компонентом RDS является сервер терминалов ( termdd.sys
), который прослушивает порт TCP 3389. Когда клиент протокола удаленного рабочего стола (RDP) подключается к этому порту, он помечается уникальным идентификатором сеанса и связывается с только что созданным сеансом консоли (сеанс 0, только клавиатура, мышь и интерфейс в символьном режиме). Затем запускается подсистема входа в систему (winlogon.exe) и графическая подсистема GDI , которая выполняет задачу аутентификации пользователя и представления графического интерфейса пользователя. Эти исполняемые файлы загружаются в новом сеансе, а не в сеансе консоли. При создании нового сеанса драйверы графики и клавиатуры / мыши заменяются драйверами для RDP: RdpDD.sys
и RdpWD.sys
. ВRdpDD.sys
- это драйвер устройства, который захватывает вызовы визуализации пользовательского интерфейса в формате, который может передаваться по RDP. RdpWD.sys
действует как драйвер клавиатуры и мыши; он получает ввод с клавиатуры и мыши по TCP-соединению и представляет их как ввод с клавиатуры или мыши. Он также позволяет создавать виртуальные каналы., которые позволяют перенаправлять другие устройства, такие как диски, аудио, принтеры и COM-порты, т. е. каналы действуют как замена для этих устройств. Каналы подключаются к клиенту через TCP-соединение; когда к каналам осуществляется доступ для данных, клиент информируется о запросе, который затем передается по TCP-соединению в приложение. Вся эта процедура выполняется терминальным сервером и клиентом, при этом RDP обеспечивает правильную передачу и полностью прозрачна для приложений. [12] Связь по протоколу RDP зашифрована с использованием 128-битного шифрования RC4 . Начиная с Windows Server 2003, он может использовать схемы шифрования, соответствующие FIPS 140 . [2]
Как только клиент инициирует соединение и получает информацию об успешном вызове стека терминальных служб на сервере, он загружает устройство, а также драйверы клавиатуры / мыши. Данные пользовательского интерфейса, полученные по RDP, декодируются и отображаются как пользовательский интерфейс, тогда как ввод с клавиатуры и мыши в окно, в котором находится пользовательский интерфейс, перехватывается драйверами и передается по RDP на сервер. Он также создает другие виртуальные каналы и настраивает перенаправление. Связь RDP может быть зашифрована; с использованием низкого, среднего или высокого уровня шифрования. При низком уровне шифрования вводимые пользователем данные (исходящие данные) шифруются с использованием слабого (40-битного RC4) шифра. При среднем шифровании пакеты UI (входящие данные) также шифруются с использованием этого слабого шифра. Параметр «Высокий уровень шифрования (без экспорта)» использует 128-битное шифрование RC4 и «Высокий уровень шифрования (экспорт)».использует 40-битное шифрование RC4.[13]
Сервер терминалов - это серверный компонент служб терминалов. Он выполняет работу по аутентификации клиентов, а также делает приложения доступными удаленно. На него также возложена работа по ограничению клиентов в соответствии с уровнем доступа, который у них есть. Сервер терминалов соблюдает настроенные политики ограниченного использования программного обеспечения, чтобы ограничить доступность определенного программного обеспечения только для определенной группы пользователей. Информация об удаленном сеансе хранится в специализированных каталогах, называемых каталогом сеансов, который хранится на сервере. Каталоги сеансов используются для хранения информации о состоянии сеанса и могут использоваться для возобновления прерванных сеансов. Терминальный сервер также должен управлять этими каталогами. Терминальные серверы можно использовать в кластеретакже. [2]
В Windows Server 2008 он был значительно переработан. Во время входа в систему, если пользователь вошел в локальную систему с использованием учетной записи домена Windows Server , учетные данные из того же входа могут использоваться для проверки подлинности удаленного сеанса. Однако для этого требуется, чтобы Windows Server 2008 была ОС терминального сервера, тогда как клиентская ОС ограничена Windows Server 2008, Windows Vista и Windows 7 . Кроме того, сервер терминалов можно настроить так, чтобы разрешить подключение к отдельным программам, а не ко всему рабочему столу, с помощью функции RemoteApp . Веб-доступ к службам терминалов (веб-доступ к службам терминалов) делает сеанс RemoteApp доступным из веб-браузера.. Он включает элемент управления веб-частью TS Web Access, который поддерживает список удаленных приложений, развернутых на сервере, и поддерживает этот список в актуальном состоянии. Сервер терминалов также может интегрироваться с диспетчером системных ресурсов Windows для ограничения использования ресурсов удаленными приложениями. [4]
Сервер терминалов управляется оснасткой «Диспетчер сервера терминалов» консоли управления Microsoft . Его можно использовать для настройки требований входа в систему, а также для принудительного выполнения одного экземпляра удаленного сеанса. Его также можно настроить с помощью групповой политики или инструментария управления Windows . Однако он недоступен в клиентских версиях ОС Windows, где сервер предварительно настроен для разрешения только одного сеанса и обеспечения прав учетной записи пользователя в удаленном сеансе без какой-либо настройки. [2]
Компонент службы шлюза удаленных рабочих столов , также известный как шлюз удаленных рабочих столов , может туннелировать сеанс RDP, используя канал HTTPS . [14] Это увеличивает безопасность RDS за счет инкапсуляции сеанса с помощью протокола TLS. [15] Это также позволяет использовать Internet Explorer в качестве клиента RDP. Официальный клиент MS RDP для macOS поддерживает шлюз удаленных рабочих столов начиная с версии 8. Он также доступен для iOS и Android.
Эта функция была представлена в продуктах Windows Server 2008 и Windows Home Server .
В конце 2018 года Microsoft выпустила веб-клиент HTML5 для удаленного рабочего стола. Клиент позволяет пользователям подключаться к своим удаленным приложениям или к своим удаленным рабочим столам без использования установленного клиента удаленного рабочего стола. [16] [17] Веб-клиент использует защищенный TLS порт 443 и не использует шлюз удаленных рабочих столов для передачи трафика, вместо этого полагаясь исключительно на аспект узла сеанса удаленного рабочего стола служб удаленного рабочего стола. [18] [19]
RemoteApp (или TS RemoteApp ) - это специальный режим RDS, доступный в Windows Server 2008 R2 и более поздних версиях, где конфигурация удаленного сеанса интегрирована в клиентскую операционную систему. Клиент RDP 6.1 поставляется с Windows XP SP3, KB952155 для пользователей Windows XP SP2, [21] Windows Vista SP1 и Windows Server 2008. Пользовательский интерфейс для RemoteApp отображается в окне поверх локального рабочего стола и управляется как любое другое окно для местных приложений. Конечным результатом этого является то, что удаленные приложения ведут себя в значительной степени как локальные приложения. Задача установления удаленного сеанса, а также перенаправления локальных ресурсов удаленному приложению прозрачна для конечного пользователя. [22]В одном сеансе RemoteApp можно запустить несколько приложений, каждое со своими окнами. [23]
RemoteApp можно упаковать в виде .rdp
файла или распространить через пакет .msi
установщика Windows . При упаковке в виде .rdp
файла (который содержит адрес сервера RemoteApp, используемые схемы аутентификации и другие параметры) RemoteApp можно запустить, дважды щелкнув файл. Он вызовет клиент подключения к удаленному рабочему столу, который подключится к серверу и отобразит пользовательский интерфейс. RemoteApp также можно упаковать в базу данных установщика Windows , при установке которого можно зарегистрировать RemoteApp в меню «Пуск».а также создать ярлыки для его запуска. RemoteApp также можно зарегистрировать как обработчик для типов файлов или URI. Открытие файла, зарегистрированного в RemoteApp, сначала вызовет подключение к удаленному рабочему столу, которое подключится к серверу терминалов, а затем откроет файл. Любое приложение, к которому можно получить доступ через удаленный рабочий стол, может использоваться как RemoteApp. [22]
Windows 7 включает встроенную поддержку публикации RemoteApp, но ее необходимо включить вручную в реестре, поскольку в клиентских версиях Microsoft Windows нет консоли управления RemoteApp. [24]
В Windows Vista и далее, Terminal Services также включает в себя возможность совместного использования рабочего стола многопартийной известную как Windows Desktop Sharing . В отличие от служб терминалов, которые создают новый сеанс пользователя для каждого подключения RDP, общий доступ к рабочему столу Windows может размещать удаленный сеанс в контексте текущего пользователя, вошедшего в систему, без создания нового сеанса и делать рабочий стол или его подмножество доступным. через RDP. [25] Общий доступ к рабочему столу Windows можно использовать для совместного использования всего рабочего стола, определенного региона или конкретного приложения. [26]Совместное использование рабочего стола Windows также можно использовать для совместного использования рабочих столов с несколькими мониторами. При совместном использовании приложений по отдельности (а не всего рабочего стола) управление окнами (независимо от того, развернуты они или развернуты) независимо на стороне сервера и клиента. [26]
Функциональность предоставляется только через общедоступный API , который может использоваться любым приложением для обеспечения функциональности совместного использования экрана. API RDPSession
общего доступа к рабочему столу Windows предоставляет два объекта: для сеанса совместного использования и RDPViewer
для средства просмотра. Для одного объекта сеанса можно создать несколько объектов средства просмотра. Зритель может быть либо пассивным зрителем, который может просто смотреть приложение, как скринкаст , либо интерактивным зрителем, который может в реальном времени взаимодействовать с удаленным приложением. [25]RDPSession
объект содержит все общие приложения, представленные в виде Application
объектов, каждый с Window
объектами , представляющими их окна на экране. Фильтры для отдельных приложений захватывают приложение Windows и упаковывают их какWindow
объекты. [27] Зритель должен аутентифицироваться, прежде чем он сможет подключиться к сеансу совместного использования. Это делается путем создания файла Invitation
с расширением RDPSession
. Он содержит билет проверки подлинности и пароль. Объект сериализуется и отправляется зрителям, которым необходимо представить его Invitation
при подключении. [25] [27]
API общего доступа к рабочему столу Windows используется Windows Meeting Space и Windows Remote Assistance для обеспечения функциональности совместного использования приложений между сетевыми узлами . [26]
Разработчики) | Microsoft |
---|---|
Операционная система | Майкрософт Виндоус |
Тип | Программное обеспечение удаленного рабочего стола |
Веб-сайт | документы .microsoft .com / en-us / windows-server / remote / remote-desktop-services / welcome-to-rds |
Подключение к удаленному рабочему столу (RDC, также называемое удаленным рабочим столом , ранее клиент служб терминалов Microsoft , mstsc или tsclient ) [28] [29] - это клиентское приложение для RDS. Это позволяет пользователю удаленно войти в сетевой компьютер, на котором запущен сервер служб терминалов. RDC представляет интерфейс рабочего стола (или графический интерфейс приложения) удаленной системы, как если бы к нему обращались локально. [2] Помимо обычного имени пользователя и пароля для авторизации для удаленного сеанса, RDC также поддерживает использование смарт-карт для авторизации. [2] В RDC 6.0 разрешение удаленного сеанса может быть установлено независимо от настроек на удаленном компьютере.
В версии 6.0, если компонент Desktop Experience подключен к удаленному серверу, элементы пользовательского интерфейса удаленного приложения (например, границы окон приложений, кнопки «Развернуть», «Свернуть» и «Закрыть» и т. Д.) Будут иметь тот же вид, что и локальные приложения. В этом сценарии удаленные приложения будут использовать тему Aero, если пользователь подключается к серверу с компьютера под управлением Windows Vista, на котором работает Aero. [4]Более поздние версии протокола также поддерживают рендеринг пользовательского интерфейса в полном 32-битном цвете, а также перенаправление ресурсов для принтеров, COM-портов, дисковых накопителей, мышей и клавиатур. Благодаря перенаправлению ресурсов удаленные приложения могут использовать ресурсы локального компьютера. Аудио также перенаправляется, так что любые звуки, генерируемые удаленным приложением, воспроизводятся в клиентской системе. [2] [4] Более того, удаленный сеанс также может охватывать несколько мониторов в клиентской системе, независимо от настроек нескольких мониторов на сервере. RDC также можно использовать для подключения к удаленным сеансам Windows Media Center (WMC); однако, поскольку WMC не передает потоковое видео по протоколу RDP, таким образом можно просматривать только приложения, а не любые носители.
RDC отдает приоритет данным пользовательского интерфейса, а также вводам с клавиатуры и мыши, в отличие от заданий печати или передачи файлов. чтобы сделать приложения более отзывчивыми. Он перенаправляет устройства plug and play, такие как камеры, портативные музыкальные плееры и сканеры, так что ввод с этих устройств может также использоваться удаленными приложениями. [4] RDC также можно использовать для подключения к компьютерам, доступ к которым осуществляется через шлюз RDP Windows Home Server через Интернет . [30] Наконец, несколько удобных быстрых клавиш
Microsoft выпускает официальный клиент для множества платформ, отличных от Windows:
Было множество реализаций клиентов сторонних производителей, которые реализуют подмножества функций Microsoft для ряда платформ. Наиболее распространены:
Windows XP, Windows Server 2003, Windows Vista и Windows Server 2008 содержат инструмент RDC,mstsc.exe
[...] MSTSC в имени файлаmstsc.exe
означает клиент служб терминалов Microsoft.