前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名

原创
作者头像
李洋博客
发布2024-10-22 16:06:59
发布2024-10-22 16:06:59
4.6K00
代码可运行
举报
文章被收录于专栏:李洋博客李洋博客
运行总次数:0
代码可运行

最近一直在折腾网站的SSL证书,因为之前用的商家已经开始收费了,不得以需要更换,毕竟白嫖的很香啊,之前也写过利用came.,但是毕竟是代码看着可能不习惯,今日找到了一个神奇【Certd】,Certd 是一个免费全自动申请和自动部署更新SSL证书的工具。特点是:该项目不仅支持证书申请过程自动化,还可以自动化部署更新证书,让你的证书永不过期。他可以在后台申请全自动申请证书(支持阿里云、腾讯云、华为云、Cloudflare等各种途径注册的域名),包括全自动部署更新证书(目前支持部署到主机、部署到阿里云、腾讯云等,专业版),最最重要的是它支持通配符域名/泛域名,支持多个域名打到一个证书上,这个就很良心了哈。

系统可以在申请完成或者临到期设置邮件通知,可以私有化部署,保障安全,重中之重就是免费、免费、免费(免费的10条,够用)。

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第1张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第1张

好了,不废话直接安装,分成两部分,在宝塔<9.2版本需要手动安装(也不费事),>9.2版本可以在应用商店直接搜索安装,更简便,首先安装手动。

手动部署Certd

其实学习下手动安装也不错,毕竟有联系就能记住很多操作,不至于一看见字符界面就懵B,好了,现在登录宝塔面板后台,开始跟着教程操作,如图:在宝塔左侧菜单找到【Docker】(没有证明版本太低了,得升级了啊),然后点击顶部tab标签的【容器】,在新弹出的页面我们依次选择【容器编排】-创建,如图:

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第2张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第2张

再次弹出新创,添加Yaml模板,我们选择【添加Compose模板】,创建模板设置【certd】,备注可忽略也可自行设置,然后内容复制如下代码,看图:

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第3张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第3张

内容代码如下:

代码语言:javascript
代码运行次数:0
复制
version: '3.3' # 兼容旧版docker-compose
services:
  certd:
    # 镜像                                                  #  ↓↓↓↓↓ --- 镜像版本号,建议改成固定版本号
    image: registry.cn-shenzhen.aliyuncs.com/handsfree/certd:latest
    container_name: certd # 容器名
    restart: unless-stopped # 自动重启
    volumes:
      #   ↓↓↓↓↓ -------------------------------------------------------- 数据库以及证书存储路径,默认存在宿主机的/data/certd/目录下,【您需要定时备份此目录,以保障数据容灾】
      - /data/certd:/app/data
    ports: # 端口映射
      #  ↓↓↓↓ ---------------------------------------------------------- 如果端口有冲突,可以修改第一个7001为其他不冲突的端口号
      - "7001:7001"
    dns:
      #  ↓↓↓↓ ---------------------------------------------------------- 如果出现getaddrinfo ENOTFOUND等错误,可以尝试修改或注释dns配置
      - 223.5.5.5
      - 223.6.6.6
      #  ↓↓↓↓ ---------------------------------------------------------- 如果你服务器部署在国外,可以用8.8.8.8替换上面的dns
#      - 8.8.8.8
#      - 8.8.4.4
#    extra_hosts:
      #  ↓↓↓↓ ---------------------------------------------------------- 这里可以配置自定义hosts,外网域名可以指向本地局域网ip地址
#      - "localdomain.comm:192.168.1.3"
    environment: # 环境变量
      - TZ=Asia/Shanghai
      #- HTTPS_PROXY=http://xxxxxx:xx
      #- HTTP_PROXY=http://xxxxxx:xx
                          #  ↑↑↑↑↑ ------------------------------------- 这里可以设置http代理
      - certd_system_resetAdminPasswd=false
                                     #  ↑↑↑↑↑--------------------------- 如果忘记管理员密码,可以设置为true,重启之后,管理员密码将改成123456,然后请及时修改回false
      - certd_cron_immediateTriggerOnce=false
                                     #  ↑↑↑↑↑--------------------------- 如果设置为true,启动后所有配置了cron的流水线任务都将被立即触发一次
      - VITE_APP_ICP_NO=
                      #  ↑↑↑↑↑ ----------------------------------------- 这里可以设置备案号
      #- certd_koa_key=./data/ssl/cert.key
      #- certd_koa_cert=./data/ssl/cert.crt
                      #  ↑↑↑↑↑ ----------------------------------------- 配置证书和key,则表示https方式启动,使用https协议访问,https://your.domain:7001
      # 设置环境变量即可自定义certd配置
      # 服务端配置项见: packages/ui/certd-server/src/config/config.default.ts
      # 服务端配置规则: certd_ + 配置项, 点号用_代替

      # 客户端配置项见: packages/ui/certd-client/.env
      # 按实际名称配置环境变量即可,如: VITE_APP_API=http://localhost:7001

如无必要不用修改内容代码,如有需求按需修改吧,比如DNS和端口号,这些可以修改的。然后点击提交,如图:

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第4张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第4张

添加项目完成之后,我们在右侧找到【拉取镜像】,如图拉去镜像,部分地区可能有延迟,如图拉取失败建议更新宝塔9.2+版本,一键部署吧,拉取图片:

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第5张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第5张

等待拉取镜像完成后,然后点击【容器】就能看见我们刚刚新建好的【certd】

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第6张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第6张

至此手动部署完成,我们可以点击【certd】查看项目的信息,如果你需要看的话,没有必要的话直接访问即可:

访问测试:http://ip:7001

默认账号密码:admin/123456(登录必须修改)

如果是最新版本的宝塔,我们可以在后台一键部署,教程开始。

一键部署Certd

这个就简单了,还是找到【Docker】然后在顶部菜单点击【应用商店】,直接搜索应用【certd】,如图,点击安装即可。

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第7张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第7张

弹出新窗口,我们选择【latest】(貌似没有其他选项),然后设置域名访问(不需要就不设置),如果用IP访问勾选【允许外部访问】,最后设置下访问端口,如图:

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第8张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第8张

记得去防火墙开通外部访问的端口,比如【7001】,这个端口可以自己修改,不一定非得使用默认。DNS选项也可以忽略或者按需设置。然后就没有然后了,访问地址登录:

访问测试:http://ip:7001

默认账号密码:admin/123456(登录必须修改)

后台部分界面演示:

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第9张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第9张
官方特别说明

本项目ssl证书提供商为letencrypt

申请过程遵循acme协议

需要验证域名所有权,一般有两种方式(目前本项目仅支持dns-01)

http-01:在网站根目录下放置一份txt文件

dns-01:需要给域名添加txt解析记录,通配符域名只能用这种方式

证书续期:

实际上没有办法不改变证书文件本身情况下直接续期或者续签。我们所说的续期,其实就是按照全套流程重新申请一份新证书,然后重新部署上去。免费证书过期时间90天,以后可能还会缩短,所以自动化部署必不可少,设置每天自动运行,当证书过期前20天,会自动重新申请证书并部署,另外看看专业版的功能对比:

宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第10张
宝塔面板安装certd图文教程,私有化部署保障安全,支持通配符域名/泛域名 第10张

好了,截至目前都已经安装和部署完成了,我们需要做的就是申请自己的通配符/泛域名证书了,哦对了,你看能觉得奇怪,为什么没有申请证书的教程呢?是吧,哈哈哈还是我了解你吧,因为我得留着再写一篇文章啊,不然一天天的真不知道写什么,还有官方还在一些其他的配置方案,比如忘记密码或者其他方式安装,直接安靠官方的文档吧,我就不写了,官方地址如下:

【GitHub】:https://github.com/certd/certd (访问不了就选择gitee)

【Gitee】:https://gitee.com/certd/certd (国内镜像)

我去准备下一篇文章了,记录下使用cretd申请泛域名证书的过程,有其他问题留言反馈吧。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 手动部署Certd
  • 一键部署Certd
    • 官方特别说明
    • 证书续期:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档