# SSL/HTTPS

网站完成域名绑定且可以通过HTTP访问之后,方可设置HTTPS。

Redmine预装包,已安装Web服务器 SSL 模块和公共免费证书方案 Let's Encrypt (opens new window) ,并完成预配置。

除了虚拟主机配置文件之外,HTTPS设置无需修改 Web 服务器的任何其他文件

# 快速指南

# 自动部署

如果没有申请证书,只需在服务器中运行一条命令sudo certbot便可以启动免费证书自动申请和部署

sudo certbot

# 手动部署

如果你已经申请了证书,只需三个步骤,即可完成 HTTPS 配置:

  1. 将申请的证书、 证书链文件和秘钥文件上传到 /data/cert 目录
  2. 打开虚拟主机配置文件:/etc/nginx/conf.d/default.conf,插入HTTPS 配置段 到 Redmine 的 server{ }
  #-----HTTPS template start------------
  listen 443 ssl; 
  ssl_certificate /data/cert/xxx.crt;
  ssl_certificate_key /data/cert/xxx.key;
  ssl_session_timeout 5m;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
  ssl_prefer_server_ciphers on;
  #-----HTTPS template end------------
  1. 修改 ssl_certificate, ssl_certificate_key 的值,保存
  2. 重启 Nginx 服务 后生效
    sudo systemctl restart nginx
    

# 专题指南

若参考上面的简易步骤仍无法成功设置 HTTPS 访问,请阅读由 Websoft9 提供的 《HTTPS 专题指南》 (opens new window)

HTTPS专题指南方案包括:HTTPS 前置条件、HTTPS 配置段模板、注意事项、详细步骤以及故障诊断等具体方案。