Rdp вход по личному сертификату. Защита RDP соединения при помощи SSL. Как же подключиться к удаленному рабочему столу

Check what certificate rdp is using

You can check the thumbprint of the certificate the server is using. Windows Key R > Regedit {Enter} > Navigate to;

You can check this with the actual Certificate> Windows Key R > mmc {enter} > File > Add/Remove Snap-in > Certificates > Local Computer > Open Certificates > Personal > Certificates > Locate the certificate you ‘Think’ RDP is using and you can compare its thumbprint with the registry key you found above.

Or you can execute the following PowerShell command to get the RDP certificates thumbprint;

Create a gpo to secure rdp access with certificates.

10. From the Group Policy Management Console, create (or edit) a GPO and give it a sensible name.

11. Edit that policy and navigate to;

Locate the ‘Server authentication certificate template’ policy.

12. Enable it and set the template name to RemoteDesktopSecure > Apply > OK.

13. In the same location, locate the ‘Require use of specific security layer for remote (RDP) connections’ policy.

14. Enable the policy and set the security layer to SSL (TLS 1.0) > Apply > OK > Exit the policy editor.

15. Link the GPO to an OU that contains the servers you want to apply the policy to.

16. You may need to wait a short while, but eventually the servers will get their certificates.

Note: This view is simply ‘Microsoft Management Console’ with the ‘Certificates (Local Computer)’ snap-in added.

17. To prove it’s working, try connecting from a client that does not trust your Domain CA, and you should see an error something like this.

Create an rdp certificate template

1. On the domain CA Launch the Certification Authority Management Console > Certificates Templates > Right click > Manage.

2. Locate, and make a duplicate of, the Computer template.

3. General tab > Set the display and template name to RemoteDesktopSecure.

4. Extensions tab > Application Policies > Edit > Add.

5. New > Name=SSL Secured Remote Desktop > Object Identifier=1.3.6.1.4.1.311.54.1.2 > OK.

6. Select the policy you have just created > OK.

7. Remove the other policies, so only the one we have just created remains > OK.

8. Security tab > Ensure that the the computer groups you want to apply the template to, are selected for Read and Enroll. (Below I’ve put three examples, firstly I create a group for my servers, secondly I just apply it to my domain controllers, or lastly I allow all Domain Computers). How you want to apply this depends on you.

9. Issue/Publish the new certificate template.

Create trusted remote desktop services (rdp) ssl certificate

For Windows Server 2022/2022 and Windows 10, see my new post:Trusted Remote Desktop Services SSL Certs for Win10/2022

For Windows environments that want extra security, one of the features that has been around for ages is requiring TLS 1.0 for Windows RDP (Remote Desktop) connections. This functionality requires a certificate on the server, since TLS is based on the usage of X.509 certificates. Installing a RDP SSL certificate is easy.

By default Windows will create a self-signed certificate automatically for use with RDP. But as we all know, self-signed certificates are nearly worthless, and could easily be intercepted for man-in-the-middle attacks. So one should reconfigure Windows to use a trusted certificate. Thankfully this is fairly easy, and once configured, pushed down to all servers via GPO for automated deployment.

I’ve validated that this procedure works both on Windows Server 2008 R2 and Windows Server 2022. It may work on Windows Server 2008.It requires the use of a Microsoft enterprise online certificate authority. Again, I’ve used both Windows Server 2008 R2 and Windows Server 2022 CAs with success. Not surprising, since certificates are industry standard. For the purposes of this article I’ll use Windows Server 2008 R2 CA, and Windows Server 2022 “target” server.

The general process is first creating a new Certificate Authority certificate template that has an extended key usage to limit its use to only Remote Desktop TLS sessions. Second, we configure a GPO setting to automatically configure servers to request a certificate via this template, and use it for RDP TLS. Refresh GPO on the target server, and finally we attempt to connect via a stand-alone computer to verify it sees the certificate that we deployed.

1. On your Microsoft certificate authority server open the Certificate Templates console.

2. Duplicate the Computer template and use the Windows Server 2003 Enterprise format (Server 2008 v3 templates will NOT work).

3. Change the template display name to RemoteDesktopComputer (no spaces). Verify the Template Name is exactly the same (no spaces). You can use a different name if you want, but both fields must match exactly.

4. Now we need to create an application policy to limit the usage to RDS authentication, then remove the other application uses for the certificate. On the extensions tab click on Application Policies then click on Edit.

5. Click on Add, then click on New.  Set the value of Name to Remote Desktop Authentication. Change the object identifier to 1.3.6.1.4.1.311.54.1.2.

6. From the Application Policies list, select Remote Desktop Authentication.

7. Back on the certificate template properties, remove all other entries. Only Remote Desktop Authentication should be present.

8. If you wish, you can modify the validity period of the certificate, making it say two years instead of the default of one.

9. You probably want to secure your domain controllers as well, so for that we need to modify the security setting on the template. Open the Security tab and add the group Domain Controllers and give the group Read and Enroll (not Autoenroll).

10. Open the MMC snap-in for managing your Certificate Authority and locate the Certificate Templates node. Right click, select New, then Certificate Template to Issue. Choose the RemoteDesktopComputer template.

11. Next up is configuring the GPO to utilize the new template. You can modify any GPO you wish, or create a new one. Obviously the scope of the GPO should cover any servers that you want to secure with TLS. This could be a server baseline GPO, domain GPO, or whatever you want.

12. In the GPO editor locate the node Computer ConfigurationPoliciesAdministrative TemplatesWindows ComponentsRemote Desktop ServicesRemote Desktop Session HostSecurity. Modify the Server Authentication Certificate Template setting. Enable the policy and enter the certificate template name that exactly matches what you created in your CA.

13. In the same GPO node, configure the Require use of specific security layer for remote (RDP) connections to use SSL (TLS 1.0).

14. Wait for the GPO to replicate, then refresh the GPO on a test server. Wait a minute, then open the Certificates MMC snap-in for the computer account. Look in the PersonalCertificates store for a certificate that has the Intended Purposes of Remote Desktop Authentication. If it’s not there, wait a minute, and refresh. If it never appears, something is wrong. Look at the gpresult to make sure your GPO is being applied to the server.

15. Once the certificate appears, double click on the certificate to open it. On the Details tab look at the first few characters of the thumbprint value and remember them.

16. To make sure the RDP service is aware of the new certificate, I restart the Remote Desktop Services service.

17. Open an elevated PowerShell prompt and run this command:

Get-WmiObject -class “Win32_TSGeneralSetting” -Namespace rootcimv2terminalservices -Filter “TerminalName=’RDP-tcp’”

Validate that the Security Layer value is 2 and that the thumbprint matches the certificate. If both of those settings are correct, then you are good to go!

As a quick test I attempted to connect to this server from a non-domain joined computer that did not have the root certificate for my CA. I configured the RDP client to warn on any security issues. As expected, the client threw errors about the CRL not being available, and that it didn’t trust the chain. I also viewed the certificate and verified it was the correct one.

It seems Windows 8 has much more stringent certificate checking than Windows 7. The screenshots below are from Windows 7, in case you didn’t recognize the chrome. When using a Windows 7 non-domain joined computer to access the same TLS protected server, I got NO certificate warnings. That was even with the RDP 8 add-on hotfix. I’m glad to see Win8 does thorough certificate validation.

Connecting to the same server from a domain-joined computer that trusted the root CA resulted in no security warnings and a successful connection. If you look at a Wireshark capture you can also validate that CRL information is being exchanged between the computers, which means TLS is being used.

Problem

This ensures that traffic that is sent over an RDP connection to a server is protected by TLS/SSL Encryption. IT DOES NOT stop clients connecting to an RDP server if they do not have a trusted certificate. If you need that level of security, that should already be done by 802.1x.

Записки it специалиста

Технический блог специалистов ООО»Интерфейс»

Как работает rohos logon key с remote desktop.

Rohos Logon Key
интегрируется в процедуру авторизации Windows Terminal Services и добавляет уровень двухфакторной авторизации в существующую инфраструктуру контроля доступа в систему. После настройки Rohos Logon Key пользователи смогут входить на Удаленный Рабочий Стол либо только при помощи USB-Ключа, либо при помощи USB-Ключа и пароля.

Настройка

Поставщик услуг безопасности CredSSP является частью операционной системы и входит в состав Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2. Кроме того, он может быть установлен в качестве отдельного обновления на Windows XP SP3.

1. Запустить редактор реестра regedit и перейти в ветку: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa.

2. Добавить значение tspkg
к ключу Security
Packages

3. Перейти
в
ветку
реестра
: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProviders
.

4. Добавить значение credssp.dll
к ключу SecurityProviders
(остальные значения этого ключа следует оставить неизменными).

После того как CredSSP включен, необходимо настроить его использование с помощью групповых политик или соответствующих им ключей реестра. Для настройки SSO на клиентских компьютерах используются групповые политики из раздела:

Настройка групповой политики для выдачи rdp сертификатов

Теперь нужно настроить доменную политику, которая будет автоматически назначать RDP сертификат компьютерам/серверам согласно настроенного шаблона.

Настройка доверенных ssl/tls сертификатов для защиты rdp подключений

В этой статье мы покажем, как использовать доверенные SSL/TLS сертификаты для защиты RDP подключений к компьютерам и серверам Windows в домене Active Directory. Эти сертфикаты мы будем использовать вместо самоподписанных RDP сертификатов (у пользователей появляется предупреждение о невозможности проверки подлинности при подключению к RDP хосту с таким сертификатом).

Подключение к удаленному рабочему столу

При подключении мы увидим вот такое диалоговое окно сетевой идентификации.

Следует выбрать имя пользователя и ввести пароль учетной записи на TS.

Если проверка подлинности пароля прошла успешно, то происходит подключение к Удаленному Рабочему Столу. На этом этапе Rohos Logon Key проверяет наличие USB-Ключа пользователя.

Rohos Logon Key может остановить доступ, если USB-Ключ не подключен:

Если используется токен с одноразовым паролем, появится окно для его ввода.

Подписываем rdp файл и добавляем отпечаток доверенного rdp сертификата

Если у вас отсутствует CA, но вы хотите, чтобы при подключении к RDP/RDS серверу у пользователей не появлялось предупреждения, вы можете добавить сертификат в доверенные на компьютерах пользователей.

Как описано выше получите значение отпечатка (Thumbprint) RDP сертификата:

Get-WmiObject -Class «Win32_TSGeneralSetting» -Namespace rootcimv2terminalservices|select|select SSLCertificateSHA1Hash

Используйте этот отпечаток для подписывания .RDP файла с помощью RDPSign.exe:

Портативный rohos logon key

Программа поможет вам, если вы используете USB flash drivе,
но не можете или не желаете устанавливать на локальный компьютер ни Rohos Logon Key,
ни Rohos Management tools
. Этот компонент автоматически копируется на флешку во время создания ключа на терминальном сервере.

Кроме того его можно получить, запустив программу USB key manager
Pro лицензия
— для доступа через Remote desktop к сетевому компьютеру(не терминальный сервер), а также для использования в условиях домена.
Серверная лицензия
— специально предназначена для Терминального Сервера(Windows 2003, 2008,2022 с доступом через Remote Desktop)

Попробовать Rohos Logon Key бесплатно
в течении 15-дней. Rohos Logon Key.

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

Alexander Antipov

В статье приведен обзор алгоритма работы технологии прозрачной авторизации Single Sign-On и поставщика услуг безопасности Credential Security Service Provider (CredSSP). Рассмотрен способ настройки клиентской и серверной частей.

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

Практическая информация

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

«AllowDefCredentialsWhenNTLMOnly»=dword:00000001

«ConcatenateDefaults_AllowDefNTLMOnly»=dword:00000001

Предупреждение о самоподписанном сертификате rdp

По умолчанию в Windows для защиты RDP сессии генерируется самоподписанный

сертификат. В результате при первом подключении к RDP/RDS серверу через клиента mstsc.exe, у пользователя появляется предупреждение:

Чтобы продолжить установление RDP подключении пользователь должен нажать кнопку Да. Чтобы RDP предупреждение не появлялось каждый раз, можно включить опцию “Больше не выводить запрос о подключениях к этому компьютеру».
Rdp вход по личному сертификату. Защита RDP соединения при помощи SSL. Как же подключиться к удаленному рабочему столу

Преимущества защиты терминального сервера.

  • Метод позволяет ограничить удаленный доступ для некоторых пользователей или списка пользователей.
  • Такие пользователи обязаны каждый раз вставлять USB ключ или вводить код OTP.
  • Каждый ключ уникален и не может быть подделан
  • Нет необходимости подключать USB ключ непосредственно к серверу при его настройке.
  • Не нужно устанавливать программу на каждый компьютер, с которого осуществляется доступ*.
  • Администратору всего лишь необходимо предварительно настроить и выдать пользователю USB-Ключ для доступа.

Повышенная
безопасность посредством электронного
USB-Ключа либо Одноразовых паролей:

Перед тем как приступить к настройке Rohos Logon key необходимо определиться:

  • какой тип USB-Ключа будет использован для авторизации;
  • какой тип аутентификации вы хотите использовать:
    1) двухфакторный = USB-Ключ Windows Пароль,
    2) однофакторный = USB-Ключ (сюда также входит вариант USB-Ключ PIN-код ключа если таковой имеется),
    3) использовать USB-Ключ только на локальном ПК. При этом Терминальный сервер не будет проверять наличие USB-Ключ у клиента.

* В случае использования USB flash drive
в качестве ключа доступа, на компьютер клиента необходимо установить одну из двух программ: либо программу , либо . В процессе создания ключа на сервере, на USB — накопитель будет скопирован , обеспечивающий использование USB диска в качестве ключа для подключения к Remote Desktop.

После того как вы определились с типом USB-Ключа и способом двухфакторной авторизации вы можете приступить к установке Rohos Logon Key .

Создаем шаблон rdp сертификата в центре сертификации (ca)

Попробуем использовать для защиты RDP подключений доверенный SSL/TLS сертификат, выданный корпоративным центром сертификации. С помощью такого сертификата пользователь может выполнить проверку подлинности RDP сервера при подключении. Предположим, что у вас в домене уже развернут корпоративной центр сертификации (Microsoft Certificate Authority), в этом случае вы можете настроить автоматическую выдачу и подключение сертификатов всем компьютерам и серверам Windows в домене.

Н на вашем CA нужно создать новый тип шаблона сертификата для RDP/RDS серверов.

  1. Запустите консоль Certificate Authority и перейдите в секцию Certificate Templates;
  2. Сделайте копию шаблона сертификата Computer (Certificate Templates -> Manage -> Computer -> Duplicate);
    Rdp вход по личному сертификату. Защита RDP соединения при помощи SSL. Как же подключиться к удаленному рабочему столу
  3. На вкладке General укажите имя нового шаблона сертификата – RDPTemplate. Убедитесь, что значение поля Template Name полностью совпадает с Template display name;
    Rdp вход по личному сертификату. Защита RDP соединения при помощи SSL. Как же подключиться к удаленному рабочему столу
  4. На вкладке Compatibility укажите минимальную версию клиентов в вашем домене (например, Windows Server 2008 R2 для CA и Windows 7 для клиентов). Тем самым будут использоваться более стойкие алгоритмы шифрования;
  5. Теперь на вкладке Extensions в политике приложений (Application policy) нужно ограничить область использования такого сертификата только для Remote Desktop Authentication (укажите следующий object identifier — 1.3.6.1.4.1.311.54.1.2). Нажмите Add -> New, создайте новую политику и выберите ее;
    Rdp вход по личному сертификату. Защита RDP соединения при помощи SSL. Как же подключиться к удаленному рабочему столу
  6. В настройках шаблона сертификата (Application Policies Extension) удалите все политики кроме Remote Desktop Authentication;Rdp вход по личному сертификату. Защита RDP соединения при помощи SSL. Как же подключиться к удаленному рабочему столу
  7. Чтобы использовать данный шаблон RDP сертификатов на контролерах домена, откройте вкладку Security, добавьте группу Domain Controllers и включите для нее опцию Enroll и Autoenroll;
    Rdp вход по личному сертификату. Защита RDP соединения при помощи SSL. Как же подключиться к удаленному рабочему столу
  8. Сохраните шаблон сертификата;
  9. Теперь в оснастке Certificate Authority, щёлкните по папке Certificate Templates, выберите New ->Certificate Template to Issue -> выберите созданный шаблон RDPTemplate.
    Rdp вход по личному сертификату. Защита RDP соединения при помощи SSL. Как же подключиться к удаленному рабочему столу

Типы usb ключей и технологии, подходящие для аутентификации через remote desktop с программой rohos logon key:

  1. Smart-карты, Java Cards (Mifare 1K)
  2. Токены на основе PKCS11. Например SafeNet eToken, Securetoken ST3/4, senseLock trueToken, RuToken, uaToken, iKey.
  3. Yubikey и OTP токены, например Google Authenticator
  4. USB Flash накопители. В этом случае после создания ключа на USB диск будет скопирован портативный компонент
    программы.

Установка своего сертификата для rdp

Можно ли каким-то образом, в клиентской винде не входящей в AD, для сервера удалённых рабочих столов установить свой сертификат?

Немного подробнее: После запуска службы (или если она у вас запущена, то после установки соответствующей галки на вкладке «Удалённый доступ» ) «Службы удаленных рабочих столов» создаётся самоподписанный сертификат (который помещается в хранилище Удалённый рабочий стол > Сертификаты) — хотелось бы его заменить на свой.

Чего только не перепробовал, но после удаления сертификата и перезапуска «Службы удаленных рабочих столов» создаётся новый самоподписанный сертификат, а все мои игнорируются.

Этапы подготовки соединения с использованием программы rohos logon key:

1. Установите программу Rohos Logon Key
на терминальном сервере
. В настройках программы укажите тип USB ключа.

2. Установите пакет Rohos Management Tools
на компьютер, с которого будет осуществляться доступ на удаленный рабочий стол для создания ключей.

3. Создание ключей
для доступа через RDC:

Подключите к локальному компьютеру ваш будущий USB ключ. Подключитесь к терминальному серверу через RDC. В настройках программы Remote Desktop
укажите, какие локальные ресурсы (USB диски или смарт-карты) следует предоставить удаленному компьютеру.

Запустите программу Rohos Logon Key
на терминальном сервере. Воспользуйтесь командой Setup a key
, укажите пользователя, для которого вы создаете ключ и, если необходимо, впишите его пароль.

Замечание
: Некоторые типы USB ключей можно создать в программе USB key manager
из пакета Rohos Managment tools
. Этот пакет устанавливается на компьютере администратора. После создания всех ключей в этой программе необходимо экспортировать их список на терминальный сервер. . В этой же программе есть кнопка, копирующая на USB накопитель программы.

4. Настройка Rohos Logon Key на Терминальном Сервере:

После создания всех ключей вы можете усилить безопасность сервера, запретив определенным пользователям доступ к нему без USB ключа. Откройте настройки программы Rohos Logon Key, список Разрешить доступ только с помощью USB-Ключа.

Варианты выбора:

Заключение

В статье рассмотрена технология прозрачной авторизации на терминальных серверах Single Sign-On. Её использование позволяет сократить время, затрачиваемое пользователем для входа на терминальный сервер и запуск удаленных приложений. Кроме того, с её помощью достаточно единожды вводить учетные данные при входе на локальный компьютер и затем использовать их при соединении с терминальными серверами домена. Механизм передачи учетных данных достаточно безопасен, а настройка серверной и клиентской части предельно проста.

Бывает такие случаи, когда при использовании RDP (Remote Desktop Protocol — протокол удалённого рабочего стола), не видно программ, которые установленные в системном трее, или ошибки и уведомления просто не отображаются. Для того, чтобы решить данную проблему, к терминальному северу можно подключиться в консольном режиме через тот же RDP.

Удаленный рабочий стол (Remote Desktop Protocol) или RDP – это технология дистанционного подключения к компьютеру (серверу), для непосредственного управлению им через локальную сеть или интернет. Я уже рассказывал о данной технологии в видеоуроке «Подключение к компьютеру через удаленный рабочий стол ».

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

При использовании клиента удаленного рабочего стола (RDP) Windows, в качестве средства подключения к компьютеру с Windows Server 2003/2008/2022 с запущенной службой сервера терминалов, у вас есть возможность подключения на консоль сервера. Используя эту опцию, вы можете войти на сервер, так, как если бы вы сидели прямо перед ним, а не создавать новые сессии через сетевое подключение.

Включение удаленного доступа на своем компьютере.

Для того, чтобы настроить удаленный доступ на целевом компьютере, владелец или администратор должен выполнить следующие действия (Мой компьютер Свойства Настройка удаленного доступа Удаленный доступ Разрешить подключение от компьютеров с любой версией удаленного рабочего стола
).

Если хотите пускать в свой компьютер только определённых пользователей или группы пользователей вашей сети, то необходимо поставить галочку «Разрешить подключение с компьютеров, на которых работает удаленный рабочий стол с проверкой подлинности на уровне сети (рекомендуется)».

Как же подключиться к удаленному рабочему столу?

Это конечно же стандартными средствами Windows (Пуск Все программы Стандартные Подключение к удалённому рабочему столу
)

Или через команду Выполнить
(Win

R
)
и вводим команду mstsc
. Это более быстрый способ и его используют в основном админы и разработчики программ, т.к. часто приходится подключаться к удаленным рабочим столам серверов.

Как же подключиться к консоли удаленного рабочего стола?

Для этого в появившемся окне вбиваем команду:

Windows Server 2003 и Windows XP: mstsc /console

Похожее:  Google Play Services: Как сделать автоматическую авторизацию? — Хабр Q&A

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *