解决 macOS 导入宝塔面板 SSL 证书失败

解决 macOS 导入宝塔面板 SSL 证书失败

💡 原文中文,约1200字,阅读约需3分钟。
📝

内容提要

宝塔面板9.1.0默认开启HTTPS,macOS导入其根证书baota_root.pfx时提示密码无效,疑为pfx格式兼容问题。解决办法:用OpenSSL从pfx中提取客户端证书为certificate.crt,密码为www.bt.cn;再双击导入钥匙串,将信任设为始终信任,重启浏览器即可正常访问。

🔎

延伸解读

问题根源:macOS 对 PFX 格式的兼容性差异

文章指出,宝塔面板 9.1.0 默认开启 HTTPS 后,其根证书 baota_root.pfx 在 Windows 上可正常导入,但在 macOS 上即使输入正确密码 www.bt.cn 也会提示密码无效。作者在论坛发现许多用户遇到相同情况,推测是 pfx 格式在 macOS 下的兼容问题。这说明问题并非密码错误,而是系统对证书格式处理方式不同,需要转换格式才能解决。

转换思路:用 OpenSSL 提取 PEM 格式证书

针对上述兼容问题,文章给出的方案是使用 OpenSSL 从 pfx 文件中提取客户端证书,生成兼容性更好的 certificate.crt 文件。命令中 -clcerts 表示只提取客户端证书,-nokeys 表示不提取私钥,输出为 PEM 格式。操作前可用 openssl version 确认系统已安装 OpenSSL,作者本机版本为 3.3.6。这一转换绕开了 macOS 直接导入 pfx 的障碍。

导入与信任设置:关键步骤与生效条件

生成 certificate.crt 后,需在访达中双击文件,系统会自动将其导入钥匙串访问。随后双击该证书,在「信任」设置中将「使用此证书时」改为「始终信任」。最后重启浏览器,宝塔面板的 SSL 证书即显示正常,不再提示不安全。文章强调,信任设置和浏览器重启是让更改生效的必要步骤,缺一不可。

❓

Q&A

为什么在 macOS 上导入宝塔面板的根证书 baota_root.pfx 会提示密码无效?

因为 baota_root.pfx 文件在 macOS 上可能存在 pfx 格式兼容问题,导致即使输入正确密码 www.bt.cn 也提示密码无效。

如何用 OpenSSL 从 baota_root.pfx 中提取客户端证书?

在终端中运行命令:openssl pkcs12 -in baota_root.pfx -clcerts -nokeys -out certificate.crt,然后输入密码 www.bt.cn,即可提取客户端证书并保存为 certificate.crt。

提取出的 certificate.crt 文件在 macOS 上如何导入并信任?

双击 certificate.crt 文件,它会自动导入到钥匙串访问。然后双击该证书,在「信任」设置中将「使用此证书时」改为「始终信任」。

完成证书导入后还需要做什么才能正常访问宝塔面板?

需要重启浏览器,之后宝塔面板的 SSL 证书就会处于正常状态,不再提示不安全。

宝塔面板 9.1.0 版本默认开启 HTTPS 访问吗?

是的,在宝塔 Linux 面板 9.1.0 版本中,使用最新脚本全新安装会默认开启面板 HTTPS 访问选项。

OpenSSL 命令中 -clcerts 和 -nokeys 参数分别是什么意思?

-clcerts 表示只提取客户端证书(而不是 CA 证书或私钥);-nokeys 表示不提取私钥,仅提取证书。

🏷️

标签

➡️

继续阅读