rdp-клиенты Windows XP не подключаются к RDS Windows 2012R2
rdp-клиенты Windows XP не подключаются к RDS Windows 2012R2
Добрый день! Многоуважаемые читатели и гости IT блога Pyatilistnik.org. Многие уже переводят свои сервера на Windows Server 2012 R2 и естественно сервисы работающие на нем. Сегодня ко мне прилетела заявка, в которой пользователь жаловался, что не может подключиться по удаленному рабочему столу из своей клиентской Windows XP. Пользователи XP жаловались на такие ошибки rdp клиента:
Because of a security error, the client could not connect to the remote computer. Verify that you are logged on to the network, and then try reconnecting again
The remote session was disconnected because the remote computer received an invalid licensing message from this computer
The remote computer requires Network Level Authentication, which your computer does not support. For assistance, contact your system administrator or technical support.
Покопавшись в документации Microsoft, решили в первую очередь обновить версию RDP клиента на машинах с XP. После установки rdp клиента 7.0 (версия rdp 8.0 на XP не устанавливается), у половины клиентов проблема решилась. Осталась вторая половина….
Начав более подробно копать тему RDS сервера на базе Windows 2012 R2 мы обнаружили, что 2012 сервер по умолчанию требует от своих клиентов обязательной поддержки технологии NLA (Network-Level Authentication – проверки подлинности на уровне сети, подробнее об этой технологии здесь), если же клиент не поддерживает NLA, подключиться к RDS серверу ему не удастся.
Из вышесказанного есть два вывода, чтобы оставшиеся XP-клиенты смогли подключаться по RDP к терминальному серверу 2012 нужно:
отключить проверку NLA на серверах фермы Remote Desktop Services 2012
или включить поддержку NLA на XP-клиентах
Отключаем NLA на сервере RDS 2012
Чтобы на сервере RDS Windows Server 2012 отключить требование обязательного использования NLA клиентами, нужно в консоли Server Manager перейти в раздел Remote Desktop Services -> Collections -> QuickSessionCollection, выбрать Tasks -> Edit Properties, выбрать раздел Security и снять опцию: Allow connections only from computers running Remote Desktop with Network Level Authentication.
rdp-клиенты Windows XP не подключаются к RDS Windows 2012R2-01
Естественно, нужно понимать, что отключение NLA на уровне сервера уменьшает защищенность системы и в общем случае использовать не рекомендуется. Предпочтительнее использовать вторую методику.
Включаем NLA на уровне клиента Windows XP
Поддержка NLA появилась в Windows XP, начиная с SP3, но по умолчанию она не включена. Включить поддержку аутентификации NLA можно только реестр. Для этого:
В ветке реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders нужно отредактировать значение ключа SecurityProviders, добавив в конце credssp.dll (через запятую от его текущего значения)
rdp-клиенты Windows XP не подключаются к RDS Windows 2012R2-02
Далее в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa добавить строку tspkg в значение параметра Security Packages
rdp-клиенты Windows XP не подключаются к RDS Windows 2012R2-03
После внесения указанных изменений, компьютер нужно перезагрузить
После выполнения всех манипуляций, компьютер с Windows XP SP3 должен без проблем подключится по rdp к терминальной ферме на Windows 2012.
Включить RDP Windows удаленно и локально, за минуту
Включить RDP Windows удаленно и локально, за минуту
Добрый день! Уважаемые читатели и гости, одного из ведущих компьютерных блогов рунета Pyatilistnik.org. В прошлый раз мы с вами успешно решили проблему со службами удаленного рабочего стола, когда они были заняты в настоящее время. Сегодня я бы хотел осветить, как включить RDP доступ на компьютерах и серверах Windows, так как меня об этом уже не первый раз спрашивают, поэтому проще написать подробную статью, чем постоянно отвечать на одни вопросы. В данном посте мы подробно разберем, как удаленно реализовать доступ по RDP, так как бывают и такие ситуации, меня это лично на практике выручало.
Постановка задачи
Разобрать все методы, позволяющие вам включать RDP доступ на Windows системах, понимать какие ключи реестра за это отвечают и как это можно применять на практике.
Методы активации доступа по RDP
Я могу выделить вот такие способы:
- Классический метод с использованием оснастки свойств системы Windows
- С помощью оболочки и командлетов PowerShell
- Удаленное включение, через реестр Windows
- Через GPO политику
Как удаленно включить RDP
И так начну с более интересного метода. Предположим, что у вас есть сервер или компьютер, от которого у вас есть учетные данные для входа, но не активен вход через удаленный рабочий стол. И вам хотели бы его активировать. Делается все это просто. Тут мы воспользуемся удаленным доступом через консоль. Откройте окно выполнить (Сочетание клавиш WIN и R одновременно) и в открывшемся окне введите:
Далее щелкаете по корню «Управление компьютера (локальным)» правым кликом и в открывшемся окне выберите пункт «Подключиться к другому компьютеру»
В окне выбора компьютера, вам необходимо нажать кнопку «Обзор», которое откроет второе окошко, где нужно выбрать необходимый компьютер, так как у меня доменная сеть, то мне еще проще. В моем примере это будет компьютер с операционной системой Windows 10 под DNS-именем W10-CL01. Нажимаем ок.
У вас будет произведено подключение к данному компьютеру. Если у вас выскочит ошибка:
В данном случае, нужно проверить две вещи:
- Доступен ли компьютер по сети, для этого проведите элементарный ping компьютера.
- Это нужно на этом компьютере в брандмауэре Windows разрешить «Удаленное управление журналом событий»
Про то как локально разрешать в брандмауэре службы и порты я говорил, посмотрите по ссылке. Если доступа нет, сделать, это локально, то ниже я приведу пример, как это сделать удаленно. Когда вы подключились к нужному компьютеру или серверу, вам необходимо перед удаленным включением RDP доступа, удостовериться, что у вас на вкладке службы, в активном состоянии запущен сервис «Удаленный реестр».
В моем примере я подключился к удаленным службам, через управление компьютером.
Если этого не сделать, то подключиться к реестру не получиться, и вы не сможете включить RDP по сети. Переходим в свойства данной службы и в типе запуска выставите вручную, после чего нажмите применить. После этого у вас станет активной кнопка запуска, нажимаем ее и проверяем, что сервис стартанул. После этого переходим к редактированию реестра по локальной сети.
В окне выполнить введите regedit и у вас откроется реестр Windows .
В самом верху есть меню файл, открыв его вам необходимо найти пункт «Подключить сетевой реестр».
У вас откроется окно поиска, где вам необходимо найти нужный вам сетевой компьютер или сервер, после чего нажать ок.
В итоге у вас в окне редактора реестра Windows появится еще один куст. Именно через данный реестр вы включите RDP службу на удаленной системе.
Теперь выбираем корень сетевого реестра Windows и нажимаем кнопку CTRL+F, у вас откроется форма поиска по нему. Тут вам необходимо найти ключ fDenyTSConnections.
Он также по сути должен лежать по пути:
Где ключу fDenyTSConnections вам необходимо изменить значение с 1 на 0, чтобы включить RDP доступ к удаленному компьютеру.
Пробуем произвести подключение, для этого откройте клиента подключения к удаленному рабочему столу (mstsc) и смотрим результат.
Если у вас будут закрыты порты, то вы увидите вот такую картину. При попытке подключиться у вас будет висеть инициализация удаленного подключения.
После чего вы увидите ошибку:
- Удаленному рабочему столу не удается подключиться к удаленному компьютеру по одной из следующих причин:
Не включен удаленный доступ к серверу - Удаленный компьютер выключен
- Удаленный компьютер не подключен к сети
Удостоверьтесь, что удаленный компьютер включен, подключен к сети и удаленный доступ к нему включен
Напоминаю, что вы можете проверить доступность порта , через утилиту Telnet. Проверять нам нужно порт 3389. Вероятнее всего он не ответит. Как я и писал выше откроем порты и создадим правило в брандмауэре. Для этого мы воспользуемся утилитой PSTools.
На выходе у вас будет архив с утилитами, который нужно будет распаковать через архиватор. Когда вы распакуйте его, зажмите клавишу Shift и кликните правым кликом по папке PSTools. Из контекстного меню выберите пункт «Открыть окно команд».
Введите вот такую команду:
Мой пример: PsExec.exe \\w10-cl01 -u root\Администратор -p пароль cmd
В итоге у вас будет произведено подключение к удаленному компьютеру, вы увидите в заголовке \\dns-имя: cmd. Это означает, что вы успешно подключены.
Далее вступает утилита командной строки netsh, благодаря ей мы создадим правило разрешающее входящие подключения по RDP.
Если вы до этого не включали через реестр доступ к удаленному рабочему столу, то так же это можно выполнить в PsExec.exe:
По идее все должно работать сразу и без перезагрузки, но если она требуется, то выполните команду:
Классический метод включения удаленного рабочего стола
С удаленным включением служб RDP мы разобрались, теперь напомню для новичков, как можно локально его активировать. По умолчанию данная служба, как я и писал не работает. Чтобы это исправить есть два метода. Универсальный метод для любой версии Windows, я буду показывать на десятке, но для семерки, восьмерки, все будет одинаково. Откройте проводник Windows. Найдите в левой части объект «Этот компьютер (Мой компьютер)». Кликните по нему правым кликом и из контекстного меню перейдите в пункт «Свойства».
У вас откроется окно система. В правой части нажмите пункт «Настройка удаленного доступа», которое вызовет окно свойств системы. НА вкладке «Удаленный доступ», чтобы активировать службы удаленных рабочих столов Windows, вам нужно активировать пункт «Разрешить удаленные подключения к этому компьютеру». После этого у вас в системе сразу будет работать RDP доступ.
А вот метод исключительно для Windows 10 или Windows Server 2016 и выше. Вы открываете параметры Windows. Переходите в пункт система. В системе будет пункт «Удаленный рабочий стол». Активируем ползунок «Включить удаленный рабочий стол». Выскочит окно с подтверждением, говорим «Подтвердить».
Все функционал RDP активен, можно подключаться с других компьютеров. Данный метод по сути ставит все тужу галку, что мы видели и в классическом окне системы.
Этот подход можно с натяжкой назвать удаленным методом включения RDP, так как на той стороне вам потребуются руки которыми вы будите управлять по телефоны.
Как включить удаленный рабочий стол (RDP) через PowerShell
Открываем на компьютере, где необходимо включить RDP службу оснастку PowerShell.
(Get-WmiObject Win32_TerminalServiceSetting -Namespace root\cimv2\TerminalServices).SetAllowTsConnections(1,1)
Вторая команда активирует галку «Разрешить подключение только с компьютеров, на которых работает удаленный рабочий стол с проверкой подлинности на уровне сети»
(Get-WmiObject -Class «Win32_TSGeneralSetting» -Namespace root\cimv2\TerminalServices -Filter «TerminalName=’RDP-tcp'»).SetUserAuthenticationRequired(0)
Третья команда, включает правило в Брандмауэре
Enable-NetFirewallRule -DisplayGroup «Remote Desktop»
Данные команды вы можете собрать в скрипт и распространить его через групповую политику при включении компьютера или автологоне пользователя.
Как удаленно включить RDP через групповую политику
Данный метод включения удаленного рабочего стола на нужном компьютере возможен за счет домена Active Directory, благодаря централизованному управлению рабочих станций ваших сотрудников. Откройте редактор управления групповыми политиками. Создайте новую политику и прилинкуйте ее к нужному организационному подразделению, которое содержит нужный компьютер. После чего зайдите в свойства данной политики и измените ее настройки. Перейдите по пути:
Откройте эту настройку и включите ее. Не забываем после этого обновить групповую политику на нужном компьютере и не забываем там открыть порт для RDP. Так же политиками или локально.
Включив настройку вы можете указать конкретные ip-адреса откуда можно производить подключение или же ввести *, это будет означать, для всех.