Что такое rpd и mstsc
RDP — (англ. Remote Desktop Protocol — протокол удалённого рабочего стола) — проприетарный протокол прикладного уровня. Официальное название Майкрософт для клиентского ПО — Remote Desktop Connection или Terminal Services Client (TSC), для версий Windows просто MSTSC.
В свою очередь MSTSC расшифровывается как клиент служб терминалов Windows. Мы будем использовать в данном обзоре утилиту mstsc.exe — стандартное программное обеспечение современных ОС семейства Windows, предназначенное для подключения к удаленным рабочим столам с использованием протокола RDP.
Apache guacamole
Современные тенденции DevOps предполагают перенос окружения для разработки с локальной машины на сервер компании или к облачному провайдеру. Один из простых примеров ранее описывался в статье: Установка Visual Studio Code в облаке, приложения для удаленного подключения этого тоже не избежали.
Apache Guacamole, это клиентский шлюз для удаленного подключения, работающий на HTML5, позволяет пользоваться протоколами: VNC, Telnet, RDP, Kubernetes и SSH / SFTP — через web-интерфейс. Не требуется установки никаких программ, подписок на сторонние сервисы, все работает прямо в браузере, независимо от того, какой операционной системой пользуется разработчик.
Сценарий работы с этим сервисом типичен для последних тенденций удаленной работы и оптимизации рабочего места. Разработчики подключаются к своему окружению из любой точки земного шара. Им не требуется держать дома мощный десктоп или носить с собой высокопроизводительный ноутбук, забота об этом перекладывается на серверы компании, а работнику достаточно подключения к интернету и любого ноутбука, на котором не будет лагать браузер.
Настройка сервиса подробнейшим образом документирована, мануал впечатляет своими размерами. Установка возможна несколькими способами: из репозиториев, компиляция исходников и разворачивание образа Docker. К счастью, как это часто бывает, один прошаренный DevOps-инженер решил автоматизировать процесс установки с наиболее типичными настройками и выложил готовый скрипт на github: guac-install.
Начнем с того, что настроим виртуальный сервер для установки AG. Его характеристики будут зависеть от количества пользователей, но разработчики рекомендуют не меньше 2 гигабайт оперативной памяти. Размещение сервера выберем в Москве, для минимального пинга, что критично для работы с удаленными компьютерами.
В качестве тестовой машины я выбрал такие параметры VPS:
После того, как будет создана виртуальная машина, подключимся к ней (используя MobaXterm, конечно же). Теперь можно приступать к работе.
Mobaxterm
Эта
для Windows. Немного неправильно называть MobaXterm RDP-клиентом, потому что это целый комбайн. Список поддерживаемых протоколов впечатляет: SSH, Telnet, Rlogin, RDP, VNC, XDMCP, FTP, SFTP и Serial.
Почему я рекомендую этот клиент? Меня уже давно не радует Putty. Громоздкий и запутанный интерфейс из времен W95, не вызывающий ностальгию, если приходится часто с ним работать, плохая поддержка экранов высокого разрешения, собственный формат ключей, отсутствие поддержки вкладок и прочее.
MobaXterm лишен всех этих недостатков, это удобная и современная программа. Портативная версия состоит из одного единственного exe’шника и файла настроек, интерфейс интуитивный, а если нужна помощь, то, в отличии от Putty, в самой программе есть исчерпывающая документация.
Myrtille
На основе FreeRDP разрабатывается еще один проект:
Windows xp или vista
В XP можно поднять протокол с 5.1 до 7. Хотфикс
В Vista — c 6 до 7. Хотфикс имеет тот же номер, файлы windows6.0-kb969084-x64.msu или Windows6.0-KB969084-x86.msu
Борьба с “крестиком” терминального сеанса.
Вот он вредитель (на панели подключений при работе на полном экране) – сисадмины поймут всю боль
Проблема в том, что “крестик” только закрывает “Удаленный рабочий стол” на ПК пользователя, но оставляет на сервере открытую терминальную сессию. Если пользователей много – то все их сессии остаются на сервере открытыми и занимают память.
Варианты решений.
- Вообще убрать панель от пользователя – в настройках при создании удаленного рабочего стола (выход только через завершение сеанса)
2. Убрать сам “крестик” (выход только через завершение сеанса)
Есть специальная программа, которая крестик убирает. Смотреть здесь.
И будет вот так 🙂
3. Ограничить время сессии (пункты 1 и 2 могут не помочь, т.к. пользователь вообще может просто выключить свой ПК и пойти домой).
Вот мечта всех админов – при закрытии (нажатии на крестик) происходит и закрытие рабочего стола и закрытие терминальной сессии на сервере. Смотреть на support Miscosoft (в новом окне)
Дополнительные настройки удаленного рабочего стола.
1. Есть необходимость перезагружать ПК через удаленный рабочий стол. Сама перезагрука – это не проблема – либо через диспетчер задач либо через Alt F4. (в кнопке “Пуск” этой возможности не будет). Но до входа локального пользователя удаленный рабочий стол подключаться не будет. А если ПК стоит в темной комнате, где нет никаких локальных пользователей?
Еще почитать:
Как запретить windows сохранять историю rdp подключений?
Если вы хотите, чтобы Windows не сохраняла историю RDP подключений, нужно запретить запись в ветку реестра HKCUSoftwareMicrosoftTerminal Server Client для всех аккаунтов, в том числе System. Сначала отключите наследование разрешений на указанную ветку (Permissions ->
В результате mstsc просто не сможет записать информацию об RDP подключении в реестр.
Настройка и управление ip
Вместо имени компьютера часто используется IP. Чтобы его просмотреть нужно зайти в «Панель управления» и вызвать «Сеть и интернет».
Далее выбираем центр управления сетями и общего доступа.
Затем кликаем непосредственно по самому подключению.
В просмотре состояния нажмите Сведения.
Отобразится детальная информация, из которой нужно запомнить или записать IPv4.
Если адрес выдается динамическим образом, то при повторных включениях ПК он может измениться, тогда потребуется узнавать его каждый раз заново. Вместо этого, иногда настраивают статический адрес, который остается неизменным при перезагрузках.
Если у вашей сети есть администратор, проконсультируйтесь с ним о допустимости такой настройки. Впрочем, это относится и к разрешению удаленного доступа в целом.
В окне просмотра состояния перейдите к свойствам. Далее выберите протокол IPv4 и откройте детальный просмотр.
В качестве адреса укажите значение, которое не попадает в используемый для динамического использования диапазон. Соответствующую настройку можно опять-таки найти в роутере.
Традиционно маска указывается в виде 255.255.255.0, так что IP должен отличаться от адреса шлюза (его не меняем) только последним числом.
В качестве DNS можно указать используемые в вашей сети значения или же воспользоваться публичными сервисами: 8.8.8.8 от Google, 1.1.1.1 от Cloudflare и так далее.
О проблемах
XP и Vista
Если проблема возникает на Windows XP или Vista, попробуйте сначала обновить протокол до 7 версии (писал в начале статьи). Обязательно включите поддержку CredSSP. На сайте Microsoft статьи уже удалены, но Интернет помнит.
Если не помогло — «доктор говорит в морг, значит в морг». Что испытала на себе операционная система за последние 15 лет — лучше об этом даже и не думать.
NLA
Иногда помогает отключение NLA на сервере. Выяснить причину не получилось, домашние машины все разные.
NTLM
Некоторые клиенты пытаются авторизоваться с использованием NTLMv1. Причины разные, но исправить на клиенте можно так:
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa]
"LmCompatibilityLevel"=dword:00000003
Перезагрузка обязательна.
Если вы молоды и дерзки ничего не боитесь, то есть более радикальное решение — отключение Channel Binding на Remote Desktop Gateway
HKLMSoftwareMicrosoftWindows NTCurrentVersionTerminalServerGatewayConfigCore
Type: REG_DWORD
Name: EnforceChannelBinding
Value: 0 (Decimal)
Делать так не надо. Но мы делали. 🙂 Для клиента, который настаивал (нет не так, НАСТАИВАЛ) что NTLMv1 на рабочих станциях ему необходим. Не знаю, может там серверы на NT4 без SP еще в работе.
Отключение RDP 8 в Windows 10
Если ничего не помогает, а идеи кончились, можно воспользоваться недокументированным ключом для даунгрейда протокола RDP до 7 версии.
Очистка bitmap кэша rdp
В клиенте Remote Desktop Connection есть функционал кэширования изображений (persistent bitmap caching). Клиент RDP при подключении сохраняет редко изменяющиеся куски удаленого экрана в виде кэша растровых изображений. Благодаря этому клиент mstsc.exe загружает из локального кэша части экрана, которые не изменились с момента последней прорисовки. Этот механизм кэширования RDP уменьшает количество данных, передаваемых по сети.
RDP кэш представляет собой два типа файлов в каталоге %LOCALAPPDATA%MicrosoftTerminal Server ClientCache:
В этих файлах хранятся сырые растровые изображения RDP экрана в виде плиток 64×64 пикселя. С помощью простых PowerShell или Python скриптов (легко ищутся по запросу RDP Cached Bitmap Extractor) можно получить PNG файлы с кусками экрана рабочего стола и использовать их для получения конфиденциальной информации. Размер плиток мал, но достаточен для получения полезной информации для изучающего RDP кэш.
Вы можете запретить RDP клиенту сохранять изображение экрана в кэш, отключив опцию Persistent bitmap caching (Постоянное кэширование точечных рисунков) на вкладке Advanced.
Очистка rdp логов на сервере
Логи подключения так же ведутся на стороне RDP/RDS сервера. Вы можете найти информацию об RDP подключениях в логах Event Viewer:
Вы можете очистить журналы Event Viewer на RDP сервере с помощью wevtutil или PowerShell.
Помогла ли вам эта статья?
ДАНЕТ
Проблемы с windows 10 1803, медленная работа remoteapp
Последнее обновление Windows 10 версии 1803 April Update принесло проблемы с отрисовкой для пользователей работающих с RemoteApp приложениями, опубликованными на RDS серверах с Windows Server 2021 R2/ Server 2021. с установленными актуальными обновлениями безопасности.
Без Remote FX не будут работать графические программы, опубликованные в RemoteApp (в частности семейства CAD).
Для полноценного решения проблемы, можно откатить версию Windows на предыдущую.
Recovery Options -> Get Started -> Go back to the previous version of Windows 10
Имеется и третий вариант решения проблемы. Можно заменить на более старую версию клиента RDP. Лучше использовать библиотеки RDP из версии Windows 1607 или 1703, т.к. проблема встречалась ещё на версии 1709.
Проверьте что у Вас стоит именно версия Windows 10 1803 (OS Build 17133.1) или 1709. Запустите “Выполнить” и выполните команду:
(в примере приведено имя локальной учтённой записи с правами администратора – root. Замените ее на имя вашей учетной записи)
6. После совершённых манипуляций замените файлы в каталоге C:windowssystem32 файлами из скачанного архива.
7. Далее требуется восстановить оригинальные разрешения на заменённых файлах. Включаем наследования NTFS разрешений и поставим владельцем файлов «NT ServiceTrustedInstaller» командами:
icacls C:windowssystem32mstsc.exe /inheritance:e
icacls C:windowssystem32mstscax.dll /inheritance:e
icacls C:windowssystem32mstsc.exe /setowner “NT ServiceTrustedInstaller” /T /C
icacls C:windowssystem32mstscax.dll /setowner “NT ServiceTrustedInstaller” /T /C
8. Перерегистрируем библиотеку:
reg32svr C:WindowsSystem32mstscax.dll
После проделанных действий в Ваших RemoteApp приложениях восстановится нормальная производительность.
Скрипт очистки истории (логов) rdp подключений
Выше мы показали, как вручную очистить историю RDP подключений в Windows. Однако делать это вручную (особенно на нескольких компьютерах) – занятие достаточно долгое. Поэтому мы предлагаем небольшой скрипт (bat-файл), который позволяет автоматически очистить историю подключений к удаленным рабочим столам.
Для автоматизации очистки истории RDP, данный скрипт можно поместить в автозагрузку, либо распространить его на компьютеры пользователей с помощью логоф скрипта групповой политики.
Удаление сохраненных rdp паролей
Если при установке удалённого RDP подключения, перед вводом пароля пользователь поставил галку Remember Me / Запомнить меня, то имя пользователя и пароль будут сохранены в системном менеджере паролей системы (Credential Manager). При следующем подключении к этому же компьютеру, RDP клиент автоматически использует сохранённый ранее пароль для авторизации на удаленном компьютере.
Вы можете удалить сохраненный пароль прямо из окна клиента mstsc.exe. Выберите в списке подключений тоже самое подключение, и нажмите на кнопку Delete. Далее подтвердите удаление сохраненного пароля.
Шаг 1: обновление и активация rdp
Вся процедура начинается с обновления и активации протокола удаленного рабочего стола. Рекомендуется использовать последнюю версию, чтобы во время соединения не возникло никаких проблем, однако администраторы могут подстроиться под ПК участников локальной сети, активировав седьмую или восьмую версию технологии. Более детально об осуществлении поставленной задачи читайте в отдельных статьях на нашем сайте, перейдя по ссылкам ниже.
Подробнее:Включение RDP 8/8.1 в Windows 7Включение RDP 7 в Windows 7Обновление RDP в Windows 7
Шаг 2: установка пароля для учетной записи
Обязательным предварительным действием перед началом основной конфигурации будет установка пароля на учетную запись юзера, к которому выполняется подключение. Сделайте это в том случае, если ключ доступа еще не установлен. Для этого потребуется задействовать профиль администратора, зная при этом имя учетной записи необходимого пользователя. Детальное описание этой задачи вы можете найти в материале от другого нашего автора далее.
Подробнее: Установка пароля на компьютер Windows 7
Шаг 3: установка разрешения для подключения к удаленному десктопу
Функция RDP может быть активирована на устройстве, но при этом обладать определенными ограничениями, из-за которых другой юзер и не сможет подключиться к компьютеру. Потому в этом этапе мы поговорим о выдаче разрешений, подразумевающих открытие доступа для подключений указанным юзерам. Вам необходимо лишь следовать инструкции ниже, чтобы буквально в два клика выставить подходящие параметры.
Шаг 4: добавление проверенных пользователей
Только что вы узнали, как самостоятельно разрешить удаленное соединение через окно свойств системы. Однако подключиться к ПК смогут только те юзеры, кому был предоставлен доступ. Именно об этом процессе мы и хотим поговорить сейчас.
- Находясь все в том же окне «Свойства системы», кликните по специально отведенной кнопке «Выбрать пользователей».
- Сейчас ни один из юзеров не добавлен в проверенный список, поэтому требуется перейти к созданию нового перечня.
- Вручную в соответствующее поле начните вводить имена выбираемых объектов. Можете просмотреть имеющиеся примеры, если затрудняетесь правильно составить имя ПК. Обязательно разделяйте каждое имя пробелом, избегая знаков препинания.
- Проверьте имена с помощью системного алгоритма, чтобы убедиться в корректности ввода и отображения в сети.
- Если какое-то имя не будет найдено, откроется дополнительная форма, где используются вспомогательные средства для решения этой проблемы.
Существует более простой метод добавления пользователей для тех ситуаций, когда надо указать большое число имен. Осуществляется поставленная задача через встроенную функцию поиска по локальной сети. Соответственно, если вы хотите добавить учетную запись, не входящую в группу, этот вариант вам не подойдет.
- Сейчас вы находитесь в окне «Выбор: «Пользователи»». Здесь щелкните по расположенной в левом углу кнопке «Дополнительно».
- Справа вы увидите возможные действия. Нажмите на «Поиск» для начала сканирования.
- Отыщите необходимый профиль и выделите его левой кнопкой мыши.
- Он будет добавлен в список, о котором мы говорили ранее. По окончании его создания кликните на «ОК».
- Теперь в окне «Пользователи удаленного рабочего стола» вы увидите список юзеров, входящих в разрешенный список.
Если вдруг вы столкнулись с трудностями в определении полного имени компьютера, давайте вкратце разберем, как это сделать меньше, чем за минуту:
- Откройте меню «Пуск», щелкните ПКМ по строке «Компьютер» и выберите пункт «Свойства».
- Здесь обратите внимание на «Полное имя». Его и нужно использовать при добавлении, указывая перед именем юзера.
Сейчас вы ознакомились с двумя принципами разрешения доступа юзерам для подключения к удаленному десктопу. На этом можно закончить конфигурацию и сразу переходить к соединению, однако важно учитывать еще некоторые моменты, на которые мы тоже хотим обратить внимание в рамках сегодняшнего материла.
Шаг 5: настройка правила брандмауэра
В большинстве случаев установленные по умолчанию правила встроенного межсетевого экрана операционной системы не подразумевают блокировку удаленных подключений, однако если такие параметры все же присутствуют, на экране появится ошибка 3389. Во избежание этого лучше сразу проверить конфигурацию брандмауэра, тем более, что это делается очень быстро и легко.
- Зайдите в «Панель управления» через «Пуск» или запустите это меню другим удобным для вас методом.
- Переместитесь в раздел «Брандмауэр Windows».
- Здесь щелкните по «Разрешить запуск программы или компонента через брандмауэр Windows».
- Опуститесь вниз по появившемуся списку и убедитесь в том, что пункт «Удаленный рабочий стол» отмечен галочкой. В противном случае надо поставить ее, а затем применить изменения и перезагрузить компьютер.
Шаг 6: проброс порта tcp 3389
Если предыдущий способ не сработал для тех юзеров, кто пытается подключиться к удаленному рабочему столу через глобальную сеть, обладателю ПК придется самостоятельно открывать порт TCP 3389 через настройки маршрутизатора, а также необходимо убедиться в том, что используется статический IP-адрес. Инструкции по пробросу портов ищите в отдельном материале на нашем сайте, щелкнув по следующей ссылке.
Подробнее: Открываем порты на роутере
Что касается статического IP-адреса, то получить его можно только через приобретение у провайдера или путем собственноручной настройки, если это изначально разрешено. В любом случае придется звонить на горячую линию поставщика интернет-услуг и уточнять этот момент со специалистами, где вы также получите нужные руководства по реализации этой технологии.
Шаг 7: подключение к удаленному десктопу
Последний этап нашего сегодняшнего материала заключается в подключении к удаленному рабочему столу посредством встроенной функции Windows. Если все предыдущие шаги осуществлялись на компьютере того юзера, к которому надо подсоединиться, то этот шаг выполняется с ПК администратора или помощника.
- Откройте меню «Пуск» и через поиск отыщите приложение «Подключение к удаленному рабочему столу».
- В строке введите название компьютера, а затем кликните на «Подключить».
- Произойдет инициализация нового соединения. Это может занять несколько минут, а при просьбе ввода пароля укажите его, отталкиваясь от ключа доступа к учетной записи.
- Дополнительно следует отметить параметры соединения. Первая вкладка отвечает за настройку быстрого входа. Здесь можно указать компьютер и пользователя, а также сохранить конфигурацию в отдельный файл для удобства.
- Далее идет редактирование функций экрана: настраивается разрешение и отображение цветов. Все значения выставляются исключительно под запросы юзера.
- Во вкладке «Локальные ресурсы» вы можете активировать звуки с удаленного ПК, выставить режим взаимодействия с клавиатурой и настроить буфер обмена.
- Раздел «Программы» отвечает за скриптованный автоматический запуск софта при следующем соединении с ПК. Для этого требуется лишь указать путь к исполняемому файлу.
- Если вдруг вы столкнулись с тормозами во время соединения, перейдите в «Взаимодействие». Здесь задается качество соединения в зависимости от скорости интернета и мощности устройств. Просто выберите один из заготовленных в списке шаблонов.
- На вкладку «Дополнительно» следует заходить только продвинутым системным администратором. Здесь устанавливаются сертификаты подлинности сервера и прокладываются шлюзы для соединения из любого места.
В этой статье вы узнали обо всех этапах конфигурации RDP в операционной системе Виндовс 7 как на стадии подготовки, так и непосредственно при самом соединении. Если все инструкции были выполнены правильно, никаких проблем с предоставлением доступа к десктопу возникнуть не должно.
Этап 1: установка rdp 8/8.1
Прежде всего следует сказать, что после инсталляции Виндовс 7 у вас будет только один протокол для организации удаленного доступа — RDP 7. Чтобы активировать RDP 8/8.1, следует вначале установить соответствующие обновления. Это можно сделать, автоматически загрузив все апдейты через «Центр обновления», а можно произвести ручную установку, закачав один из файлов с официального сайта Microsoft по ссылкам ниже.
Этап 2: активирование удаленного доступа
Действия по включению удаленного доступа выполняются по точно такому же алгоритму, что и аналогичная операция для RDP 7.
- Жмите меню «Пуск» и щелкайте правой кнопкой мышки по надписи «Компьютер». В отобразившемся списке выбирайте «Свойства».
- В открывшемся окне свойств переходите по активной ссылке в левой его части – «Дополнительные параметры…».
- Далее открываете раздел «Удаленный доступ».
- Именно тут производится активация нужного для нас протокола. Установите отметку в области «Удаленный помощник» около параметра «Разрешить подключения…». В области «Удаленный рабочий стол» переместите кнопку переключателя в позицию «Разрешить подключаться…» либо же «Разрешать подключения…». Для этого жмите «Выбрать пользователей…». Чтобы все внесенные настройки вступили в силу, нажимайте «Применить» и «OK».
- «Удаленный рабочий стол» будет включен.
Урок: Подключение «Удаленного рабочего стола» на Виндовс 7
Этап 3: активирование rdp 8/8.1
Следует заметить, что удаленный доступ по умолчанию будет включен по протоколу RDP 7. Теперь необходимо произвести активацию протокола RDP 8/8.1.
- Наберите на клавиатуре Win R. В открывшееся окошко «Выполнить» введите:
gpedit.msc
Далее применяйте щелчок по кнопке «OK».
- Запускается «Редактор групповой политики». Щелкайте по наименованию раздела «Конфигурация компьютера».
- Далее выбирайте «Административные шаблоны».
- Затем заходите в каталог «Компоненты Windows».
- Перемещайтесь к «Службам удаленных рабочих столов».
- Открывайте папку «Узел сеансов…».
- Наконец, заходите в каталог «Среда удаленных сеансов».
- В открывшейся директории щелкайте по элементу «Разрешить RDP версии 8.0».
- Открывается окно активирования RDP 8/8.1. Переставьте радиокнопку в положение «Включить». Для того чтобы сохранить введенные параметры, щелкайте «Применить» и «OK».
- Затем не мешает активировать более шустрый протокол UDP. Для этого в левой части оболочки «Редактора» переходите в каталог «Подключения», который размещен в посещенной ранее папке «Узел сеансов…».
- В открывшемся окне щелкайте по элементу «Выбор протоколов RDP».
- В открывшемся окне выбора протоколов переставляйте радиокнопку в положение «Включить». Ниже из выпадающего списка выберите вариант «Использовать либо UDP, либо TCP». Затем нажмите «Применить» и «OK».
- Теперь для активации протокола RDP 8/8.1 требуется выполнить перезагрузку компьютера. После повторного его включения необходимый компонент уже будет функционировать.