通过配置TLS最低版本和加密套件提升客户端访问域名的通道安全
HTTPS协议是由TLS(Transport Layer Security,传输层安全性协议)+HTTP协议构建的可进行加密传输、身份认证的网络协议。当添加防护域名时,如果客户端采用HTTPS协议请求访问服务器,即防护域名的“对外协议”配置为“HTTPS”时,您可以通过为域名配置最低TLS版本和加密套件来确保网站安全,详细说明如下:
- 最低TLS版本
最低TLS版本是客户端通过TLS访问网站时,被允许访问网站的最低TLS版本。配置最低TLS版本后,只有满足最低TLS版本的请求,才能正常访问网站,可以满足行业网站的安全需求。
- 截止目前,TLS已发布了三个版本(TLS v1.0、TLS v1.1、TLS v1.2),TLS v1.0和TLS v1.1版本由于发布时间久远,某些加密算法(如SHA1、RC4算法)很容易被黑客攻击,且在性能上,TLS v1.0和TLS v1.1已经无法满足呈几何级增长的数据传输加密,存在安全隐患。同时,为了保障通信协议的安全,满足支付卡行业数据安全标准(PCI DSS),支付卡行业安全标准委员会(PCI SSC)规定,TLS v1.0安全通信协议于2018年6月30日不再生效。火狐、Safari、Chrome、Edge等主流浏览器厂商也声明将于2020年全面停止支持TLS v1.0和TLS v1.1。
- 您可以通过查看网站TLS版本,检测网站支持的TLS版本。
- 加密套件
推荐配置的最低TLS版本说明
为了确保网站安全,建议您根据业务实际需求进行配置,推荐配置的最低TLS版本如表1所示。
推荐配置的加密套件说明
WAF默认配置的加密套件为“加密套件1”,可以满足浏览器兼容性和安全性,各加密套件相关说明如表2所示。
加密套件配置值中,带“!”的表示不支持。例如,!MD5表示不支持MD5算法。
加密套件名称 |
加密算法 |
说明 |
---|---|---|
默认加密套件 |
ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!AESGCM |
|
加密套件1 |
ECDHE-ECDSA-AES256-GCM-SHA384:HIGH:!MEDIUM:!LOW:!aNULL:!eNULL:!DES:!MD5:!PSK:!RC4:!kRSA:!SRP:!3DES:!DSS:!EXP:!CAMELLIA:@STRENGTH |
推荐配置。
|
加密套件2 |
EECDH+AESGCM:EDH+AESGCM |
|
加密套件3 |
ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH |
|
加密套件4 |
ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:AES256-SHA256:HIGH:!MD5:!aNULL:!eNULL:!NULL:!EDH |
|
加密套件5 |
AES128-SHA:AES256-SHA:AES128-SHA256:AES256-SHA256:HIGH:!MEDIUM:!LOW:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4:!DHE:@STRENGTH |
仅支持RSA-AES-CBC算法。 |
加密套件6 |
ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 |
|
WAF提供的加密套件对于高版本的浏览器及客户端都可以兼容,不能兼容部分老版本的浏览器。TLS版本不同,加密套件的浏览器或客户端兼容情况也不同。以TLS v1.0协议为例,加密套件的浏览器及客户端兼容性说明如表3所示。
建议您以实际客户端环境测试的兼容情况为准,避免影响现网业务。
浏览器/客户端 |
默认加密套件 |
加密套件1 |
加密套件2 |
加密套件3 |
加密套件4 |
---|---|---|---|---|---|
Google Chrome 63 /macOS High Sierra 10.13.2 |
× |
√ |
√ |
√ |
× |
Google Chrome 49/ Windows XP SP3 |
× |
× |
× |
× |
× |
Internet Explorer 6/Windows XP |
× |
× |
× |
× |
× |
Internet Explorer 8/Windows XP |
× |
× |
× |
× |
× |
Safari 6/iOS 6.0.1 |
√ |
√ |
× |
√ |
√ |
Safari 7/iOS 7.1 |
√ |
√ |
× |
√ |
√ |
Safari 7/OS X 10.9 |
√ |
√ |
× |
√ |
√ |
Safari 8/iOS 8.4 |
√ |
√ |
× |
√ |
√ |
Safari 8/OS X 10.10 |
√ |
√ |
× |
√ |
√ |
Internet Explorer 7/Windows Vista |
√ |
√ |
× |
√ |
√ |
Internet Explorer 8~10/Windows 7 |
√ |
√ |
× |
√ |
√ |
Internet Explorer 10/Windows Phone 8.0 |
√ |
√ |
× |
√ |
√ |
Java 7u25 |
√ |
√ |
× |
√ |
√ |
OpenSSL 0.9.8y |
× |
× |
× |
× |
× |
Safari 5.1.9/OS X 10.6.8 |
√ |
√ |
× |
√ |
√ |
Safari 6.0.4/OS X 10.8.4 |
√ |
√ |
× |
√ |
√ |
配置TLS最低版本和加密套件
以独享WAF介绍如何配置TLS最低版本为“TLS v1.2”,加密套件为“加密套件1”,以及如何验证配置效果。
- 登录管理控制台。
- 单击管理控制台左上角的,选择区域或项目。
- 单击页面左上方的,选择 。
- 在左侧导航树中,选择“网站设置”,进入“网站设置”页面。
- 在目标网站所在行的“域名”列中,单击目标网站,进入网站基本信息页面。
- 在“TLS配置”所在行,单击。
WAF支持一键开启PCI DSS和PCI 3DS合规认证功能,开启合规认证后,可以满足PCI DSS和PCI 3DS合规认证要求。
- PCI DSS
- 开启PCI DSS合规认证后,不能修改TLS最低版本和加密套件,且最低TLS版本将设置为“TLS v1.2”,加密套件设置为EECDH+AESGCM:EDH+AESGCM。
- 开启PCI DSS合规认证后,如果您需要修改TLS最低版本和加密套件,请关闭该认证。
- PCI 3DS
- 开启PCI 3DS合规认证后,不能修改TLS最低版本,且最低TLS版本将设置为“TLS v1.2”。
- 开启PCI 3DS合规认证后,您将不能关闭该认证,请根据业务实际需求进行操作。
- PCI DSS
- 在弹出的“TLS配置”对话框中,选择最低TLS版本“TLS v1.2”和“加密套件1”。
- 单击“确认”,TLS配置完成。
效果验证
假定“最低TLS版本”配置为“TLS v1.2”,验证TLS v1.2协议可以正常访问网站,验证TLS v1.1及以下协议不能正常访问网站。
您可以在本地通过命令行方式,验证TLS是否配置成功。在验证前,请确保您本地已安装openssl。
- 复制防护域名的CNAME值,用于获取WAF的回源IP。
- 登录管理控制台。
- 单击管理控制台左上角的,选择区域或项目。
- 单击页面左上方的,选择 。
- 在左侧导航树中,选择“网站设置”,进入“网站设置”页面。
- 在目标网站所在行的“域名”列中,单击目标网站,进入域名基本信息页面。
- 在“CNAME”信息行,单击,复制“CNAME”值。
- 获取WAF的回源IP。
- 云模式
在Windows操作系统的命令行窗口,执行以下命令,获取WAF的回源IP。
ping CNAME值
在界面回显信息中获取WAF回源IP,如图1所示。 - 独享模式
- 在左侧导航树中,选择 ,进入独享引擎实例列表页面。
- 在独享引擎列表的“IP地址”栏,获取所有创建的独享引擎对应的子网IP地址,即独享引擎实例对应的回源IP。
- 云模式
- 执行以下命令,验证“TLS v1.2”协议可以访问目标网站。
openssl s_client -connect WAF回源IP -servername "防护域名" -tls1_2
- 执行以下命令,验证“TLS v1.1”协议不能访问目标网站。
openssl s_client -connect WAF回源IP -servername "防护域名" -tls1_1