Koot
自我完善中~
回主页
分享一个Mozilla的在线SSL配置生成器

#简介

很多人在搭建好了网站环境之后都不知道怎么配置SSL,之前网站升级TLS1.3的时候博主也遇到了同样的问题,现在分享一个Mozilla的在线生成SSL配置页面,它支持生成包括Caddy/Nginx/Apache在内的Web服务器程序的配置

#查看程序版本

//把版本号记下来,下一步有用
$ nginx -v //查看Nginx版本
$ caddy --version //查看Caddy版本
$ apachectl -v //查看Apache版本
$ openssl version //查看Openssl版本

#使用

打开该页面,在「Server Software」处选择你的服务器上对应的Web程序,在以下「Environment」区域输入在上一步记录下来的版本号

值得注意的是,在「Mozilla Configuration」一项中默认是选中「Intermediate」--中等,选则「Intermediate」可以在保证兼容性的前提下保持一定程度的安全性

如果当前服务器不支持TLS1.3(或者客户端不支持),需要手动删除「TLSv1.3」字段(详见#示例配置),如想服务器支持TLS1.3,需要在编译Openssl时加入「--with-openssl-opt='enable-tls1_3'」参数

如果你只想使用TLS1.3的话请选择「Modern」,建议再手动添加TLS1.3对应的加密方式(详见#示例配置),请确保在浏览器跟网站同时支持TLS1.3的前提下选择该项

在「Miscellaneous」--杂项中,建议选中「HTTP Strict Transport Security」以及「OCSP Stapling」(只有在「Server Software」处选中Nginx时「OCSP Stapling」才处于可选状态),前者有助于保持HTTPS连接的安全性,后者打开后能稍微起到加速作用

#示例配置

下面贴出我使用的配置,对应「Nginx版本:1.17」「Openssl版本:1.1.1c」,默认启用「TLS1.3」并兼容「TLS1.2」,设置强制重定向到https

server {
 listen 80 default_server;
 listen [::]:80 default_server;
 # redirect all HTTP requests to HTTPS with a 301 Moved Permanently response.
 return 301 https://$host$request_uri;
}
 server {
 listen 443 ssl http2;
 listen [::]:443 ssl http2;
  # certs sent to the client in SERVER HELLO are concatenated in ssl_certificate
 ssl_certificate /path/to/signed_cert_plus_intermediates;
 ssl_certificate_key /path/to/private_key;
 ssl_session_timeout 20m;
 ssl_session_cache shared:MozSSL:10m; # about 40000 sessions
 ssl_session_tickets off;
 ssl_prefer_server_ciphers on;
  # curl https://ssl-config.mozilla.org/ffdhe2048.txt > /path/to/dhparam.pem
 ssl_dhparam /path/to/dhparam.pem;#填写SSL证书目录
  # intermediate configuration
 ssl_protocols TLSv1.2 TLSv1.3;#启用TLS1.3/TLS1.2支持
 ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256: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;#设置加密模块
 # HSTS (ngx_http_headers_module is required) (63072000 seconds)
 add_header Strict-Transport-Security "max-age=123072000" always;#使用HSTS(HTTP严格传输安全)
 # OCSP stapling
 ssl_stapling on;
 ssl_stapling_verify on;
  # verify chain of trust of OCSP response using Root CA and Intermediate certs
 ssl_trusted_certificate /path/to/root_CA_cert_plus_intermediates;
  resolver 8.8.8.8 8.8.4.4 vaild=3600s;
}

 

 

 

<完>


参考:https://github.com/ruanyf/weekly/issues/459

Leave a Reply

textsms
account_circle
email

Koot's Blog

分享一个Mozilla的在线SSL配置生成器
很多人在搭建好了网站环境之后都不知道怎么配置SSL,之前网站升级TLS1.3的时候博主也遇到了同样的问题,现在分享一个Mozilla的在线生成SSL配置页面...
扫描二维码继续阅读
2019-07-27
标签云
按日期归档
Komm, süsser Tod (甘き死よ、来たれ)--音乐