7.2.10. Xfreerdp возвращает некорректный код завершения при проверке аутентификационных данных
Проблема
Заголовок раздела «Проблема»При проверке корректности аутентификационных данных при вызове xfreerdp с параметром +auth-only код завершения равен 0, вне зависимости от того корректны ли данные или нет.
Причина
Заголовок раздела «Причина»Это может происходить если сервер не поддерживает требуемый уровень безопасности при подключении по протоколу RDP. В данном случае в выводе xfreerdp будет ошибка Error: SSL_NOT_ALLOWED_BY_SERVER.
Решение
Заголовок раздела «Решение»а) Решение для контроллера домена AD:
Изменить групповую политику на сервере, принудительно включив уровень безопасности SSL.
Для этого следует открыть редактор локальной групповой политики (это можно сделать, нажав комбинацию клавиш Win+R и набрав в появившемся окне gpedit.msc), перейти в раздел “Конфигурация компьютера → Административные шаблоны → Компоненты Windows → Службы удаленных рабочих столов → Узел сеансов удаленных рабочих столов → Безопасность”, затем следует изменить параметр “Требовать использование специального уровня безопасности для удаленных подключений по протоколу RDP”, включив его и выбрав SSL в качестве уровня безопасности.
б) Решение для RDS-Farm:
- Подключиться к любому из SH серверов фермы по RDP.
- Запустить оснастку “Диспетчер серверов”.
- Перейти в левой части менеджера серверов в пункт “Службы удаленных рабочих столов”:

- Опять в левой части оснастки перейти в пункт “Коллекции” и выбрать саму коллекцию, которая находится ниже самого пункта (всё ещё в левой части):

- В правой части найти окно “Свойства коллекции”:

- Открыть подменю “Задачи” для данного окна и выбрать пункт “Изменить свойства”:

- В открывшемся окне перейти в левой части на пункт “Безопасность”:

- Нужно изменить “Уровень безопасности” на TLS (SSL) и включить Network Level Authentication.
Если видите такую ошибку:

То нужно собрать серверы в группу:


После чего всё должно заработать корректно.

