免费版SSL实现自动续费以及部署

Tim
2025-04-12
点 赞
0
热 度
34
评 论
0

文章摘要

智阅GPT

初次接触SSL证书是在腾讯云( DNSPod)平台,那时每三个月就要手动重新申请一次。起初还能耐心操作,但自从体验了 CloudFlare 的自动化服务后,这种重复劳动就显得格外繁琐。于是我开始寻找自动续费的解决方案,最终成功实现了证书的自动化管理。本文将分享我的具体实现方法

本文介绍的两种方案均支持申请泛域名证书。

自动续费

最初在网上搜索方案时,找到的大多是通过 acme.sh 脚本实现的教程。但在实践过程中,意外发现我的服务器面板工具(1Panel)已经内置了证书申请功能( Lego 插件)。经过对比测试,最终选择了这个集成度更高、操作更便捷的解决方案

acme.sh

acme.sh 实现了 acme 协议,可以从 ZeroSSLLet's Encrypt 等 CA 生成免费的证书 开源地址

这里简单记录一下我使用docker运行,后续真正使用再补充:

services:
  acme-sh:
    image: neilpang/acme.sh
    container_name: acme.sh
    volumes:
      - ./out:/acme.sh
    network_mode: host
    command: daemon
    stdin_open: true
    tty: true
    restart: no

使用 docker exec 运行 acme.sh 命令:

docker exec acme.sh --help
docker exec acme.sh --issue -d example.com --standalone

1Panel

具体操作非常直观,只需按照面板的可视化指引逐步操作:

  1. 创建DNS服务商API账户(用于域名验证)

  2. 配置ACME账户(用于证书签发)

  3. 发起证书申请流程

需要注意的是,在申请过程中可能会遇到验证超时的情况。此时通常有两种解决方案:

  • 修改 DNS服务器114.114.114.114 或者其他

  • 启用 跳过DNS验证 选项(部分证书类型适用)者跳过DNS校验

申请成功后直接可以在网站https选项中选择证书。

部署

由于我的域名托管在腾讯云平台,因此基于腾讯云API 3.0开发了自动化证书管理功能,主要实现了以下操作:

  1. SSL证书自动上传至云平台

  2. CDN服务的证书一键更换

  3. 删除过期证书

涉及到的函数如下:

SSL:

DescribeCertificate 获取证书信息

DescribeCertificates 获取证书列表

UploadCertificate 上传证书

DeleteCertificate 删除证书

CDN:

DescribeCertDomains 用于校验SSL证书并提取证书中包含的域名

UpdateDomainConfig 修改内容分发网络加速域名配置信息


眼睛记得的光影,心记得的温度,它们不会消散,只是藏进岁月的褶皱里。某一天,风一吹,它们又鲜活如初...

Tim

infj 提倡者

站长

具有版权性

请您在转载、复制时注明本文 作者、链接及内容来源信息。 若涉及转载第三方内容,还需一同注明。

具有时效性

目录

欢迎来到Tim的博客,为您导航全站动态

45 文章数
4 分类数
3 评论数
48标签数

热门文章

D&F - Frida

2024-08-04

1716
D&F开服

2024-07-27

761
D&F - DP插件

2024-08-04

355

访问统计