Apache TLS安全基线要求禁用TLS 1.0/1.1,启用TLS 1.2+,配置PFS/AEAD密码套件,使用强证书与完整链,启用HSTS和OCSP Stapling,并通过openssl及SSL Labs实测验证。

Apache TLS 配置要达到安全基线,核心是禁用不安全协议、启用强加密套件、合理配置证书与传输策略,并确保整个链路可验证、可审计。这不是“调通HTTPS”就完事,而是围绕现代合规要求(如PCI DSS、NIST SP 800-52r3、CIS Apache Benchmark)构建的最小可行防线。
明确禁用 TLS 1.0 和 TLS 1.1
这两个版本已正式退役,主流浏览器和监管标准均不再接受。必须在 SSL 配置中显式排除:
- 编辑 /etc/httpd/conf.d/ssl.conf 或站点虚拟主机配置中的
<VirtualHost *:443>块 - 设置
SSLProtocol -all +TLSv1.2 +TLSv1.3(注意:不是+TLSv1.1,也不是留空默认) - 避免使用模糊写法如
SSLProtocol all -SSLv3,它可能意外保留 TLS 1.0/1.1
选用经验证的安全加密套件
仅靠协议版本不够,加密算法组合同样关键。优先采用前向保密(PFS)、AEAD 模式、无已知漏洞的组合:
Apache Superset 是一个广泛采用的开源 BI 平台,用于 SQL 探索、图表构建和仪表板交付。当代理需要查询仓库数据、组装仪表板或使用成熟的分析界面解释指标而不是临时笔记本代码时,此技能非常有用。
- 推荐配置(兼容性与安全性兼顾):
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305 - 禁用 RC4、DES、3DES、MD5、SHA1、CBC 模式(除非有强业务依赖且已做额外隔离)
- 启用
SSLHonorCipherOrder on,强制服务端按指定顺序协商,防止客户端降级攻击
强化证书与密钥管理
证书不是“配上了就安全”,其生命周期和强度直接影响 TLS 防线有效性:
- 私钥至少 2048 位 RSA 或 256 位 ECDSA;推荐使用 ECDSA(性能更好、前向保密更强)
- 证书必须由可信 CA 签发(如 Let’s Encrypt、DigiCert),禁用自签名用于生产环境
- 启用 OCSP Stapling:
SSLUseStapling on+SSLStaplingCache shmcb:/var/run/httpd/stapling_cache(128000),提升证书状态验证效率与隐私性 - 设置
Strict-Transport-Security头(HSTS):Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
验证与持续监控不可跳过
配置写完不等于达标,必须实测+闭环:
- 本地快速检测:
openssl s_client -connect example.com:443 -tls1_1应失败;-tls1_2和-tls1_3应成功 - 使用权威在线工具复核:SSL Labs 的 SSL Test(目标 A+ 评级)
- 检查 Apache 日志中是否有
SSL Library Error或握手失败记录,尤其关注旧客户端兼容性反馈 - 将 TLS 配置纳入 CI/CD 审计项,例如用
httpd -t+ 自定义脚本校验SSLProtocol和SSLCipherSuite是否符合基线模板

















