远程桌面“内部错误”在安装“NSA”修补程序后才会连接

我刚刚安装了最新的Windows更新(NSA漏洞补丁星期二),现在我无法连接到远程桌面。

  • 该服务器是远程托pipe的。 我没有物理访问权限。 Server 2012 R1。
  • 幸运的是所有的网站在重启后都运行正常。
  • 我还没有尝试过第二次重启,因为我有点害怕。
  • 当我尝试连接时,我立即得到这个消息:
  • 远程桌面连接 :发生内部错误”

在这里输入图像说明

  • 已经从多个客户端尝试过。 他们都失败 – 包括一个iOS应用程序,另外给我一个0x00000904错误。
  • 如果我运行telnet servername 3389那么它会启动一个连接,所以我知道端口是打开的。
  • 我可以很好地连接到我的Win 10(未打补丁)的机器上的其他服务器。
  • 我无法连接我的第二台笔记本电脑,这是Win 10 Creators版本。
  • 在事件查看器中找不到有用的东西。
  • 我甚至尝试了wireshark,它没有显示任何有用的东西。
  • 我必须诊断的最好的能力是上传一个ASPX页面并运行它。

我知道最近的“NSA版”补丁综合报告有一些RDP修复 – 但我找不到任何突然有问题的人。

在联系托pipe公司之前,我想知道问题是什么,这就是为什么我在这里发布信息。


更新:

虽然我还没有物理服务器访问,我记得我有一个Windows 7虚拟机托pipe在服务器本身。 我能够进入这个并通过连接到10.0.0.1本地IP打开服务器证书pipe理单元。

这表明RDP证书确实已经过期 – 虽然在连接时没有出现任何错误。 我当然一直在连接每天,因为它过期2个月前我的猜测是某种安全更新删除远程桌面存储中的任何其他证书,它不会自我更新。

所以现在试图找出一种方法来安装不同的证书。

更新2

最后在“pipe理事件”下的事件日志(通过虚拟机远程连接)中find了这一点:

“terminal服务器未能创build一个新的自签名证书用于SSL连接上的terminal服务器身份validation,相关的状态码是Object已经存在。

这似乎有帮助,虽然是一个稍微不同的错误。 今晚不能重新启动,明天再次检查。

https://blogs.technet.microsoft.com/the_9z_by_chris_davis/2014/02/20/event-id-1057-the-terminal-server-has-failed-to-create-a-new-self-signed-certificate/

在这里输入图像说明

解决scheme基本在这里

https://blogs.technet.microsoft.com/askpfeplat/2017/02/01/removing-self-signed-rdp-certificates/

这也有帮助:

https://social.technet.microsoft.com/Forums/ie/en-US/a9c734c1-4e68-4f45-be46-8cae44c95257/unable-to-remote-desktop-to-windows-server-2012-due-to-失败对创build自签署证书?论坛= winserverTS

假设您已经validation证书>远程桌面>证书下列出的证书是无效的…

在这里输入图像说明

注意:我修复了所有内容之后,我截取了这个截图 – 所以这个截止date就是它自己完成的新创build的证书。

你基本上需要重命名或者删除这个文件,然后重新创build它:

“C:\ ProgramData \微软\encryption\ RSA \ MachineKeys的\ f686aace6942fb7f7ceb231212eef4a4_a54b3870-f13c-44bb-98c7-d0511f3e1757”

这是一个从f686aace开始的着名的文件名。 然后重新启动Remote Desktop Configuration服务,它应该重新创build它。 (注意:实际上可能没有必要重新启动服务 – 只要等待一分钟内是否使用相同的文件名重新创build即可)。

这可能需要一些混乱的权限,你可能需要获得文件的所有权,然后再申请权限。 注意:所有权并不意味着权限。 所有权后您必须添加权限。


正如我所说我没有物理访问服务器 – 如果你这样做,那么上述就够了。

我很幸运能够通过同一本地networking上的另一台计算机进行远程连接,并更改registry。

我想禁用身份validation,所以我可以远程连接并获得访问权限。 registry项是HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

将现有的密钥SecurityLayerUserAuthentication0

创build一个RDP文件(打开mstsc并input服务器名称后单击保存),然后在记事本添加行enablecredsspsupport:i:0地方。 这会禁用安全性的期望。

当你运行RDP文件时,它应该允许你不安全地连接并访问你的服务器。

只要您连接更改这两个registry项,然后继续并删除f686...文件…