使用Certbot申请/续签ssl证书
Certbot
1. 安装Certbot
yum install certbot python3-certbot-nginx
2. 申请SSL证书
# 这里你需要申请几个域名的证书你就写几个,每个域名前面都是-d选项 sudo certbot certonly --nginx -d hub.fushudi.cn -d www.fushudi.cn
这里如果报错说没有安装nginx插件的话就是python3-certbot-nginx
这个包没装上
使用的是Amazon Linux 2 的话,执行这条命令安装插件
sudo yum install certbot-nginx
安装好之后重新执行申请证书的命令
sudo certbot certonly --nginx -d hub.fushudi.cn -d www.fushudi.cn
然后按照他的要求你输入一些东西就等他自动完成,然后执行完会告诉你你的域名的证书存在哪个目录,默认是存在
/etc/letsencrypt/live/hub.fushudi.cn/
这个目录下
3. 增加域名
如果刚开始申请的证书不够用,现在又需要额外的申请几个域名,可以这样
sudo certbot certonly --nginx -d hub.fushudi.cn -d www.fushudi.cn -d "你的新域名"
还是这条命令,后面继续跟上你的域名就可以了
4. nginx配置https
证书申请好了我们就可以开始对nginx做配置了
server { listen 80; server_name www.fushudi.cn; server_name fushudi.cn; # 重定向HTTP请求到HTTPS return 301 https://www.fushudi.cn$request_uri; } server { listen 443 ssl; server_name fushudi.cn www.fushudi.cn; # SSL配置 ssl_certificate /etc/letsencrypt/live/hub.fushudi.cn/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/hub.fushudi.cn/privkey.pem; root /usr/share/nginx/html; index index.html index.htm; location / { try_files $uri $uri/ =404; } }
配置好之后重启nginx
systemctl restart nginx
然后你的域名就是https的了
5. 自动续签证书
crontab -e 0 0 1 * * /usr/bin/certbot renew --quiet
到这里就配置好了,他每个月的第一天会检查你的证书有没有过期,过期了会帮你续签
本文来自博客园,作者:FuShudi,转载请注明原文链接:https://www.cnblogs.com/fsdstudy/p/18284535
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了