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