天天看点

Nginx 配置 SSL

Nginx 配置 SSL

  • ​​环境​​
  • ​​步骤​​
  • ​​安装 Nginx​​
  • ​​申请 CA 证书​​
  • ​​下载证书​​
  • ​​给 Nginx 配置 SSL​​

环境

  • 阿里云服务器 ECS
  • CentOS 7.4

步骤

安装 Nginx

Nginx 配置 SSL

申请 CA 证书

  • 阿里云管理控制台——产品与服务——安全(云盾)——购买证书——选择购买免费证书。
  • 点击“申请”,绑定域名。

下载证书

  • 等待几分钟,证书状态变成“已签发”之后,点击下载证书:
  • 证书类型选择 Nginx
  • 下载的压缩文件为:1673999_www.xxx.tech_nginx.zip(www.xxx.tech是博主的域名),包含两个文件:
    • 1673999_www.xxx.tech.key
    • 1673999_www.xxx.tech.pem

给 Nginx 配置 SSL

  • 重命名两个证书文件,并上传到服务器
    • /root/ca/www.xxx.tech.pem
    • /root/ca/www.xxx.tech.key
  • 配置 Nginx:​

    ​server { listen 80; server_name www.wecherish.tech; rewrite ^(.*)$ https://$host$1 permanent; } server { listen 443 ssl; server_name www.wecherish.tech; ssl_certificate /root/ca/www.xxx.tech.pem; ssl_certificate_key /root/ca/www.xxx.tech.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; #charset koi8-r; #access_log logs/host.access.log main; location / { root /home/www; index index.html index.htm; } } ​

  • 如果启动之后报错:​

    ​nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module​

    • 切换回 nginx 源码包,重新配置:
      • ​./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module ​

    • 重新 make
      • ​make ​

    • 关闭 nginx;备份原来安装的 nginx
      • ​/usr/local/nginx/sbin/nginx -s stop cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak ​

    • 使用上面编译的新的 nginx 代替原来的 nginx
      • ​cp ./objs/nginx /usr/local/nginx/sbin/ ​

    • 再次启动 nginx
      • ​/usr/local/nginx/sbin/nginx ​

    • Nginx 配置 SSL

继续阅读