请注意,这种情况与类似情况不同: 如何在不破坏 RDP 的情况下禁用 TLS 1.0?
链接的问题是关于 RDP 和禁用 TLS 1.0。
这个问题是关于 RemoteApp 和禁用 TLS 1.0
我已经在端口 3389 上使用 TLS 1.2 直接 RDP。
我们有一个托管 RemoteApp 的 2012R2 服务器。
我们在此服务器上安装了 RD 网关、RD Web 访问、RD 连接代理、RD 会话主机角色。
RemoteApp 通过 RD 网关通过 https 提供服务。我们唯一开放的公共端口是 443。
我们在所有 RD 角色和 IIS 中安装了公共 CA 提供的通配符 SSL 证书,因此所有内容都可以追溯到受信任的根证书。
该证书支持 TLS 1.2,当我查看 RDWeb 网站时,我在网络浏览器中看到了这一点。
我们将在此服务器上禁用 TLS 1.0 以加强安全性。我们正在使用 IISCrypto 2.0 禁用 TLS 1.0
当我们禁用 TLS 1.0 时,会观察到两件事:
1.RemoteApp停止工作。它们不能从最终用户机器上启动。
2.直 RDP 连接工作得很好。
当我们重新启用 TLS 1.0 时,RemoteApp 再次工作。
SChannel 日志记录确认 RemoteApps 正在使用 TLS 1.2,因此我希望 RemoteApps 在禁用 TLS 1.0 时继续工作。然而,这不是我所观察到的。
所有客户端都使用完全更新/修补的 Windows 8.1 和 10 版本。
将近一年后,我终于找到了一个可行的解决方案,可以在不破坏 RDP 和远程桌面服务连接的情况下禁用 TLS 1.0/1.1。
运行 IISCrypto 并禁用 TLS 1.0、TLS 1.1 和所有错误密码。
在运行网关角色的远程桌面服务服务器上,打开本地安全策略并导航到安全选项 - 系统加密:使用符合 FIPS 的算法进行加密、散列和签名。将安全设置更改为已启用。重新启动以使更改生效。
请注意,在某些情况下(特别是如果在 Server 2012 R2 上使用自签名证书),可能需要将安全策略选项网络安全:LAN Manager 身份验证级别设置为仅发送 NTLMv2 响应。
让我知道这是否也适合您。
系统加密:使用符合 FIPS 的算法进行加密、散列和签名。
这会再次秘密地重新启用旧协议。微软甚至不再推荐使用该设置。
我也一直在和这个作斗争。我还没有找到合适的解决方案。
Microsoft DOC 关于设置
微软文章不推荐
旧帖子,但我刚刚读到一篇文章,说如果您使用内部 SQL 服务器 (WID) 连接代理数据库,连接代理需要启用 TLS 1.0 才能与 WID 对话。您可以通过为连接代理使用“真实”SQL Server 数据库而不是内部 SQL WID 来解决此问题。
https://docs.microsoft.com/en-us/troubleshoot/windows-server/remote/rds-connection-broker-or-rdms-fails-caused-by-disabled-tls-10