文档首页 > > 最佳实践> 通过配置TLS最低版本和加密套件提升客户端访问域名的通道安全

通过配置TLS最低版本和加密套件提升客户端访问域名的通道安全

分享
更新时间:2020/08/17 GMT+08:00

HTTPS协议是由TLS(Transport Layer Security,传输层安全性协议)+HTTP协议构建的可进行加密传输、身份认证的网络协议。当域名接入WAF时,如果客户端采用HTTPS协议的请求访问服务器,即防护域名的“对外协议”配置为“HTTPS”,则您可以为域名配置最低TLS版本(客户端通过TLS访问网站时,被允许访问的最低TLS版本),拦截访问网站的不满足最低TLS版本的请求,并为域名配置安全性更高的加密套件(多种加密算法的集合),保障网站的保密性和数据完整性。

场景说明

截止目前,TLS已发布了4个版本(TLS v1.0、TLS v1.1、TLS v1.2、TLS v1.3),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版本和加密套件如表1表2所示。

如果您的网站对安全性要求较高,同时需要考虑客户端浏览器的兼容性,建议您配置TLS最低版本为“TLS v1.2”,加密套件为“加密套件1”

本章节介绍此场景下如何配置TLS最低版本以及加密套件,以满足网站安全性需求。

表1 最低TLS版本场景说明

场景

最低TLS版本(推荐)

防护效果

网站安全性能要求很高

TLS v1.2

WAF将自动拦截TLS v1.0和TLS v1.1协议的访问请求。

网站安全性能要求一般

TLS v1.1

WAF将自动拦截TLS1.0协议的访问请求。

客户端APP无安全性要求,可以正常访问网站

TLS v1.0

所有的TLS协议都可以访问网站。

推荐加密套件配置说明

表2 加密套件说明

加密套件名称

加密算法

说明

默认加密套件

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

  • 兼容性:一般,严格符合PCI DSS的FS要求,较低版本浏览器可能无法访问。
  • 安全性:高

加密套件3

ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH

  • 兼容性:一般,较低版本浏览器可能无法访问。
  • 安全性:高,支持ECDHE、DHE-GCM、RSA-AES-GCM多种算法。

加密套件4

ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!EDH

  • 兼容性:较好,支持的客户端较为广泛
  • 安全性:一般,新增支持GCM算法。

配置TLS最低版本和加密套件

  1. 登录管理控制台
  2. 进入网站配置页面入口,如图1所示。

    图1 网站列表入口

  3. 在目标网站所在行的“防护网站”列中,单击目标网站,进入网站基本信息页面。
  4. “TLS配置”所在行,单击,如图2

    图2 修改TLS配置

  5. 在弹出的“TLS配置”对话框中,选择最低TLS版本“TLS v1.2”“加密套件1”,如图3所示。

    配置前,可以先通过“https://myssl.com/ssl.html”检测您的网站支持的TLS版本。

    图3 “TLS配置”对话框

  6. 单击“确定”,TLS配置完成。

效果验证

假定“最低TLS版本”配置为“TLS v1.2”,验证TLS v1.2协议可以正常访问网站,验证TLS v1.1及以下协议不能正常访问网站。

您可以在本地通过命令行方式,验证TLS是否配置成功。在验证前,请确保您本地已安装openssl

  1. 复制防护域名的CNAME值,用于获取WAF的回源IP。

    1. 登录管理控制台
    2. 进入网站配置页面入口,如图4所示。
      图4 网站列表入口
    3. 在目标网站所在行的“防护网站”列中,单击目标网站,进入域名基本信息页面。
    4. “CNAME”信息行,单击,复制“CNAME”值,如图5所示。
      图5 复制“CNAME”

  2. 获取WAF的回源IP。

    1. 在Windows操作系统的命令行窗口,执行以下命令,获取WAF的回源IP。

      ping CNAME值

      在界面回显信息中获取WAF回源IP,如图6所示。
      图6 ping cname

  3. 执行以下命令,验证“TLS v1.2”协议可以访问目标网站。

    openssl s_client -connect WAF回源IP -servername "防护域名" -tls1_2

    界面返回证书相关信息,如图7所示,说明“TLS v1.2”协议可以访问目标网站。
    图7 验证TLS v1.2

  4. 执行以下命令,验证“TLS v1.1”协议不能访问目标网站。

    openssl s_client -connect WAF回源IP -servername "防护域名" -tls1_1

    界面未返回证书相关信息,如图8所示,说明WAF拦截了“TLS v1.1”的访问。
    图8 验证TLS v1.1

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问