本文最后更新于:2025年5月2日 晚上
OHTTPS 是支持证书一站式管理、自动化更新、自动化部署、自动化监控及告警等的HTTPS证书(SSL证书)服务,本文记录相关内容和使用流程。
简介
OHTTPS致力于为用户提供零门槛、简单、高效的HTTPS证书(SSL证书)服务。
支持免费HTTPS证书(SSL证书) 申请、证书一站式管理、自动化更新 、 自动化部署 、 自动化监控。
OHTTPS中所有免费版HTTPS证书/SSL证书均由Let’s Encrypt颁发,受所有主流浏览器信任。Let’s Encrypt是免费、开放和自动化的世界知名证书颁发机构,由非盈利组织互联网安全研究小组(ISRG)运营。Let’s Encrypt已为全世界 45000万 个网站提供HTTPS证书/SSL证书,可放心使用。
OHTTPS中所有付费版HTTPS证书/SSL证书均由Sectigo(原Comodo)颁发,它是全球HTTPS证书/SSL证书市场占有率第一的CA品牌,其产品安全、兼容性广泛、价格优惠,受到大量站长的信任和欢迎。
Let’s Encrypt 官方提供了自动更新证书的方案,但是存在以下几个问题:
只有命令行模式,对于不熟悉命令行的用户使用起来不方便、不直观
自动更新只能做到更新一个节点,如果证书在多个节点使用,不能自动同步更新,需要手动进行同步更新
无法自动部署至云服务商的负载均衡、CDN或证书列表以及Docker容器中等
为了解决以上三个问题,OHTTPS为用户提供了友好的证书管理界面,方便证书的申请和管理;添加了自动更新和自动部署功能,可在证书更新后自动部署至多个节点,包括阿里云、腾讯云、群晖NAS、百度智能云、七牛云、多吉云、宝塔面板的负载均衡、CDN或证书列表中,以及NGINX、HTTPD、OpenResty容器中等,做到真正的证书更新管理无忧。
-
友好的管理界面
OHTTPS为用户提供了友好的HTTPS证书/SSL证书管理界面。通过管理界面可方便的进行HTTPS证书/SSL证书的申请、查看、吊销等功能,可方便的管理域名的授权验证,以及证书部署节点的配置等。 -
证书到期前提醒
OHTTPS为用户提供了免费的证书到期前提醒服务。如果用户将证书设置为到期前自动通知模式,则在证书到期前,OHTTPS会提前以邮件的形式提醒用户证书即将到期,用户如果未开启自动更新模式,则可在收到通知后及时进行手动更新。 -
到期前自动更新
OHTTPS为用户提供了证书到期前自动更新服务。如果用户将证书设置为到期前自动更新模式,则在证书到期前,OHTTPS会提前重新从Let’s Encrypt或者Sectigo(原Comodo)颁发证书以对证书更新,并及时通知用户更新结果。 -
云节点自动部署
OHTTPS为用户提供了证书更新后自动部署服务。如果用户将证书设置为更新后自动部署模式,则在每次证书自动更新后,将自动部署至用户配置的部署节点,可自动部署至API接口、Webhook、SSH和阿里云、腾讯云、群晖NAS、七牛云、多吉云、宝塔面板的负载均衡、CDN或证书列表中,以及NGINX、HTTPD、OpenResty容器以及自定义容器中,并且可配置同时部署至多个节点。 -
免DNS授权模式
OHTTPS为用户提供了免DNS授权模式,即无需用户提供DNS服务商的增删解析记录接口的授权,对用户更安全、放心。在创建证书时选择免DNS授权模式,只需在您的域名解析中添加指定的CNAME解析记录,即可实现自动更新证书,无需DNS服务商操作解析记录接口的授权。 -
多站点证书监控
OHTTPS为用户提供了多站点证书监控及证书到期告警服务,支持指定域名、IP及端口进行监控,如发现站点证书即将到期,将自动向用户发送即将到期告警通知,提醒用户及时对相关站点证书进行关注和处理,目前已支持邮件、钉钉、企业微信、Slack、Discord、Teams等多种告警通知方式。
我的域名在百度智能云,我这里以百度智能云为例记录使用 DNS 授权的 OHTTPS 使用流程。
创建DNS授权
目前已经支持API接口授权验证的的域名解析服务商包括:阿里云、AWS、GoDaddy、DnsPod.cn(腾讯云)、Cloudflare、华为云、百度智能云。
文档链接:https://ohttps.com/docs/start
- 登陆百度智能云
打开安全认证,即可看到添加[DNS授权-百度智能云]时参数中所需的AccessKey以及SecretKey。
注意当前 AccessKey 的账户权限,整不明白就给个系统管理员
安全认证地址:https://console.bce.baidu.com/iam/#/iam/accesslist
- 添加 OHTTPS DNS 授权
登陆 OHTTPS 后,点击左侧 DNS授权
-> 添加DNS授权
填入刚刚申请的 ID 和 Key
添加成功是这样的。
创建HTTPS证书
选择DNS授权模式时创建证书步骤为:
- 点击左侧菜单 [证书管理] ,打开证书管理界面
- 点击证书管理界面 [创建证书] 按钮,弹出创建证书界面
-
选择想要创建的证书类型,证书类型分为:单域名、多域名和泛域名三种
肯定是
泛域名
香啊。
- 在证书类型下方的域名输入框中,输入您想要颁发证书的域名
- 选择DNS域名解析服务商,选择对应的DNS授权
- 选择刚刚创建的 DNS 授权
- 点击授权验证,通知Let’s Encrypt对您输入的域名进行控制权验证。授权验证过程会需要1~2分钟,请耐心等待。
如果失败建议查看账户权限是否可以操作 DNS 服务
- 验证通过后,点击创建证书即可完成创建。如果验证失败,可能是因为您的DNS授权参数输入错误,请重新输入后重试。证书创建过程会持续3~10分钟,请耐心等待。
证书创建完成后,可点击证书查看详情。证书详情页显示了证书的更新版本记录和部署记录。证书一旦创建完成,会生成第一版更新记录,点击对应的更新记录,即可查看证书详细内容,包括:cert.key(PEM格式)、cert.cer(PEM格式)、fullchain.cer(PEM格式)。您还可以在证书管理界面,对证书进行命名、搜索、删除、配置等操作。
创建证书部署节点
如果需要将证书部署至阿里云、腾讯云、七牛云、多吉云、宝塔面板的负载均衡、证书列表或者CDN中,或者NGINX、HTTPD、OPENRESTY容器中,以及Webhook、SSH、API、群晖NAS等,需要在部署节点管理界面添加部署节点。
我的需求是将证书部署到 Nginx 容器中,此处记录过程。
生成 令牌
关联已经申请成功的 ssl 证书
点击创建部署节点
创建成功。
Docker - NGINX 证书部署
说明
Docker - NGINX 类型的部署节点用于实现将OHTTPS中申请的HTTPS证书/SSL证书自动化部署至nginx容器中。
使用该镜像时,需要设置以下两个环境变量:
- PUSH_NODE_ID:即为部署节点创建完成后系统生成的部署节点的ID,部署节点的ID都是以push开头的,样例:push-53ejqm8p60gd7no9
- PUSH_NODE_TOKEN:即为创建部署节点时,通过点击生成按钮生成的32位令牌,样例:6b2440b1e3f180a3c9453f9d7766a565
在使用该镜像的容器首次启动时,会根据配置的PUSH_NODE_ID和PUSH_NODE_TOKEN从OHTTPS服务器拉取最新版证书,如果PUSH_NODE_ID对应的部署节点被多个证书配置为部署节点,则会同时拉取多个证书,拉取到的证书文件被存放在容器内/etc/nginx/certificates文件夹下,然后按照证书ID为子文件夹进行存放(证书ID为创建证书完成后系统生成的证书的ID,证书的ID都是以cert开头的,样例:cert-2enm4pr1q09g3x5z),则证书文件的全路径为:
- 私钥文件cert.key(PEM格式):
1 |
|
- 证书文件fullchain.cer(PEM格式):
1 |
|
把上面路径中’${证书ID}'部分换成您的证书ID即为对应文件在容器中的存放路径。注意在容器启动前,请先完成证书部署节点的配置,将证书和部署节点关联,否则会导致容器无法成功启动。
部署流程
- 拉取
ohttps/ohttps-nginx
镜像
1 |
|
- 创建 ohttps-nginx 容器
1 |
|
1 |
|
完成了 docker 部署。
-
修改 conf 文件(示例)
关键部分为
证书路径
。
1 |
|
部署效果
部署成功 ~
参考资料
文章链接:
https://www.zywvvd.com/notes/coding/internet/ohttps/ohttps/
“觉得不错的话,给点打赏吧 ୧(๑•̀⌄•́๑)૭”

微信支付

支付宝支付