来源地址:http://www.chendexin.com/archives/443.html
虽然我一直很拒绝使用Widnows自带的远程桌面连接来维护服务器,但是有些时候还是会碰到需要使用自带的MSTSC组件来维护服务器的,比如有的时候帮朋友代维护的服务器。最近就碰到台服务器,远程上去,用不了两分钟,什么都还没操作,便连接断开了。
刚开始以为是机房有内网攻击,或是服务器上在对外,后面发现不论是重启IIS,还是关闭IIS,重启服务器,都没有效果,曾一度以为是硬盘要坏了。于是我检查了一下日志文件,发现是终端服务器安全层在协议流中检测到错误,并已取消客户端连接。
虽然找到了问题所在,可无论怎么试问题仍旧,用其它电脑试连接,还是一样的问题。
经过网上查找资料及分析,原来是注册表中的“Certificate”子键被损坏,才导致用户无法与终端服务器进行正常通信。
原因分析:
Certificate子键负责终端服务通信中数据信息的认证和加密,它一旦被损坏,终端服务的协议组件就会检测到错误,中断客户机与终端服务器之间的通信。导致Certificate子键损坏的原因很多,如管理员安装和卸载某些系统软件、对终端服务参数的不合理配置等。这时我们需要重置该键值中的内容,才能修复终端服务。
解决办法:
进入注册表编辑器窗口,展开
“HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTermServiceParameters”,
找到名为“Certificate”的子键,将它删除,重新启动Windows 2003 Server服务器,系统就会重新生成“Certificate”子键,这样客户端就能正常连接到终端服务器了.
注意:Windows 2008 R2修改注册表的路径为HKEY_LOCAL_MACHINESYSTEMControlSet001ControlTerminalServerRCM删除Certificate后重启。
还不行的时候,可以考虑调整rdp-tcp,在控制面板,管理工具,远程桌面服务,远程桌面会话主机配置,双击右边的连接名,在常规里面找安全层,设置为RDP安全层,这样应该就不会再有问题了。