tls 1.2 1.0 Windows 2008 R2 Server

时间:2018-05-11 13:04:55

标签: registry windows-server-2008-r2 tls1.2 tls1.0 tls1.1

我的情况如下;

客户< - TLS 1.0- - >服务器进程< --- TLS 1.2 --->后端 现有客户端需要继续将TLS 1.0与我的服务器进程通信(它们将在另一天升级),但“服务器进程”需要使用TLS 1.2与后端通信。我已经对注册表进行了以下更改,但是我不确定是否需要启用所有3个版本1.0,1.1和1.2,假设握手阶段将根据需要选择最高(正确)版本的TLS。

我已创建TLS1.0,TLS1.1和TLS 1.2密钥,然后为每个密钥创建客户端和服务器密钥。在每个下面我将DisabledByDefault设置为0(32位DWORD)并将Enabled设置为1(32位DWORD)。因此,所有3个版本的TLS都启用如下。这是正确的做法,还是我只需要启用1.2版本(客户端和服务器)并禁用所有其他版本?

Registry Looks like this 我正在运行Windows Server 2008 R2 Service Pack 1并且它是一个非常脆弱的环境,因此我需要在重新启动之前首次正确运行。除了这些变化,我不需要应用任何补丁,是吗?

...\Protocols\TLS 1.2\Server] "Enabled"=dword:00000001
...\Protocols\TLS 1.2\Server] "DisabledByDefault"=dword:00000000
...\Protocols\TLS 1.2\Client] "Enabled"=dword:00000001
...\Protocols\TLS 1.2\Client] "DisabledByDefault"=dword:00000000
...\Protocols\TLS 1.1\Server] "Enabled"=dword:00000001
...\Protocols\TLS 1.1\Server] "DisabledByDefault"=dword:00000000
...\Protocols\TLS 1.1\Client] "Enabled"=dword:00000001
...\Protocols\TLS 1.1\Client] "DisabledByDefault"=dword:00000000
...\Protocols\TLS 1.0\Server] "Enabled"=dword:00000001
...\Protocols\TLS 1.0\Server] "DisabledByDefault"=dword:00000000
...\Protocols\TLS 1.0\Client] "Enabled"=dword:00000001
...\Protocols\TLS 1.0\Client] "DisabledByDefault"=dword:00000000

万分感谢你的帮助。

亲切的问候

格雷厄姆

2 个答案:

答案 0 :(得分:0)

客户端密钥出站,服务器为入站连接。 因此,您可以决定启用哪些协议以及哪种连接类型。

我将按照上面的操作进行操作,然后禁用服务器密钥TLS1.0 这是InBound连接,并启用Client TLS1.0-> TLS1.2作为 您的后端仍然需要大声疾呼才能使用TLS1.0,并在以后进行处理。

如果它是.NET Framework应用程序,则还需要启用StrongEnCryption 都使用32位和64位,否则仅使用TLS1.0。


[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft.NETFramework \ v4.0.30319] “ SchUseStrongCrypto” = dword:00000001

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft.NETFramework \ v4.0.30319] “ SchUseStrongCrypto” = dword:00000001


Windows 2008 R2和更高版本能够使用TLS1.1和TLS1.2。较低的OS版本需要在前面安装PROXY。

祝你好运

答案 1 :(得分:0)

忘了Graham ....使用实例SSLAB来验证前后的更改 如果该站点可公开访问...否则我有一个PowerShell脚本要检查 启用或不启用哪个版本:-),但是在应用和使用更改之前,您仍然需要REBOOT服务器。