要通过等保三级测评,Nginx的ssl_ciphers必须仅保留支持PFS和AEAD的强套件,禁用RC4、3DES、MD5、SHA1、EXPORT、NULL、ANONYMOUS、PSK、STATIC RSA及非国标算法;推荐配置为ECDHE-ECDSA/RSA-AES128/256-GCM-SHA256/384、CHACHA20-POLY1305、DHE-RSA-AES128/256-GCM-SHA256/384,并同步启用TLSv1.2+、HSTS、server_tokens off及DH参数。

要让负载均衡器(如 Nginx)的 ssl_ciphers 配置通过等保三级测评,核心不是堆砌算法,而是精准剔除所有不合规套件,只保留同时满足前向保密(PFS)和认证加密(AEAD)要求的强套件,并确保 TLS 协议版本、密钥交换方式、哈希与对称算法全部达标。
必须禁用的不合规算法类型
以下关键词一旦出现在 ssl_ciphers 字符串中,即直接导致等保不通过,需彻底清除:
-
RC4(如
RC4-SHA、RC4-MD5)——易受 Bar Mitzvah 攻击,等保明令禁止 -
3DES / DES(如
ECDHE-RSA-3DES-EDE-CBC-SHA、DES-CBC-SHA)——密钥长度不足,存在 Sweet32 等已知碰撞风险 -
MD5 或 SHA1 哈希套件(含
-MD5全部禁用;-SHA如ECDHE-RSA-AES128-SHA中的 SHA1 已淘汰,不可用于等保场景) -
EXPORT 级套件(如
EXP-EDH-RSA-DES-CBC-SHA)——密钥强度低于 40 位,法律层面不可接受 -
NULL、ANONYMOUS、PSK、STATIC RSA(如
RSA-AES256-SHA)——无前向保密,会话密钥可被长期解密 - CAMELLIA、SEED、IDEA 等非国标/非主流算法——缺乏充分审计,等保测评不认可
推荐的等保三级合规 ssl_ciphers 配置
该配置已通过主流终端兼容性验证(Chrome/Firefox/Edge/Safari 最新版,Android 7+、iOS 11+),且满足 PFS + AEAD 强制要求:
ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers '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:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384'; ssl_prefer_server_ciphers on;
说明:
- TLS 1.3 套件由协议自动协商,不得写入
ssl_ciphers字符串 - 全部套件均基于
ECDHE或DHE,确保每次握手生成临时密钥,实现前向保密 - 加密部分统一使用
AES-GCM或CHACHA20-POLY1305,满足 AEAD 认证加密强制要求 - 未包含任何静态密钥交换、CBC 模式、哈希降级或非国标算法
配套必须启用的基础加固项
仅改 ssl_ciphers 不足以过等保,还需同步落实以下措施:
-
禁用低版本协议:确认
ssl_protocols仅保留TLSv1.2 TLSv1.3,严禁出现SSLv3、TLSv1.0、TLSv1.1 -
启用 HSTS:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;,防止协议降级攻击 -
关闭服务标识泄露:
server_tokens off;,避免暴露 Nginx 版本信息 -
配置强 DH 参数(若使用 DHE 套件):
ssl_dhparam /etc/nginx/ssl/dhparam.pem;,推荐 2048 位及以上
验证配置是否真正生效
reload 配置后必须实测,不能仅凭语法检查:
- 用
nmap --script ssl-enum-ciphers -p 443 yourdomain.com扫描,输出中不应出现RC4、3DES、MD5、EXPORT、NULL等字样 - 提交至 SSL Labs SSL Test,评级至少为 A,且 “Handshake Simulation” 中无老旧客户端(如 IE8/XP)回退到弱套件
- 检查 Nginx 错误日志,确认无
no suitable key exchange algorithm或no ciphers available类报错











