云服务器不能远程登录-CredSSP,解决方案:卸载KB4103727补丁

[云计算] 季雨林 2018/5/14 10:40:49

经常使用window服务器的朋友,最近会发现客户端远程桌面连接服务器失败,腾讯云,阿里云等等云服务器更加明显。

心急解决问题的读者请直接参考文章末尾的红字提示操作,绕过细节部分!

原因在于最近 windows 10系统,悄悄进行了一次强制更新,然后部分电脑远程登录出现这样的错误提示:

出现身份验证错误。
要求的函数不收支持。
远程计算机:xxx.xxx.xxx.xxx
远程计算机 这可能是由于CredSSP加密Oracle修正。
若要了解详细信息,请访问 https://go.microsoft.com/fwlink/?linkid=866660

出现身份验证错误。要求的函数不收支持。远程计算机 这可能是由于CredSSP加密Oracle修正。


新手上云( 2bit.cn )总结:这类问题非常常见,然而新手往往很慌。实际不用紧张,有以下三种途径解决这个问题,照做即可


方法一:(倒退型解决)

经过查询,这是一个系统补丁导致的,解决此问题,其中一个办法是卸掉这个补丁(KB4103727)。卸载补丁即可解决


可是,不能远程登录怎么卸载?

这时候就用上了阿里云官网控制台的“远程连接”功能,这个远程连接,相当于物理机直接连接显示器的效果,因此不需要执行远程登录的过程。可以直接输入密码进入服务器。


最后解释:卸载更新是个并不算合理的做法,只是偷懒有效。


细节解释:

远程桌面使用的是“凭据安全支持提供程序协议 (CredSSP) ”,这个协议在未修补的版本中是存在漏洞的。

于是微软在 2018 年 3 月 13 日在补丁中解决了这个问题,但是默认并没有强制使用新的协议,因为一旦强制使用,假如服务器端和客户端不匹配,将无法连接。所以用户并不会感知到。

在 2018 年 5 月 8 日,微软在补丁中将客户端策略提严了一点,mstsc 登录就会有提示了,就会出现如上的错误了,用户就会知道这事了。


方法二:(进步型解决)

客户端下载微软补丁解决,下载地址:https://portal.msrc.microsoft.com/zh-cn/security-guidance/advisory/CVE-2018-0886 ,选择配套自己的机器的补丁包进行下载,安装后即可使用远程桌面连接。

此方法属于顺应微软处理漏洞的方式,服务端客户端同时打补丁升级系统。因此取名进步型解决方法


方法三:(工程师模式)系统管理员请看下文:

(后续内容部分取自:http://www.cftea.com/m/c.asp?docID=8182

关于微软这次更新,有个配置,更改这个配置可以决定是使用以前的那种连接,还是修补过的连接。这个问题会影响到服务器端和客户端 ,所以这个配置在服务器端和客户端均可配置。

【针对服务器端】

如果这个值是 0,那么要求客户端必须是修补了 CredSSP 的。

如果这个值是 1,那么要求客户端可以是没修补 CredSSP 的。

如果这个值是 2,那么要求客户端可以是没修补 CredSSP 的。(和 1 一样)

2018 年 5 月 8 日,微软将这个默认值修改为了 1。

【针对客户端】

如果这个值是 0,那么要求服务端必须是修补了 CredSSP 的。(和 1 一样)

如果这个值是 1,那么要求服务端必须是修补了 CredSSP 的。

如果这个值是 2,那么要求服务端可以是没修补 CredSSP 的。

2018 年 5 月 8 日,微软将这个默认值修改为了 1。

也就是说:

0:服务器端、客户端都必须是修补了 CredSSP 的。

1:服务器端没要求客户端、但是客户端要求服务器端是修补了 CredSSP 的。 

2:服务器端、客户端都可以是没修补 CredSSP 的。


怎么处理?

根据需求,修改这个值,比如现在还没准备好全部打补丁,那么就都修改为 2。

常用方法:

在自己的客户端电脑中运行 gpedit.msc  ,依次找到“计算机配置”->“管理模板”->“系统”->“凭据分配”,这里面有个“加密 Oracle 修正”,改之。


万能方法:( Windows 10 家庭版,没有 gpedit.msc 适用)

那直接改注册表

1,运行框输入 regedit 命令打开注册表编辑器

2查找路径 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters

新建一个 32 位的、DWORD 类型的 AllowEncryptionOracle,然后为其设置相应的值(建议设置为2),如果此路径某些节点不存在,手动创建即可。


注意:

注册表中可能没有相应的项,那就手动新建。

还有如果是 64 位系统,但是新建的 64 位值无效,那就尝试新建 32 位值。

最后需要重启。



原文地址: https://www.opengps.cn/Blog/View.aspx?id=93 文章的更新编辑依此链接为准。欢迎关注源站原创文章!

评论

暂无评论!

发表评论:

用于接收作者回复信息
点击更换验证码 - openGPS提示