宝塔 Linux 面板在很久以前就添加了开启面板 HTTPS 访问的功能,但该选项默认是关闭的。然而在其最新的版本 9.1.0 中,使用最新的脚本全新安装的话会默认开启该选项。想要关掉也可以,不过既然官方都建议我们开启面板 HTTPS 访问,干脆就把它打开吧。

但是在官方的教程中却出现了一些奇怪的问题,在我的 MacBook Pro 中无法导入宝塔官方的根证书,按照教程内容下载了证书,并输入正确的密码 www.bt.cn,却提示 对不起,你输入的密码无效

在宝塔论坛找了一下相关内容,发现原来很多人也遇到了这个问题,baota_root.pfx 文件在 Windows 系统中都能导入成功,在 macOS 系统却一直提示密码无效,可能是 pxf 格式兼容问题,那就生成另一种兼容性好的证书。

首先将面板的证书下载到本地电脑,然后在 macOS 终端进入到该目录,为了确保 OpenSSL 是否已经存在于系统中,先使用 openssl version 命令查看一下版本号,可以看到我的版本号是 3.3.6。

然后使用以下命令创建另一个格式的证书,这条命令是使用 OpenSSL 从名为 baota_root.pfx 的 PKCS#12 文件中提取客户端证书,并将其保存为 certificate.crt 文件。需要注意的是,回车之后请输入证书密码 www.bt.cn

openssl pkcs12 -in baota_root.pfx -clcerts -nokeys -out certificate.crt

该命令具体内容如下:

  • openssl pkcs12: 使用 OpenSSL 的 pkcs12 子命令来处理 PKCS#12 文件。
  • -in baota_root.pfx: 指定输入文件,即名为 baota_root.pfx 的文件。
  • -clcerts: 只提取客户端证书(而不是 CA 证书或私钥)。
  • -nokeys: 不提取私钥,仅提取证书。
  • -out certificate.crt: 指定输出文件的路径和名称,将提取到的客户端证书保存为 certificate.crt

运行该命令后 baota_root.pfx 文件中的客户端证书将被提取并保存为 certificate.crt 文件,这个文件将会以 PEM 格式保存。

接下来回到访达,双击打开生成后的 certificate.crt 文件,会自动导入到钥匙串访问,双击打开该证书,在「信任」中设置「使用此证书时」为「始终信任」。

最后重启一下浏览器,可以看到宝塔面板的 SSL 证书已经处于正常状态,不会再提示不安全了。

如果觉得我的文章对你有用,请随意赞赏