在CentOS上為Nginx啟用SSL,你需要遵循以下步驟:
安裝Certbot: Certbot是一個自動化的工具,用于獲取、安裝和管理Let’s Encrypt SSL證書。首先,你需要安裝它。
sudo yum install epel-release
sudo yum install certbot python2-certbot-nginx
獲取SSL證書: 使用Certbot獲取SSL證書。運行以下命令并按照提示操作:
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
將yourdomain.com和www.yourdomain.com替換為你的域名。Certbot會自動配置Nginx并重啟服務以應用更改。
驗證配置: Certbot會自動驗證你的域名是否可以通過HTTP訪問。如果一切正常,它將為你配置SSL證書。
自動續期: Let’s Encrypt的證書有效期為90天。Certbot會設置一個cron作業來自動續期證書。你可以手動測試續期過程:
sudo certbot renew --dry-run
如果沒有錯誤,你可以設置一個cron作業來自動執行續期:
sudo crontab -e
添加以下行:
0 0,12 * * * certbot renew --post-hook "nginx -s reload"
這將每天檢查證書是否需要續期,并在需要時自動續期并重新加載Nginx。
配置防火墻: 確保你的防火墻允許HTTPS流量(通常是端口443)。
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
測試SSL連接:
使用瀏覽器訪問你的網站,或者使用命令行工具如curl來測試SSL連接:
curl -I https://yourdomain.com
你應該看到HTTP狀態碼200,并且在響應頭中看到Strict-Transport-Security。
以上步驟應該可以幫助你在CentOS上為Nginx啟用SSL。記得替換yourdomain.com為你的實際域名,并根據需要調整配置。