Dmitriy Poberezhniy IT technology

Dmitriy Poberezhniy IT technology Электронная цифровая подпись

Добавляем А запись

Dmitriy Poberezhniy IT technology

Просто добавляем A запись и вписываем в неё IP адрес сервера. На этом работа с доменом окончена.

Качаем WinAcme

. Архив лучше всего распаковать туда, куда вы не доберетесь, исполняемые файлы и скрипты вам еще пригодятся в будущем для автоматического обновления сертификата. Лучше всего вытряхнуть архив в C:WinAcme.

Открываем 80 порт

Dmitriy Poberezhniy IT technology

Разрешаем выполнение скриптов

Чтобы WinAcme смог без проблем импортировать новый сертификат, нужно разрешить выполнение скриптов. Для этого переходив в папку /Scripts/

Перед запуском WinAcme нам нужно разрешить выполнение двух скриптов. Для этого двойным кликом запустите PSRDSCerts.bat из папки со скриптами.

Устанавливаем сертификат

Dmitriy Poberezhniy IT technology

Дальше скопируйте строку ниже и введите имя домена, по которому хотите подключатсяь к серверу и выполните команду.

Dmitriy poberezhniy it technology

При настройке RemoteApp многие системные администраторы игнорируют возможность подписать RDP-файлы с помощью сертификата выданным доверенным центром сертификации. Какие положительные моменты мы сможем получить, если подпишем RDP-файл? Ответ очень прост: сертификат позволяет пользователям распознавать ресурсы организации и доверять им. Так же системный администратор может запретить выполнение не подписанных RDP-файлов, и  запретить выполнение RDP-файлов которые подписаны сертификатами выданные не “доверенными” центрами сертификации.

И так начнемс…

Шаг 1:
Выдаем сертификат для нашего RemoteApp приложения (приложений) доверенным ЦС:
Открываем оснастку СертификатыУчетной записи компьютера:

clip_image002
Далее Личное – Сертификаты – Действие – Все задачи – Запросить новый сертификат. Следуя мастеру, запрашиваем сертификат.

clip_image004

Шаг 2:
Открываем диспетчер удаленных приложений RemoteApp (remoteprograms.msc). Изменяем параметры цифровой подписи, указываем сертификат, который мы получили пунктом выше.

clip_image005

Шаг 3:
Создадим RDP-файл, который будет использовать в качестве цифровой подписи сертификат.

Шаг 4:

Переходим настройке групповых политик. Мы будем редактировать следующие Компоненты Windows – Службы удаленных рабочих столов – Клиент подключения к удаленному рабочему столу – Разрешить RDP-файлы от неизвестных издателей и Компоненты Windows – Службы удаленных рабочих столов – Клиент подключения к удаленному рабочему столу –Указать отпечатки SHA1 сертификатов. Эти групповые политики доступны как в разделе Конфигурация Компьютера, так и Конфигурация Пользователя

Читайте также:  Как зашифровать почту и сделать электронную подпись | GeekBrains - образовательный портал

Указываем отпечаток нашего сертификата

clip_image006

в групповой политике «Указать отпечатки SHA1 сертификатов»
clip_image008

Если этого не сделать, то при запуске приложения мы получим сообщение о том, что нужно проверить издателя приложения

clip_image009

Ипараметр «Разрешить RDP-файлы от неизвестных издателей» зададим «Отключить».

Подводим итоги:

Запуск rdp соединения с неподписанного .rdp файла

Или борьба с сообщением “Не удается найти издателя этого удаленного подключения. Установить соединение несмотря на это?” (“The publisher of this remote connection cannot be identified.  Do you want to connect anyway?”).

По ряду причин удобно поднимать соединение командой
mstsc <имя_конфигурации.rdp> /w <ширина окна в пикселах> /h <высота окна в пикселах>.
У меня для особо одаренных юзеров такой .rdp файл генерируется на компьютере пользователя автоматически, в него включаются такие плюшки, как:
screen mode id:i:2   – открывать соединение в окне (иначе пользователь в кнопках “пуск” запутается)
username:s:<имя_пользователя> – автоматически подставить нужное имя (нужно ввести только пароль)
redirectprinters:i:1 – принтеры можно будет использовать через EasyPrint
connection type:i:6 – Тип соединения – LAN (:1 – модем на 56К)

Однако при запуске – вылезает сообщение
Dmitriy Poberezhniy IT technology

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

Отметим, что при установке галочки в реестре по адресу
HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientLocalDevices
создается ключ
“имя сервера”=dword:00000044

0x00000044 (=68 dec)- это бигмак битмап разрешенных устройств.
Экспериментально установил, что
04 – буфер обмена
40 – принтеры клиента
Остальные значения мне недоступны (где-то там звук, COM порты, локальные диски клиента, смарткарты, USB).

В некоторых источниках фигурирует dword:00000005 (буфер есть, принтеров нет) и dword:0000006f (все включено).

Можно автоматизировать создание этого ключа реестра (кусок vbscript из hta пользователького интерфейса) –
===
Const rdp_ip1            = “192.168.x.y1”
Const rdp_ip2            = “192.168.x.y2”

      Set oReg=GetObject( _
“winmgmts:{impersonationLevel=impersonate}!\” & _
strComputer & “rootdefault:StdRegProv”)

      Dim strKeyPath
strKeyPath = “SoftwareMicrosoftTerminal Server Client”
strKeyPath = strKeyPath & “LocalDevices”
oReg.CreateKey HKEY_CURRENT_USER, strKeyPath
oReg.SetDWORDValue HKEY_CURRENT_USER, strKeyPath, rdp_ip1, “68”           ‘ 68 dec == 44 hex
oReg.SetDWORDValue HKEY_CURRENT_USER, strKeyPath, rdp_ip2, “68”
===

Читайте также:  Поиск тендеров » ТОП-27 ЛУЧШИХ агрегаторов ОБЗОР тендерных площадок

Бонус – набор ключей для rdp файла – http://www.donkz.nl/files/rdpsettings.html

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

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

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

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

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

Get-WmiObject -Class “Win32_TSGeneralSetting” -Namespace rootcimv2terminalservices|select|select SSLCertificateSHA1Hash

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

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

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

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

Не удалось проверить подлинность удаленного компьютер из-за проблем с сертификатом безопасности.
Ошибка сертификата: сертификат выдан не имеющим доверия центром сертификации.

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

Создаем шаблон 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);
    Microsoft Certificate Authority создать новый шаблон сертфиката для компьютеров и серверов
  3. На вкладке General укажите имя нового шаблона сертификата – RDPTemplate. Убедитесь, что значение поля Template Name полностью совпадает с Template display name;
    RDPTemplate - новый шаблон сертфиката для RDP подключений
  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, создайте новую политику и выберите ее;
    политика сертфиката - для Remote Desktop Authentication
  6. В настройках шаблона сертификата (Application Policies Extension) удалите все политики кроме Remote Desktop Authentication;шаблон сертификата Remote Desktop Authentication
  7. Чтобы использовать данный шаблон RDP сертификатов на контролерах домена, откройте вкладку Security, добавьте группу Domain Controllers и включите для нее опцию Enroll и Autoenroll;
    права для авто выпуска сертификатов rdp
  8. Сохраните шаблон сертификата;
  9. Теперь в оснастке Certificate Authority, щёлкните по папке Certificate Templates, выберите New ->Certificate Template to Issue -> выберите созданный шаблон RDPTemplate.
    новый шаблон сертфикатов в CA для rdp
Читайте также:  Лицензия на право использования КриптоПро CSP версии 5.0 и лицензия на право использования КриптоПро СКЗИ действуют определенное количество времени

Шаг нулевой. подготовка и вопросы доверия

Итак, наш пользователь тыкает на сохраненный файл с расширением .rdp и получает такой вот запрос:

«Зловредное» подключение.

Для избавления от этого окна используется специальная утилита под названием RDPSign.exe. Полная документация доступна, как обычно, на официальном сайте, а мы разберем пример использования.

Для начала нам нужно взять сертификат для подписывания файла. Он может быть:

  • Публичным.
  • Выданным внутренней службой Certificate Authority.
  • Вовсе самоподписанным.

Самое главное, чтобы сертификат имел возможность подписывать (да, можно отобратьу бухгалтеров ЭЦП), а клиентские ПК ему доверяли. Здесь я буду использовать самоподписанный сертификат.

Напомню, что доверие самоподписанному сертификату можно организовать при помощи групповых политик. Чуть больше подробностей — под спойлером.

Если проблемы с доверием решены, переходим непосредственно к вопросу подписи.

Шаг первый. размашисто подписываем файл

Сертификат есть, теперь нужно узнать его отпечаток. Просто откроем его в оснастке «Сертификаты» и скопируем на вкладке «Состав».

Нужный нам отпечаток.

Лучше сразу его привести к должному виду — только большие буквы и без пробелов, если они есть. Это удобно сделать в консоли PowerShell командой:

("6b142d74ca7eb9f3d34a2fe16d1b949839dba8fa").ToUpper().Replace(" ","")

Получив отпечаток в нужном формате, можно смело подписывать файл rdp:

rdpsign.exe /sha256 6B142D74CA7EB9F3D34A2FE16D1B949839DBA8FA .contoso.rdp

Где .contoso.rdp — абсолютный или относительный путь к нашему файлу.

После того как файл подписан, уже не получится изменить часть параметров через графический интерфейс вроде имени сервера (действительно, иначе смысл подписывать?) А если поменять настройки текстовым редактором, то подпись «слетает».

Теперь при двойном клике по ярлыку сообщение будет другим:

Новое сообщение. Цвет менее опасный, уже прогресс.

Избавимся же и от него.

Оцените статью
ЭЦП Эксперт
Добавить комментарий