Я только что установил последнее обновление Windows (исправление уязвимости АНБ во вторник) и теперь не могу подключиться к удаленному рабочему столу.
telnet servername 3389
тогда он инициирует соединение, поэтому я знаю, что порт открыт.Я понимаю, что в недавнем обзоре патчей NSA edition были некоторые исправления RDP, но я не могу найти никого, у кого внезапно возникли проблемы на неделе.
Я хочу понять, в чем проблема, прежде чем связываться с хостинговой компанией, поэтому я публикую здесь.
Обновить:
Хотя у меня до сих пор нет физического доступа к серверу, я вспомнил, что у меня есть виртуальная машина Windows 7, размещенная на самом сервере. Я смог разобраться в этом и открыть оснастку сертификатов сервера, подключившись к локальному IP-адресу 10.0.0.1.
Это показывает, что срок действия сертификата RDP действительно истек, хотя при подключении я не получаю ошибок, которые предполагают как таковые. Я, конечно, подключаюсь ежедневно, и поскольку срок его действия истек 2 месяца назад, я предполагаю, что какое-то обновление безопасности удалило любой другой сертификат, который был в магазине удаленного рабочего стола, и он не обновился.
Итак, я пытаюсь найти способ установить здесь другой сертификат.
Обновление 2
Наконец нашел это в журнале событий в разделе «Административные события» (путем удаленного подключения через виртуальную машину):
«Серверу терминалов не удалось создать новый самозаверяющий сертификат, который будет использоваться для аутентификации сервера терминалов в соединениях SSL. Соответствующий код состояния был« Объект уже существует ».
Это кажется полезным, хотя и немного другой ошибкой. Не могу перезагрузиться сегодня вечером, так что завтра придется снова проверить.
Решение в основном здесь
https://blogs.technet.microsoft.com/askpfeplat/2017/02/01/removing-self-signed-rdp-certificates/
Это тоже помогло:
Предполагая, что вы уже подтвердили, что сертификат, указанный в разделе Сертификаты> Удаленный рабочий стол> Сертификаты, недействителен ...
Примечание: я сделал этот снимок экрана после Я все исправил - так что этот срок годности - это вновь созданный сертификат, который он сделал сам.
Затем вам нужно переименовать или удалить этот файл, а затем он воссоздает его:
"C: \ ProgramData \ Microsoft \ Crypto \ RSA \ MachineKeys \ f686aace6942fb7f7ceb231212eef4a4_a54b3870-f13c-44bb-98c7-d0511f3e1757"
Это хорошо известное имя файла, начинающееся с f686aace
. Затем перезапустите Remote Desktop Configuration
сервис, и он должен воссоздать его. (Примечание: на самом деле может не потребоваться перезапуск службы - просто подождите, чтобы увидеть, воссоздан ли он с тем же именем файла в течение минуты).
Это может занять некоторое время с разрешениями, и вам может потребоваться стать владельцем файла, а затем дополнительно применить разрешения. Примечание. Право собственности не подразумевает разрешений. Вы должны добавить разрешения после вступления во владение.
Как я уже сказал, у меня нет физического доступа к серверу - если да, то вышеперечисленного должно хватить.
Мне посчастливилось подключиться удаленно через другой компьютер в той же локальной сети и изменить реестр.
Я хотел ОТКЛЮЧИТЬ аутентификацию, чтобы можно было подключиться и получить доступ удаленно. Записи реестра для этого: HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
Установите существующие ключи SecurityLayer
и UserAuthentication
к 0
Создайте файл RDP (откройте mstsc и нажмите Сохранить после ввода имени сервера) и в блокноте добавьте строку enablecredsspsupport:i:0
где-то. Это отключает ожидание безопасности.
Когда вы затем запустите файл RDP, он должен позволить вам НЕБЕЗОПАСНО подключиться и получить доступ к вашему серверу.
Как только вы подключитесь, измените эти две записи реестра обратно, а затем удалите f686...
файл...
Эти настройки устранили мою проблему:
1. В панели управления щелкните «Администрирование», а затем дважды щелкните «Локальная политика безопасности».
2. В настройках локальной безопасности разверните Локальные политики и щелкните Параметры безопасности.
3. В разделе «Политика» на правой панели дважды щелкните Системная криптография: использовать FIPS-совместимые алгоритмы для шифрования, хеширования и подписи, а затем щелкните «Включено». В моем случае это было отключено. Поэтому я просто включил его и выполнил указанную ниже команду.
Другой вариант, который решит эту проблему:
Протоколы не были включены на сервере. Я использовал IIScrypto и включил TLS1.2, и все начало работать
Привет всем в моей среде, это было вызвано тем, что был сгенерирован новый самоподписанный сертификат. TLS 1.0 либо отключен в реестре, либо не существует в реестре, а новый самоподписанный сертификат не был в хранилище доверенных корневых центров сертификации.
Вы можете доказать это двумя способами, прежде чем редактировать реестр. загрузите IIS Crypto и посмотрите, что включено и отключено в протоколах, шифров, хэше и обмене ключами.
Иногда, хотя IIS Crypto показывает, что TLS включен, даже если он не включен в реестре, просто к сведению.
Ваш следующий вариант - включить FIPS в локальной групповой политике, что приведет к включению и использованию TLS 1.0, 1.1 и 1.2. Включите FIPS, а затем попробуйте RDP на свой компьютер, на этот раз он будет работать, даже если TLS отключен в реестре. Вы не хотите использовать FIPS постоянно, хотя это только для устранения неполадок, поэтому отключите его на сервере и перейдите в реестр.
Направляйтесь к HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
и в разделе Протоколы добавьте три новых ключа, назовите их TLS 1.0
, TLS 1.1
, и TLS 1.2
затем создайте два подключа под каждой записью TLS Назовите их Client
и Server
.
Внутри Client
и Server
ключи создают две 32-битные записи DWORD с одним названием DisabledByDefault
с Value
установить на 0 и Enabled
со значением, равным 1.
Как только вы это сделаете, и срок действия вашего самоподписанного сертификата не истечет, и в правильных хранилищах вы снова сможете подключиться к RDP на свой сервер.