在Ubuntu上使用Nginx和Certbot實現SSL證書的自動續期,可以按照以下步驟進行操作:
首先,確保你的系統是最新的,然后安裝Certbot及其Nginx插件。
sudo apt update
sudo apt install certbot python3-certbot-nginx
使用Certbot獲取SSL證書。你可以指定域名和郵箱地址。
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
在提示時,選擇是否將Nginx配置文件重寫為HTTPS模式(通常是Yes
)。
Certbot會自動創建一個cron任務或systemd定時器來定期檢查并續期證書。你可以通過以下命令查看當前的定時任務:
sudo systemctl list-timers | grep certbot
如果你想手動觸發續期,可以使用以下命令:
sudo certbot renew --dry-run
如果一切正常,證書將會被續期,并且Nginx配置文件會被更新。
Certbot默認會創建一個每天運行的定時任務來檢查證書的有效性。你可以通過以下命令啟用或禁用這個定時任務:
sudo systemctl enable certbot.timer
sudo systemctl start certbot.timer
如果遇到問題,可以查看Certbot的日志來診斷問題。
sudo journalctl -u certbot.service
確保你的防火墻允許HTTP(80)和HTTPS(443)流量。
sudo ufw allow 'Nginx Full'
最后,測試Nginx配置是否正確,并重新加載Nginx服務。
sudo nginx -t
sudo systemctl reload nginx
通過以上步驟,你應該能夠在Ubuntu上使用Nginx和Certbot實現SSL證書的自動續期。