宝塔面板+阿里云DNS自动SSL验证方法
时间:2026-03-19 22:09:48 290浏览 收藏
当在宝塔面板中为域名申请SSL证书遭遇“DNS验证失败”或“无法自动添加TXT记录”问题时,根本原因通常是宝塔未能成功调用阿里云DNS API完成Let’s Encrypt所需的DNS-01挑战;本文系统提供了三种切实可行的解决方案——从配置阿里云API密钥启用宝塔内置DNS验证插件实现全自动流程,到借助acme.sh脚本绕过面板限制进行命令行级精准控制,再到完全手动在阿里云DNS控制台添加TXT记录后由宝塔主动重试验证,覆盖不同安全要求、技术偏好与环境限制下的全部典型场景,助您快速、安全、零障碍地完成HTTPS部署。

如果您在宝塔面板中为域名申请SSL证书时遇到“DNS验证失败”或“无法自动添加TXT记录”的问题,则可能是由于宝塔未正确调用阿里云DNS API完成域名所有权验证。以下是实现宝塔面板与阿里云DNS联动、完成SSL证书自动验证的多种方法:
一、通过阿里云API密钥配置DNS验证插件
该方法利用宝塔内置的DNS验证插件,通过阿里云AccessKey ID和AccessKey Secret授权,使宝塔可直接调用阿里云OpenAPI写入TXT记录,从而满足Let’s Encrypt的DNS-01挑战要求。
1、登录阿里云控制台,进入访问控制(RAM)→安全信息管理→AccessKey管理,创建一对新的AccessKey(务必勾选“仅用于OpenAPI”权限)。
2、复制生成的AccessKey ID与AccessKey Secret,进入宝塔面板,点击左侧【网站】→【SSL】→【申请证书】→选择【DNS验证】→【DNS手动验证】旁的【设置DNS API】按钮。
3、在DNS API配置弹窗中,选择【阿里云DNS】,粘贴AccessKey ID与AccessKey Secret,点击【测试连接】,确认显示连接成功后保存。
4、返回证书申请页,输入域名,勾选【自动验证DNS】,点击【申请】,宝塔将自动创建并删除TXT记录完成验证。
二、使用acme.sh脚本配合阿里云DNS手动触发验证
当宝塔内置DNS插件不可用或版本过旧时,可绕过面板UI,直接在服务器终端运行acme.sh脚本,通过环境变量注入阿里云凭证,独立完成DNS-01验证流程。
1、以root用户登录服务器,在终端执行命令安装acme.sh:curl https://get.acme.sh | sh -s email=your@email.com。
2、执行source ~/.acme.sh/acme.sh.env加载环境,然后导出阿里云凭证:export ALIYUN_ACCESS_KEY="your_access_key_id" 与 export ALIYUN_ACCESS_KEY_SECRET="your_access_key_secret"。
3、运行证书签发命令:~/.acme.sh/acme.sh --issue --dns dns_ali -d example.com -d www.example.com(请将example.com替换为实际域名)。
4、验证成功后,执行~/.acme.sh/acme.sh --install-cert -d example.com --cert-file /www/server/panel/vhost/cert/example.com/fullchain.pem --key-file /www/server/panel/vhost/cert/example.com/privkey.pem,将证书部署至宝塔默认路径。
三、在阿里云DNS控制台手动添加TXT记录后触发宝塔重试
该方法不依赖API权限,适用于临时调试或安全策略禁止API密钥外泄的场景;宝塔支持在DNS记录就绪后主动轮询并完成剩余验证步骤。
1、在宝塔面板【网站】→【SSL】→【申请证书】页面,选择【DNS验证】,点击【下一步】后,页面将显示待添加的TXT主机名(如_acme-challenge.example.com)与对应值(一段随机字符串)。
2、登录阿里云DNS控制台,进入对应域名的解析设置页,点击【添加记录】,记录类型选【TXT】,主机名填写_acme-challenge(不含域名后缀),记录值粘贴页面提供的验证字符串,TTL设为120秒。
3、等待DNS全球生效(可通过dig -t txt _acme-challenge.example.com +short确认返回值一致),返回宝塔证书申请页,点击【重新验证】按钮。
4、宝塔将在数秒内检测到TXT记录存在,自动完成验证并下载证书,状态栏显示验证成功,证书已签发。
终于介绍完啦!小伙伴们,这篇关于《宝塔面板+阿里云DNS自动SSL验证方法》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
253 收藏
-
300 收藏
-
477 收藏
-
241 收藏
-
498 收藏
-
124 收藏
-
229 收藏
-
283 收藏
-
381 收藏
-
453 收藏
-
409 收藏
-
268 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习