Nginx 使用certbot 生成证书
nginx使用certbot配置ssl域名证书
Nginx 使用certbot 生成证书
-
certbot 是一款免费且开源的自动化安全证书管理工具
-
安装软件
-
yum install epel-release -
yum install certbot- 如果提示python-urllib3.noarch 0:1.10…….
- 备份一下:
mv /usr/lib/python2.7/site-packages/urllib3/packages/ssl_match_hostname /usr/lib/python2.7/site-packages/urllib3/packages/ssl_match_hostname.bak -
yum install certbot python3-certbot-nginx -
yum install python-urllib3
-
-
生成证书
# 泛域名: certbot certonly -d *.使用自己的域名替换.com --manual --preferred-challenges dns # 主域名: certbot certonly -d 使用自己的域名替换.com --manual --preferred-challenges dns- 输入正确的邮箱地址,然后一路y同意
- 到阿里云域名控制台,指定DNS TXT 解析记录,主机记录填入终端提示的二级域名
_acme-challenge主机的记录值 填写终端打印出来的 一串字符fQ9JS.....xx.....r_uNxynA然后回车就可以了 证书有效期是3个月。
-
nginx 配置ssl
server { listen 443 ssl; server_name 自己的域名.com; ssl_certificate /etc/letsencrypt/live/自己的域名.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/自己的域名.com/privkey.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { root html; index index.html index.htm; proxy_pass http://redbook; } }- ./sbin/nginx -t 检查一下conf配置文件有没有错误
- 然后重新加载一下nginx
-
配置自动化自动续签域名证书
-
以阿里云管理后台为例,生成一个子用户,给该用户添加
AliyunDNSFullAccess管理DNS解析权限,需要提前保存阿里云的用户AccessKey ID和AccessKey Secret -
AccessKey ID LT********sdf
-
AccessKey Secret LFI*******dfsgQ
-
安装aliyun cli 工具
-
wget https://aliyuncli.alicdn.com/aliyun-cli-linux-latest-amd64.tgz
-
tar xzvf aliyun-cli-linux-latest-amd64.tgz -
sudo cp aliyun /usr/local/bin -
安装 certbot-dns-aliyun 插件
wget http://cdn.jsdelivr.net/gh/justjavac/certbot-dns-aliyun@main/alidns.sh sudo cp alidns.sh /usr/local/bin sudo chmod +x /usr/local/bin/alidns.sh sudo ln -s /usr/local/bin/alidns.sh /usr/local/bin/alidns rm alidns.sh-
测试是否能申请
正式申请时去掉 --dry-run 参数:certbot certonly -d *.替换自己的域名.com --manual --preferred-challenges dns --manual-auth-hook "alidns" --manual-cleanup-hook "alidns clean" --dry-run -
证书续签
测试证书续签--dry-runcertbot renew --manual --preferred-challenges dns --manual-auth-hook "alidns" --manual-cleanup-hook "alidns clean" --dry-run- 添加到定时任务中
-
crontab -e1 1 */1 * * root certbot renew --manual --preferred-challenges dns --manual-auth-hook "alidns" --manual-cleanup-hook "alidns clean" --deploy-hook "systemctl restart nginx"
-
- 添加到定时任务中
-
-
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)