这两天有个项目被扫描器报了几个中危,都是SSL证书的问题。记录一下解决方案吧。算法
第一个问题:SSL Certificate Signed Using Weak Hashing Algorithm服务器
这里的缘由是由于使用弱算法签名的证书。网络
解决方案查了下总结下来是换算法。less
操做步骤:ide
一、从证书颁发机构安装服务器的身份验证证书ui
二、在注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp中配置自定义的证书来支持 TLS 而不是使用默认的自签名的证书的证书的 SHA1 哈希。spa
新建值的名称:SSLCertificateSHA1Hashcode
值类型:REG_BINARYip
值数据:证书指纹ci
- 这个值应由逗号分隔的证书的指纹,并无空格。例如,若是您要导出该注册表项的 SSLCertificateSHA1Hash 值以下所示:
"SSLCertificateSHA1Hash"= hex: 42,49,e1,6e,0a,f0,a0,2e,63,c4,五、 9三、 fd,52,ad,0九、 2七、 82,1b,01
注意: 须要直接编辑注册表,由于在 Windows 客户端配置服务器证书的 SKUs 没有用户界面。 - 在网络服务账户下运行远程桌面主机服务。所以,有必要设置 RDS (由 SSLCertificateSHA1Hash 注册表值中指定的证书引用) 所使用的密钥文件的 ACL 具备"读取"权限包括网络服务。若要修改权限,请按照如下步骤:
打开证书管理单元中的本地计算机: - 单击开始,单击运行,键入mmc,请单击肯定。
- 在文件菜单上单击添加/删除管理单元。
- 在添加或删除管理单元对话框中,在可用的管理单元列表中,单击证书,并单击添加。
- 在证书管理单元对话框中,单击计算机账户,而后单击下一步。
- 在选择计算机对话框中,单击本地计算机: (运行此控制台的计算机),而后单击完成。
- 在添加或删除管理单元对话框中,单击肯定。
- 证书管理单元中,在控制台树中,展开证书 (本地计算机),展开我的,而后导航到您想要使用的 SSL 证书。
- 用鼠标右键单击证书,选择全部任务,而后选择管理私钥。
- 在权限对话框中,单击添加,键入网络服务,在容许复选框,单击肯定,选择读取而后单击肯定。
到这里差很少就能够完成了。
SSL Medium Strength Cipher Suites Supported 这个问题的话也是修改注册表,修改注册表文件中的 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\ 新建一个名称为Enabled,值为0的注册表选项便可了。DWORD key name 'Enabled' with value '0' to the cipher key with the size less than '128'.