天天看點

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

繼續閱讀