今天想在“雾小脑”上面部署Web应用服务,为了方便当然是远程登录了。通过快捷键Win R打开运行对话框并输入指令“mstsc”就可以打开“远程桌面连接”工具,然后在“计算机”框中输入要连接到的服务器的IP地址和端口号就可以开始连接了。在弹出的“Windows安全中心”输入远程服务器的登录账号和密码,正常情况下就可以登录服务界面的。但是这里遇到了错误,提示:”出现身份验证错误“,要求的函数不受支持。
ping服务器
关于Windows Server 远程桌面连接不上的问题需要从网络、端口、服务、防火墙这几方面进行检查,首先我们先确认想网络是否通畅。最简单的就是通过ping命令来测试网络连接状态,ping可以用来检测本地主机是否能与另一台主机成功交换(发送与接收)数据包。当网络通畅时我们可以通过ping检测到服务器的响应速度,如果ping出异常也可以指明我们查找方向。这里我们可以看到ping的结果,是可以访问到服务器的。
telnet端口
既然可以访问到服务器那么我们再来再看看端口是否也允许被访问,Windows的远程端口默认为3398。检查端口我们可以使用telnet工具,telnet可以用来 测试端口号是否允许被远程访问。如果telnet可以进入说明该端口是允许被访问的,那么问题可能就出在服务器上了。服务器可能禁止了远程服务,或者开启了防火墙拦截远程服务。
是否允许被远程
查看服务器是否允许被远程,服务器桌面找到“此电脑”鼠标右键选择“属性”,选择“高级系统设置”->“远程”。我们可以看到“远程桌面”是允许远程连接到此计算机的,只是远程协助灰色不可选。远程协助是邀请他人来帮忙,他人可以控制我们的电脑。远程桌面是我们去协助他人,我们可以控制他人的电脑。
CredSSP
前面的错误提示我们可能是由于CredSSP加密数据库修正导致的错误,CredSSP是处理应用程序的身份验证请求的身份验证提供程序。CredSSP 的未修补版本中存在远程代码执行漏洞, 成功利用此漏洞的攻击者可以在目标系统上中继用户凭据以执行代码。 任何依赖 CredSSP 进行身份验证的应用程序都可能容易受到此类攻击,此安全更新通过更正 CredSSP 在身份验证过程中验证请求的方式可以修复此漏洞。
CredSSP修正
微软官方给出了“由于CredSSP 加密Oracle修正”的解决方案,通过策略组来修正CredSSP。我们在“运行”中输入指令:gpedit.msc打开本地组策略编辑器,然后依次查找计算机配置->管理模板->系统->凭据分配。在右侧窗口中找到: 加密数据库修正。但是很遗憾的是我这台Windows Server服务器上貌似没有这个选项,也没有显示相关的更新补丁。
注册表修复
策略组没有相关的设置我们可以通过注册表来手动添加,我们在“运行”中输入指令:“regedit” 按Enter键即可打开注册表。在左侧依次查找路径:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters,然后在右侧窗口双击“AllowEncryptionOracle” 并把值设置成“2”。我这里到System 后就没有了,我们手动创建文件加并新建一个“DWORD(32位)值”并将名称修改为AllowEncryptionOracle。最后保存注册表并退出就可以登陆远程桌面了, 如有必要也可以重启一下电脑。重新尝试远程连接,还是提示错误:"由于CredSSP 加密Oracle修正"。
更新补丁
检查更新发现系统有可用更新,也不知道有没有我们需要的更新服务。不管了先更新一下吧,更新有点慢花了很长的时间。更新之后我们重启服务器来生效更新,重新尝试远程连接,还是提示错误:"由于CredSSP 加密Oracle修正"。我的个乖乖,到底问题出在哪里了???
修改服务器登录设置
返回去再检查一次,在服务器登录设置中我们看到一个选项“仅允许运行使用网络级别身份验证的远程桌面计算机连接(建议)”。这个应该跟身份验证有关系我们关掉试试?去掉勾选再尝试远程登录,Nice就是它了....。搞半天问题竟然在源头这里,真是瞎折腾了!
总结:
有时候答案就是眼前,却被我们给忽略了。结果绕了一圈又回到了原点,以后看东西得认真仔细些了。以上内容是小编给大家分享的【ASP.NET实战025:Server远程出现身份验证错误】。希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。
,