在 Linux 上生成 x.509 密钥对以用于 Windows

Generate x.509 key pair on Linux for use with Windows

我构建了一个 LAMP 解决方案,可以生成许多 powershell 文件,这些文件在许多 Windows 服务器上自动 运行。

我需要在 Linux 中生成一个 public/private 密钥对,以便我可以签署 powershell 文件,然后在 Windows 中通过设置 powershell 的执行策略来验证它们的真实性至 "AllSigned"

我试过 PGP,但发现 Windows 服务器的证书管理器不接受它生成的 public 密钥。

我想使用不受 Root Authority 支持的私钥,并且有许多不同的 powershell 脚本需要进行身份验证,并且 运行 在许多 Windows 服务器上。

我的问题是 - 如何生成 windows 证书管理器将接受并与 Powershell 的 "AllSigned" 执行策略一起工作的 x.509 密钥对?

感谢任何帮助。

您尝试过使用 openssl 命令吗?

参见 http://www.ipsec-howto.org/x595.html

正如@Peter 所建议的那样,OpenSSL 就是答案!

按照此页面上的说明,我能够生成自己的 public/private 密钥对并将 public 密钥导入 Windows 服务器证书管理器。

我使用此命令生成密钥:

openssl req -nodes -x509 -sha256 -newkey rsa:4096 -keyout "PrivateKey.key" -out "PublicKey.crt" -days 99999