nginx 禁用低版本TSL
找到对应域名的nginx配置文件,打开找到ssl_protocols这行只保留TLSv1.2 TLSv1.3。
# ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_protocols TLSv1.2 TLSv1.3;
改完后通过curl测试发现,使用tlsv1.0还是可以正常访问的。
curl -I -v --tlsv1.1 https://www.xxxx.cn
原因:nginx配置项中的ssl_ciphers
,如果允许了低版本的加密套件,哪怕ssl_protocols中没有允许低版本的ssl协议,nginx也会开启对低版本的支持,需要修改ssl_ciphers
配置。
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_ciphers
的工具 SSL Configuration Generator