本月优惠

Windows服务器IIS配置符合苹果ATS方法

苹果(Apple) ATS的基本要求主要满足三个条件TLS1.2支持、加密套件、SHA-2签名算法即可,在苹果ATS对SSL/TLS的安全检测要求一文中有详解,对于Apache和Nginx来说,只需修改配置文件即可,但对IIS来说相对比较复杂,本文主要介绍IIS服务器配置满足ATS标准的方法。

基本要求

首先windows server 2008 R2/IIS 7以前的服务器不支持TLS1_2协议,所以Windows 2003等服务器是肯定不支持的,如果使用.net开发的WEB应用,必须将Windows硬件服务器升级到Server 2008 R2,再进行以下的配置。

软件一键修改

此处推荐一键调整加密套件的工具

官方地址:https://www.nartac.com/Products/IISCrypto

百度网盘:https://pan.baidu.com/s/1pMXUCen (3wmh)

首先安装此软件,点击同意即可。

db01dc0c3f0fa3c7444b509fc6c55bba.png

安装完成之后打开此软件,点击Best Practices(最佳配置),上面选框中的协议、加密位数、SHA、交换密钥会发生变化,然后点击Apply即可。后面需要重启服务器才可生效。

0048aaf7ee5c9a798ce264d26f5bc05e.png


手动修改注册表及密码套件

开始——运行 输入regedit

找到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocols右键->新建->项->新建TLS 1.1,TLS 1.2

TLS 1.1和TLS 1.2 右键->新建->项->新建Server->Client,在新建的Server和Client中都新建如下的项(DWORD 32位值),总共4个

DisabledByDefault [Value = 0]
Enabled [Value = 1]

f099a987f385c2918e096352a3d7a214.png


完成后重启系统

加密套件调整

对于前向保密加密套件不支持的话可通过组策略编辑器进行调整。

开始菜单——运行、输入gpedit.msc 进行加密套件调整 在此操作之前需要先开启TLS1_2协议

e1149a6455186bb06031c270deb7dec0.png

双击SSL密码套件顺序

ab66962ffb69d453b335dfee8aabc2bd.png

把支持的ECDHE加密套件加入SSL密码套件中 以逗号(,)分隔打开一个空白写字板文档。
复制下图中右侧可用套件的列表并将其粘贴到该文档中,按正确顺序排列套件;删除不想使用的所有套件,在每个套件名称的末尾键入一个逗号(最后一个套件名称除外)。确保没有嵌入空格。删除所有换行符,以便密码套件名称位于单独的一个长行上。将密码套件行复制到剪贴板,然后将其粘贴到编辑框中。最大长度为 1023 个字符。

10e37aa598cf20760f220ea2c6727910.png


可将以下套件加入密码套件中

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

推荐套件组合:

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P384
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA_P521
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P521
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P384
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P521
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P521
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_AES_128_CBC_SHA256
TLS_RSA_WITH_AES_256_CBC_SHA256
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_256_GCM_SHA384