当前位置:

首页 > 编程开发 > 宝塔面板如何配置泛域名SSL证书_使用DNS API接口自动申请

宝塔面板如何配置泛域名SSL证书_使用DNS API接口自动申请

配置泛域名SSL证书需在宝塔面板中使用DNSAPI验证,填写`*.example.com`并同时包含主域名,需添加TXT解析记录。自动续期需手动添加计划任务,例如每月执行acme.sh命令。部署后需修改Nginx配置中server_name为通配符格式,并重启Nginx服务,否则子域名访问会报错。

配置泛域名SSL证书,在宝塔面板里其实是个很典型的“一步到位但容易踩坑”的操作。很多人照着流程走下去,最后发现子域名还是报证书错误,或者续期的时候悄无声息地失败了。这些问题,归根结底就出在验证方式、域名填写、续期配置和Nginx处理这四个环节上。下面逐个拆开来看。

![宝塔面板如何配置泛域名SSL证书_使用DNS API接口自动申请](http://img.318050.com/uploads/20260415/177620348469deb6dcba9dc685074171.webp) ### 泛域名SSL在宝塔里必须用DNS验证,HTTP验证行不通 泛域名证书有个关键特征——它走的是DNS-01挑战,没法用HTTP方式验证。ACME协议对此有明确规定。如果你在宝塔面板里点了“文件验证”或“自动验证”,日志里大概率会看到类似 `Cannot issue for "*.xxx": Domain is not valid for issuance` 或 `NS error: No TXT record found` 的提示。不是宝塔出了问题,是验证路径从一开始就选错了。 解决办法是手动切换到DNS API模式,前提是你的DNS服务商在ACME支持列表里。阿里云、腾讯云、Cloudflare是最常用的几家。具体操作上,有几个要点得注意: - 确认域名DNS解析托管在支持的平台(比如阿里云云解析DNS),并且账号有API权限。如果是RAM子用户,需要授予 `Alidns:DescribeDomainRecords` 和 `Alidns:AddDomainRecord` 这类权限。 - 在宝塔「网站」→「SSL」→「其他证书」→「Let's Encrypt」里,别急着点“申请”。先点右上角的“设置”,勾选“使用DNS API验证”。 - 下拉选择对应的DNS服务商,填入 `AccessKey ID` 和 `AccessKey Secret`(阿里云)或 `API Token`(Cloudflare)。注意Cloudflare的Token需要带 `Zone:Read` 和 `DNS:Edit` 权限。 ### 填泛域名时必须带星号且只填一级通配符 申请框里写 `*.example.com` 是对的,但要是写成 `*.sub.example.com` 或 `**.example.com`,就没法通过——ACME不允许多级通配或嵌套通配。另外,不能只填 `*` 或 `example.com`。泛域名证书必须显式包含 `*.` 前缀,而且主域名(`example.com`)也建议一并加入,不然访问根域名时会提示证书不匹配。 推荐的做法是这样填:`*.example.com,example.com`(逗号分隔,无空格)。如果需要覆盖 `www.example.com`,可以再加进去:`*.example.com,example.com,www.example.com`。不过要注意,Let's Encrypt单张证书最多支持100个域名,泛域名本身已经占了一个主体,别堆太多。 填完之后别急着提交。先点一下“测试DNS API”按钮——宝塔会尝试添加一条临时TXT记录并查询,成功才说明凭证和权限没问题。 ### 自动续期依赖cron任务,但宝塔默认不自动启用 用DNS API模式申请成功后,证书的有效期是90天。但宝塔不会像HTTP模式那样自动挂载续期任务。如果你没有手动干预,到期前20天左右面板右上角会出现黄色提醒,点进去看“自动续签”开关仍然是灰色的。这是正常现象,因为DNS续期需要复用相同的API凭据,宝塔不会默认帮你保存并触发。 解决方案是手动配置一个计划任务: - 进入「计划任务」→「添加计划任务」,任务类型选「Shell脚本」,执行周期设为「每天03:00」(避开Let's Encrypt的请求高峰)。 - 脚本内容可以填:`bt 71 && bt 72`(`bt 71`重载SSL配置,`bt 72`强制续签所有可续签证书)。 - 更稳妥的做法是单独指定站点续签:`/www/server/panel/pyenv/bin/python /www/server/panel/class/acme_v2.py --renew=www.example.com`,把 `www.example.com` 换成你实际的主域名。 ### 证书部署后Nginx配置要手动检查server_name 宝塔生成的泛域名证书虽然绑定了,但默认站点配置里的 `server_name` 可能还是写的具体域名(比如 `www.example.com`)。这会导致 `api.example.com` 或 `shop.example.com` 访问时走不到这个HTTPS配置,浏览器报 `NET::ERR_CERT_COMMON_NAME_INVALID`。 需要手动处理一下: - 进入「网站」→「设置」→「配置文件」,找到 `server_name` 行,改成 `server_name *.example.com example.com;`。 - 注意,Nginx不支持 `server_name *` 这种写法,必须写完整通配格式。如果子域名太多,也可以用正则:`server_name ~^(?.+)\.example\.com$;`,但需要配合 `ssl_certificate` 和 `ssl_certificate_key` 动态加载——宝塔不原生支持,得手写逻辑。 - 改完之后务必点“重载配置”,别只保存。否则reload不生效,HTTPS仍然会fallback到默认站点或报错。 最容易被忽略的是DNS API权限粒度和续期脚本的执行权限。RAM子用户如果只给了读权限,申请能过,续期会卡在“添加TXT记录失败”。而cron任务默认以 `root` 身份运行,但部分云厂商的SDK(比如腾讯云)要求 `~/.tencentcloud/credentials` 文件存在,得提前配好,或者改用环境变量方式传参。
本文内容来源于网友投稿,如有侵权请联系删除。
作者最新文章
编程开发 ssl
相关文章 更多
解决PHP递归报错:max_nesting_level限制与内存溢出处理
解决PHP递归报错:max_nesting_level限制与内存溢出处理

遇到PHP递归报错时,不要盲目调大max_nesting_level。本文教你区分Xdebug限制、内存耗尽和正则递归错误,提供代码级的终止条件优化与迭代替代方案,彻底解决栈溢出问题。

PHP递归中static变量与引用传递的常见陷阱及调试
PHP递归中static变量与引用传递的常见陷阱及调试

本文分析PHP递归中static变量导致的状态污染及引用传递引发的共享数据修改问题。提供具体的代码复现、缓存键设计建议及调试打印技巧,帮助开发者避免隐蔽的逻辑错误。

PHP递归性能优化技巧与迭代替代方案
PHP递归性能优化技巧与迭代替代方案

解析PHP递归函数在树形数据处理中的性能瓶颈,提供预加载数据消除I/O、使用显式栈替代深层递归的实战方案,帮助开发者在代码可读性与执行效率间做出合理取舍。

Java测试中怎么使用Mockito模拟依赖对象
Java测试中怎么使用Mockito模拟依赖对象

详细讲解在Java单元测试中如何使用Mockito模拟依赖对象,包括引入依赖、创建Mock、打桩返回值、行为验证以及Mock与Spy的核心差异和常见陷阱排查。

链表删除节点的时间复杂度是多少及其详细分析
链表删除节点的时间复杂度是多少及其详细分析

详细分析链表删除节点的时间复杂度,深入探讨单链表与双向链表在不同已知前提下的查找与删除开销,并结合完整代码与清晰图解进行对比总结。

codex如何配置模型参数及文件设置教程
codex如何配置模型参数及文件设置教程

想知道如何让AI写出的代码更贴合你的习惯?本文手把手教你在VS Code中调整Codex相关模型参数,通过修改配置文件优化温度值和令牌限制,解决代码建议不准确或响应慢的问题。

Claude Code AI编程工具实力揭秘与编程助手实测
Claude Code AI编程工具实力揭秘与编程助手实测

通过实测展示Claude Code在终端中如何理解自然语言指令、自动修改代码文件并处理复杂编程任务,帮助开发者评估其实际辅助能力。

winforms教程自学入门与基础开发步骤详解
winforms教程自学入门与基础开发步骤详解

本教程详细讲解如何使用Visual Studio创建WinForms项目,通过添加按钮和标签控件并编写点击事件代码,实现一个基础的计数器功能,适合C#初学者快速上手Windows窗体应用开发。

Cursor自动补全设置教程教你快速开启代码补全功能
Cursor自动补全设置教程教你快速开启代码补全功能

详解Cursor编辑器中自动补全功能的开启与优化设置,涵盖Tab触发机制、上下文窗口调整及模型切换,帮助开发者解决补全延迟、干扰大等问题,提升编码流畅度。

pandas的数据格式怎么转换和设置方法教程
pandas的数据格式怎么转换和设置方法教程

详解Pandas中数据格式转换的核心方法,包括astype强制转换、to_numeric容错处理及日期解析技巧,解决常见类型错误并提升数据处理效率。

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

macOS软件
macOS软件

正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

Mac软件 更多
photoshop
photoshop
Windows、macOS 、 iPad

Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。

Blender
Blender
Windows、macOS 和 Linux

Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。

灵活计算器
灵活计算器
macOS/iOS/Android

灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

WINDOWS 更多
3dmax(3ds max)
3dmax(3ds max)
Windows

Autodesk 3ds Max 是一款专业的三维建模、动画与渲染软件,广泛应用于建筑可视化、游戏开发、影视动画、广告设计和产品展示等领域。

photoshop
photoshop
Windows、macOS 、 iPad

Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。

Blender
Blender
Windows、macOS 和 Linux

Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。