我正在使用 openssl 转换从 Godaddy 购买的用于 IIS Windows 2016 的证书。我用来转换的命令如下,我按 Enter 键不输入密码。我也尝试过输入简单和复杂的密码,仍然出现同样的错误。
openssl pkcs12 -export -out website.pfx -inkey private.key -in a01f36fe692456.crt -certfile gd_bundle-g2-g1.crt
在 Windows Server 2016 上导入 IIS 时出现“指定的网络密码不正确”,为了排除故障,我尝试了相同的导入,但它可以导入到 Windows Server 2019。想知道如何为 Windows 2016 生成 pfx 文件、IIS v10?谢谢
我已经使用 openssl 与 IIS 一起使用来创建文件;如果您导入到本地用户证书存储然后导出它,它就可以工作,我使用
将导出的 pfx 文件与 openssl pfx 文件进行比较openssl pkcs12 -in website.pfx -info
openssl 版本上的 MAC 是 sha256,与导出版本上的 SHA1 相比,因此我在 openssl 命令中添加了
-macalg SHA1
。
与导出版本上的 pbeWithSHA1And3-KeyTripleDES-CBC 相比,openssl 版本上的私钥 PKCS7 数据为 PBES2、PBKDF2、AES-256-CBC,因此我在 openssl 命令中添加了
-keypbe PBE-SHA1-3DES
。
证书的 PKCS7 加密数据也是如此,因此我也将
-certpbe PBE-SHA1-3DES
添加到 openssl 命令中。
我运行以获取将导入到 IIS 的成功文件的最终命令是
openssl pkcs12 -macalg SHA1 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -out website.pfx -inkey private.key -in a01f36fe692456.crt -certfile gd_bundle-g2-g1.crt
当我尝试在我的服务器(WS 2016 标准)上导入 pfx 文件时,我遇到了同样的问题,并且上述选项都不适合我。 我什至尝试使用证书和私钥再次生成 pfx,但它仍然会拒绝密码。
因此,为了完整起见,我添加了对我有用的内容。
为了能够在服务器上导入证书,我必须:
这似乎是与 Windows 的兼容性问题,但我不确定到底是什么问题以及导入和导出如何解决它。
就我而言,这是 PFX 文件本身的加密算法。 Windows 告诉我们密码不起作用,因为它没有使用正确的算法。
您只需向 openssl 添加 -legacy 选项即可使其使用以前的算法。
openssl pkcs12 -export -legacy -out website.pfx ...
我在 Windows Server 2016 上遇到了这个问题。我尝试使用以下命令导出新的 PFX 文件。
openssl pkcs12 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -legacy -out domain.com.pfx -inkey domain.decrypted.key -in your.crt
这对我有用,但我认为这根本不是正确的解决方案...... 3des-sha1 已被黑客攻击多年...
查看 pfx 文件与 pfx 文件 使用此 openssl 命令创建:
MAC:sha1,迭代 2048 MAC长度:20,盐长度:8 PKCS7 加密数据:pbeWithSHA1And3-KeyTripleDES-CBC,迭代 2048 隐藏密钥包:pbeWithSHA1And3-KeyTripleDES-CBC,迭代 2048
原始 pfx 不起作用:
MAC:sha256,迭代 2048 MAC长度:32,盐长度:8 PKCS7 加密数据:PBES2、PBKDF2、AES-256-CBC、迭代 2048、PRF hmacWithSHA256 带罩钥匙包:PBES2、PBKDF2、AES-256-CBC、迭代 2048、PRF hmacWithSHA256
如何获得导入 sha256 的普通加密..
我尝试导入 .pfx 文件,但在 Windows Server 2016、IIS 上遇到相同的错误。
我必须将其导入到我的个人电脑(W11 Pro)上,然后使用私钥将其导出(以创建 .pfx),从列表中选择传统加密
TripleDES-SHA1
。
您也可以在使用
-legacy
属性创建 .pfx 文件时使用 OpenSSL 来完成此操作。