如何将 .p12 格式的 SSL 证书与 Traefik 一起使用



在所有文档中,都提到将.crt和.key添加到traefik.toml。

就我而言,我只有一个 .p12 文件,可以将 .p12 与 traefik 一起使用吗?

让我从格式之间的差异开始。感谢@sysadmin1138的出色解释。

PEM - 由 RFC 管理,优先由开源使用 软件。它可以有各种扩展名(.pem,.key,.cer, .证书,更多(

德尔 - PEM 的父格式。将其视为二进制文件很有用 base64 编码的 PEM 文件的版本。不经常使用 窗外。

.pkcs12 .pfx .p12 - 最初由 RSA 在公钥中定义 密码学标准(缩写为PKCS(,"12"变体是 最初由Microsoft增强,后来作为RFC 7292提交。 这是一种密码容器格式,包含公共和 私有证书对。与 .pem 文件不同,此容器是完全的 加密。

关于.p12的主要信息 - 它是完全加密和密码的容器。

快速浏览一下traefik certificate.go

tls仅使用加密/tls 和加密/x509。

package tls
import (
"crypto/tls"
"crypto/x509"
...    
)

查看加密/x509:从 PKCS12 文件读取证书 github 问题: 有人尝试将PKCS12证书支持添加到 crypto/x509 中,但最终没有实现。

正如评论中提到的,正确的方法是转换.p12。

这是实现它的热门示例(感谢@mulaz(:

openssl pkcs12 -in filename.pfx -nocerts -out filename.key
openssl pkcs12 -in filename.pfx -clcerts -nokeys -out filename.crt 

和相同的来源: 提示:使用 openssl 从 .pfx 中提取私钥(.pem 文件((个人信息交换(

希望对您有所帮助!

最新更新