我正在尝试按照此处提供的说明进行操作:https ://codekabinett.com/rdumps.php?Lang=2&targetDoc=create-install-ssl-tls-certificate-sql-server用于设置用于测试的自签名证书。我能够成功创建证书和密钥并将它们转换为 .pfx 文件。现在我正在尝试使用证书导入向导将该 pfx 实际导入本地计算机。选择文件后,它会询问私钥的密码。我假设这是创建证书或转换为 pfx 时选择的密码。无论哪种方式,它都不会接受密码。我仔细检查以确保我没有输入错误。我删除了所有文件并使用相同的密码重新创建了它们。还是被拒绝了。在这一点上,我不确定还有什么可以尝试的。我在这里想念什么?
仅供参考,这是我用来生成文件的命令:
openssl req -x509 -newkey rsa:4096 -keyout C:\Users\pbuchheit\sqlkey.pem -out c:\Users\pbuchheit\sqlcert.pem -days 3650 -extensions server_ssl
openssl pkcs12 -export -out C:\Users\pbuchheit\sqlcert.pfx -inkey C:\Users\pbuchheit\sqlkey.pem -in C:\Users\pbuchheit\sqlcert.pem
更新:
问题似乎与 pfx 文件有关。如果我尝试不安装普通证书 (.crt) 文件,它工作正常。将 crt 和密钥转换为 pfx 时,密码是否会被删除或更改?
我终于在这里找到了答案:https ://stackoverflow.com/a/70369871/1860222 。显然,导入向导给出了垃圾反馈,问题与密码无关。事实证明,openssl 默认使用与 Windows 10 不兼容的加密。一旦我将 pfx 的加密明确设置为 Windows 可以处理的加密,导入工作正常。
最后的命令最终看起来像这样: