Windows服务器上如何启用TLS1.2

86次阅读
没有评论

共计 2092 个字符,预计需要花费 6 分钟才能阅读完成。

这篇“Windows 服务器上如何启用 TLS1.2”文章的知识点大部分人都不太理解,所以丸趣 TV 小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Windows 服务器上如何启用 TLS1.2”文章吧。

首先测试一下自己的服务器究竟处于什么水平。

测试结果显示是支持 ssl3.0 的并且不支持 tls 1.2。证书使用 sha1 签名算法不够强。这点比较容易接受,因为 windows 服务器默认并没有开启 tls1.2。

要提高服务器的评级,有 3 点需要做。

使用 sha256 签名算法的证书。

禁用 ssl3.0,启用 tls1.2

禁用一些弱加密算法。

由于目前服务器使用的证书是近 3 年前购买的,正好需要重新购买,顺便就可以使用 sha256 签名算法来买新的证书就可以了。在生产环境部署之前,先用测试机测试一下。

根据这 3 条命令把证书颁发机构的签名算法升级上去。测试环境是 windows2012 r2, 默认的签名算法是 sha1

upgradecertification authority to sha256
http://blogs.technet.com/b/pki/archive/2013/09/19/upgrade-certification-authority-to-sha256.aspx
certutil -setreg ca\csp\cnghashalgorithm sha256net stop certsvcnet start certsvc

然后,在服务器中添加注册表键值并重启已启用 tls1.2 和禁用 ssl3.0

hkey_local_machine\system\currentcontrolset\control\securityproviders\schannel\protocols\tls1.2\server\enabled reg_dword 类型设置为 1.
hkey_local_machine\system\currentcontrolset\control\securityproviders\schannel\protocols\ssl3.0\server enabled reg_dword 类型设置为 0.

重新启动服务器,是设置生效。

由于测试机没有公网地址,所以去下载个测试工具,方便测试。

可以下载到 exe 或者 java 版本的测试工具,方便的在内网测试服务器支持的加密方式。

测试了一下,发现 tls1.2 没有启用。

难道是启用方法不对? 于是开始检查各种服务器的日志,也的确发现了 tls1.2 不能建立的报错了。

网上查了很多文章,也没有说什么解决办法。后来换了下证书,用回 sha1 的证书,tls1.2 就能显示成功启用了。

难道是证书有问题,于是就各种搜索 sha1 证书和 sha256 证书的区别,同时也测试了一些别人的网站,结果发现别人用 sha256 证书也能支持 tls1.2. 难道是我的 ca 有问题?

又研究了几天,也测试了 2008 r2 的机器还是同样的问题。正好新买的公网证书也下来了。就拿这张证书先放到测试服务器上测试,结果还是不行。但是别人的服务器的确可以啊。

用 powershell 来帮助我们启用 tls1.2 以及如何设定服务器的加密算法顺序。

setupyour iis for ssl perfect forward secrecy and tls 1.2
https://www.hass.de/content/setup-your-iis-ssl-perfect-forward-secrecy-and-tls-12
enablingtls 1.2 on iis 7.5 for 256-bit cipher strength
http://jackstromberg.com/2013/09/enabling-tls-1-2-on-iis-7-5-for-256-bit-cipher-strength/

那么问题究竟出在哪呢?可能的问题,sha256 证书有问题?服务器不支持 tls1.2?然后根据 windows 日志中的错误继续查找,都没能找到什么有用的信息。

用 ie 试了下访问网站,发现是可以的,于是抓包看一下,用的协议是 tls1.2。证明 tls1.2 在服务器上是已经启用的了。有 client hello 并且服务器也回应了 serverhello。

再仔细看客户端的 client hello 包,里面确实包含了 extension 信息。

看之前 testtlsserver.exe 测试失败并抓下来的包。并没有 server hello 的包回来。clienthello 里的确没有扩展信息。

于是,让同事帮忙把测试服务器发布到公网上,用

测试一下,果然没有问题。这个困扰我好久的问题终于有了解释。

最后, 附上不再支持 ssl 3.0 chrome 厂商自家网站的测试结果供大家参考。

以上就是关于“Windows 服务器上如何启用 TLS1.2”这篇文章的内容,相信大家都有了一定的了解,希望丸趣 TV 小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-12发表,共计2092字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)