首页主机资讯Ubuntu如何更新Nginx SSL证书

Ubuntu如何更新Nginx SSL证书

时间2025-11-03 09:18:03发布访客分类主机资讯浏览1062
导读:Ubuntu更新Nginx SSL证书步骤(以Let’s Encrypt为例) 更新Nginx SSL证书的核心是通过Certbot工具完成证书续期,并确保Nginx加载新证书。以下是详细操作流程: 1. 确保Certbot及Nginx插件...

Ubuntu更新Nginx SSL证书步骤(以Let’s Encrypt为例)

更新Nginx SSL证书的核心是通过Certbot工具完成证书续期,并确保Nginx加载新证书。以下是详细操作流程:

1. 确保Certbot及Nginx插件已安装

Certbot是管理Let’s Encrypt证书的自动化工具,Nginx插件可自动修改Nginx配置。若未安装,执行以下命令安装:

sudo apt update
sudo apt install certbot python3-certbot-nginx

2. 手动触发证书续期

使用Certbot的renew命令更新证书,--dry-run参数用于模拟续期过程(无实际修改,用于测试):

sudo certbot renew --dry-run

若输出Congratulations, all renewals succeeded,说明续期成功。若需实际更新,去掉--dry-run参数:

sudo certbot renew

3. 自动续期配置(关键:避免手动操作)

Certbot默认会在安装时创建定时任务(通常位于/etc/cron.d/certbot/etc/systemd/system/certbot.timer),定期检查证书有效期(默认每60天续期一次)。无需额外配置,但可通过以下命令验证定时任务是否存在:

systemctl list-timers | grep certbot

若未找到定时任务,可手动添加cron任务(每天凌晨2点检查):

sudo crontab -e

添加以下内容:

0 2 * * * /usr/bin/certbot renew --quiet

4. 验证Nginx配置并重载

证书续期后,Certbot通常会自动修改Nginx配置文件(位于/etc/nginx/sites-available//etc/nginx/conf.d/),但建议手动检查以下关键路径是否正确:

  • SSL证书文件:ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
  • SSL私钥文件:ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;

确认配置无误后,测试Nginx语法并重载服务:

sudo nginx -t  # 测试配置语法
sudo systemctl reload nginx  # 重载Nginx使更改生效

注意事项

  • 证书存储路径:Let’s Encrypt证书默认存储在/etc/letsencrypt/live/yourdomain.com/目录下,其中fullchain.pem是完整的证书链(包含服务器证书和中间证书),privkey.pem是私钥。
  • 强制HTTPS跳转:若Nginx配置中未包含HTTP到HTTPS的强制跳转,可添加以下server块(通常位于/etc/nginx/sites-available/yourdomain.com):
    server {
        
        listen 80;
        
        server_name yourdomain.com www.yourdomain.com;
        
        return 301 https://$host$request_uri;
    
    }
        
    
    修改后需再次测试并重载Nginx。

通过以上步骤,即可完成Ubuntu环境下Nginx SSL证书的更新,并确保证书长期有效。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu如何更新Nginx SSL证书
本文地址: https://pptw.com/jishu/740506.html
Debian PHP内存管理如何优化 Nginx SSL在Ubuntu上如何调试

游客 回复需填写必要信息