Skip to content

使用 acme.sh 为宝塔面板配置免费 IP HTTPS 证书(面板 SSL)

完整教程:在 Linux 服务器上通过 acme.sh 为宝塔面板申请与续签基于 IP 地址(无需域名)的免费 HTTPS 证书,并自动写入面板 SSL 配置,全面提升面板登录链路的安全性。

更新于 查看 Markdown

长期以来,宝塔面板自身提供的 HTTPS 访问默认使用的是自签名证书。这种证书虽然可以实现加密传输,但由于并未被浏览器和操作系统的信任根所收录,在访问面板时通常会出现「证书不受信任」「连接不安全」等安全提示,需要手动确认后才能继续访问。在实际运维场景中,这类提示比较影响使用体验,随着 Let’s Encrypt 正式支持免费 IP HTTPS 证书,即使不具备域名条件,也可以为基于 IP 访问的服务签发浏览器可信的证书。这使得为宝塔面板本身配置一个受信任的 HTTPS 证书成为可能。

本文将介绍如何通过 acme.sh 为宝塔面板自动申请并部署 免费的 IP HTTPS 证书,替换默认的自签名证书,从而实现浏览器可信的面板 HTTPS 访问。

操作步骤

安装 acme.sh

  1. 通过 SSH 或面板终端登录到您的服务器,执行以下命令安装 acme.sh:
curl https://get.acme.sh | sh -s email=my@example.com

请将 my@example.com 替换为您的真实邮箱地址。

  1. 安装完成后,执行以下命令使 acme.sh 生效,也可重新进入终端使其生效:
source ~/.bashrc

使 acme.sh 生效

  1. 执行以下命令,确认 acme.sh 安装成功,预期可以看到版本号输出:
acme.sh --version

确认 acme.sh 安装成功

  1. 执行以下命令,切换 acme.sh 默认 的 CA 为 Let’s Encrypt:
acme.sh --set-default-ca --server letsencrypt
  1. 至此,acme.sh 安装完成。

申请 IP 证书

  1. 在宝塔面板中创建一个新的站点,域名填写服务器的公网 IP 地址,其他选项根据需要配置,完成后点击【确定】。 创建 IP 站点

  2. 在终端中执行以下命令,使用 acme.sh 申请 IP 证书,请将 YOUR_IP_ADDRESS 替换为您的服务器公网 IP 地址:

acme.sh --issue --cert-profile shortlived --days 3 -d YOUR_IP_ADDRESS --webroot /www/wwwroot/YOUR_IP_ADDRESS/

例如:

acme.sh --issue --cert-profile shortlived --days 3 -d 114.132.47.153 --webroot /www/wwwroot/114.132.47.153/

申请 IP 证书

  1. 申请成功后,执行以下命令为面板部署SSL证书:
acme.sh --install-cert -d YOUR_IP_ADDRESS \
--key-file /www/server/panel/ssl/privateKey.pem \
--fullchain-file /www/server/panel/ssl/certificate.pem \
--reloadcmd "service bt restart"

请将 YOUR_IP_ADDRESS 替换为您的服务器公网 IP 地址,例如:

acme.sh --install-cert -d 114.132.47.153 \
--key-file /www/server/panel/ssl/privateKey.pem \
--fullchain-file /www/server/panel/ssl/certificate.pem \
--reloadcmd "service bt restart"

部署 IP 证书到面板

  1. 至此,IP 证书已成功部署到宝塔面板,效果如下图所示: 面板 SSL 证书部署成功
Navigation

Type to search…

↑↓ navigate↵ selectEsc close