本教程将向您展示如何使用网页 GUI 在 pfSense 上安装 SSL 证书。您需要将证书及其私钥导入到证书管理器中,导入颁发 CA 的证书链,然后将证书分配给 pfSense 网页界面(即 webConfigurator)。
在 pfSense 上生成 CSR 代码
CSR(证书签名请求)是一段编码文本,其中包含您的组织信息和公钥。您在申请 SSL 证书时将其提交给证书颁发机构,同时会生成与之匹配的私钥。您有两种方式可以选择:
- 使用我们的 CSR 生成器自动生成 CSR。这是最简单的方式,并且可以让您将私钥保存在自己可控的设备上。
- 在 pfSense 内部生成 CSR。前往System > Certificates,打开Certificates标签页,点击Add/Sign,然后将Method设置为Create a Certificate Signing Request。填写通用名称及其余字段后保存。pfSense 会为您保存私钥,并显示可复制到订单中的 CSR。有关更多背景信息,请参阅我们的如何生成 CSR指南。
下单时将 CSR 提交给证书颁发机构。CA 验证通过并颁发证书后,请继续进行下面的安装步骤。
在 pfSense 上安装 SSL 证书
CA 验证您的请求后,会通过电子邮件将证书文件发给您。典型的证书文件包中包含您的服务器证书、一个或多个中间证书以及一个根证书(通常以CA 证书包的形式一起提供)。请先导入 CA 证书链,以便 pfSense 能够建立完整的可信路径,然后再导入您的服务器证书。
第一步:导入根证书和中间证书
- 在 pfSense GUI 中,前往System > Certificates并打开Authorities标签页(标记为CAs)。
- 点击列表右下方的Add按钮(+图标)。
- 在Method下拉菜单中,选择Import an existing Certificate Authority。
- 为其设置一个清晰的Descriptive name,将 CA 证书粘贴到Certificate data框中,然后点击Save。
如果您的 CA 证书包中同时包含中间证书和根证书,请将每一个都作为单独的 CA 条目导入。在此处导入完整的证书链,可以避免常见的“证书链不完整”错误,该错误会在某些设备和浏览器上破坏信任关系。
第二步:导入服务器证书
导入服务器证书的方式取决于您生成 CSR 的位置。
如果您是在 pfSense 上生成 CSR 的:
- 前往System > Certificates并打开Certificates标签页。
- 找到与您创建的 CSR 相匹配的待处理条目(标记为外部/待处理请求),然后点击其旁边的Update(编辑)图标。
- 将颁发的证书粘贴到Final Certificate data框中,然后点击Save。pfSense 已经保存了与之匹配的私钥,因此您不需要再次粘贴私钥。
如果您是使用外部工具生成 CSR 的(例如 SSL Dragon CSR 生成器),请将证书及其私钥一起导入:
- 前往System > Certificates,打开Certificates标签页,然后点击右下方的Add/Sign按钮。
- 在Method下拉菜单中,选择Import an existing Certificate。
- 输入Descriptive name,将您的证书粘贴到Certificate data中,并将未加密的私钥粘贴到Private key data中。
- 点击Save。新证书现在会出现在列表中,可供分配给相应服务使用。
提示:私钥必须是未加密的(没有密码短语),pfSense 才能接受它。如果您的私钥以—–BEGIN ENCRYPTED PRIVATE KEY—–开头,请在导入前先移除密码短语。
将证书应用于 pfSense 网页 GUI
导入证书本身并不会自动激活它。要使用新证书保护 pfSense 网页界面(webConfigurator),请在 Admin Access 下进行分配:
- 前往System > Advanced并打开Admin Access标签页。
- 在webConfigurator下,将Protocol设置为HTTPS (SSL/TLS)。
- 在SSL/TLS Certificate下拉菜单中,选择您刚刚导入的证书。
- 滚动到页面底部并点击Save。pfSense 将使用新证书重启网页 GUI。
GUI 重启后,请在浏览器中通过https://重新加载该页面。如果您同时更改了端口,请在地址中包含新端口号。此时您应该会看到一个有效的锁形图标,并且没有证书警告。
要在 pfSense 的其他地方使用同一张证书,请在相应服务的设置中从证书下拉菜单中选择它:例如HAProxy前端、OpenVPN服务器,或Captive Portal。每个服务都引用您导入到证书管理器中的证书,因此一次导入即可服务于多种用途。
测试您的安装
证书生效后,请确认它被正确提供,并且证书链完整。如果 pfSense GUI 可以从互联网访问,请通过我们的SSL Checker运行检测,即可获得关于证书、证书链和协议支持情况的即时报告。
对于仅在内部或局域网中使用的防火墙,可以直接从任何安装了 OpenSSL 的机器上检查证书。将主机和端口替换为您防火墙的地址(GUI 默认通过 HTTPS 使用端口 443):
echo | openssl s_client -connect 192.168.1.1:443 -servername firewall.yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -subject -dates
此命令会打印出 pfSense 所提供证书的颁发者、主体和有效期日期。如果颁发者与您的 CA 相符,且日期为当前有效期内,则说明安装成功。您也可以直接在浏览器中打开 GUI,查看锁形图标以确认证书链解析无警告。
在哪里购买适用于 pfSense 的最佳 SSL 证书?
如果您正在寻找出色的购物体验,SSL Dragon就是您理想的 SSL 卖家。我们直观易用的网站将全程引导您浏览各类 SSL 证书。每一款产品均由信誉良好的证书颁发机构颁发,并完全兼容 pfSense。
无论您选择哪种证书,都能享受市场上最优惠的价格,以及专业的客户支持。
如果您正为选择适合防火墙的证书而苦恼,可以使用我们的SSL 向导来获得帮助。
常见问题解答
请在 System > Certificates 中的 证书管理器 导入证书。使用 Authorities(CAs)标签页导入根证书和中间证书,使用 Certificates 标签页导入服务器证书和私钥。导入完成后,将证书分配给相应服务,例如网页 GUI。
前往 System > Advanced > Admin Access,将 Protocol 设置为 HTTPS (SSL/TLS),在 SSL/TLS Certificate 下拉菜单中选择您导入的证书,然后点击 Save。pfSense 会使用所选证书重启网页 GUI。您必须先将证书导入证书管理器,它才会出现在下拉菜单中。
该下拉菜单只会列出拥有匹配私钥的证书。如果您在导入证书时没有包含其私钥,或者粘贴的是加密私钥,pfSense 将不会显示该证书。请使用 Import an existing Certificate 重新导入证书,并同时粘贴 Certificate data 和未加密的 Private key data。
是的。请将中间证书(以及根证书)作为 CA 条目导入到 System > Certificates > Authorities 中,以便 pfSense 能够发送完整的证书链。如果缺少中间证书,即使服务器证书本身是有效的,客户端也可能报告证书不受信任或证书链不完整。
通过 https:// 打开 pfSense GUI,并确认浏览器显示有效的锁形图标且没有警告。使用安装了 OpenSSL 的计算机,您也可以直接查询防火墙:echo | openssl s_client -connect 192.168.1.1:443 -servername firewall.yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -dates
如果返回结果显示您的 CA 为颁发者,且有效期为当前时间段,则表示证书已安装并处于激活状态。
可以。证书管理器中的任何证书都可以在多个服务之间重复使用。只需在 HAProxy、OpenVPN 服务器、Captive Portal 或其他启用了 TLS 的服务设置中的证书下拉菜单里选择它即可。一次导入即可服务于多种用途。
总结
在 pfSense 上安装 SSL 证书是一个由 GUI 驱动的过程:在 System > Certificates > Authorities 下导入 CA 证书链,在 Certificates 标签页下导入您的服务器证书和私钥,然后在 System > Advanced > Admin Access 中将 Protocol 设置为 HTTPS (SSL/TLS),并将证书分配给网页 GUI。您还可以根据需要将同一证书重复用于 OpenVPN 或 HAProxy。
还没有证书?浏览我们的 SSL 证书。


