在Windows上创建OpenSSL证书

Ben*_*Ben 78 windows ssl certificate ssl-certificate

由于我对SSL证书很新,以及它们的创建和使用,我想也许StackOverflow成员可以帮助我.

我来自荷兰,在线支付的常见方式是实施iDEAL.主要银行支持的在线支付协议.我必须实施'专业'版本.这包括创建RSA私钥.基于该密钥,我必须创建一个证书并将其上传到网络服务器.

我在Windows机器上并且完全混淆了要做什么.我看了一下OpenSSL网站,因为手册将我转发到该网站以获取SSL工具包.

该手册提供了两个必须执行的命令,以便创建RSA密钥和证书.

命令是:

openssl genrsa -des3 –out priv.pem -passout pass:myPassword 1024

openssl req -x509 -new -key priv.pem -passin pass:myPassword -days 3650 -out cert.cer

有没有办法我可以通过Windows机器上的实用程序来做到这一点?我已经下载了PuTTy KeyGenerator.但我不知道该怎么做,我已经创建了一个密钥(SSH-2 RSA,无论是什么......)但是如何使用该密钥创建证书?

ale*_*xkb 91

如果你在Windows上并使用apache,也许是通过WAMP或Drupal堆栈安装程序,你可以另外下载git for windows软件包,其中包括许多有用的linux命令行工具,其中一个是openssl.

以下命令创建apache所需的自签名证书和密钥,并在Windows中正常工作:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout privatekey.key -out certificate.crt
Run Code Online (Sandbox Code Playgroud)

  • 谢谢你提到OpenSSL带有git for windows. (15认同)
  • 您也可以在 Windows 上的 git bash 中使用此方法:[如何创建 https 服务器?](https://docs.nodejitsu.com/articles/HTTP/servers/how-to-create-a-HTTPS-server/ ) (2认同)
  • 我收到错误:`无法在配置中找到'distinguished_name'`18268:错误:0E06D06A:配置文件例程:NCONF_get_string:没有conf或环境变量:crypto\conf\conf_lib.c:270:``私钥。 key`已生成,但未生成`crt`文件。 (2认同)

Ada*_*kin 28

您可以下载适用于Windows的本机OpenSSL,也可以始终使用Cygwin.

  • 从该OpenSSL链接:"OpenSSL项目不以二进制形式分发任何代码,并且不正式推荐任何特定的二进制分发" (3认同)

Dim*_*pel 17

考虑使用证书库Web应用程序轻松创建基于它的私钥和证书:http://www.cert-depot.com/

它还可以为您创建PFX.

免责声明:我是证书仓库的创建者.

  • 注意:私钥应该*永远不会通过公共网络传输; 它们应该永远不会在你无法完全控制的机器上生成. - 因此,使用cert-depot.com的输出进行测试和开发,但要确保您的生产证书是在受信任的环境中创建的. - 迪马,我并不是说你的服务不值得信赖,但是普通的安全措施禁止在生产环境中使用这些证书.也就是说,我现在要从你的网站获得我的新开发服务器的证书; 谢谢你提供的便利服务.:) (35认同)
  • 我同意汉诺的每一句话.此外,即使连接是安全的,也不应该信任第三方为他创建私钥(它们可以存储并在以后使用).无论我在哪里,我都试图强调生成的证书仅适用于开发/测试目的. (4认同)
  • 感谢方便的开发工具Dima,但您的声明,"无论我在哪里,我都试图强调所生成的证书仅适用于开发/测试目的",目前不正确.主页将是放置这种免责声明的完美场所,它就是不存在的. (4认同)
  • 这项服务似乎不再可用,无论如何将你的私钥交给其他任何人都是一个非常糟糕的主意. (4认同)

tee*_*ane 14

使用IIS 6在Windows 7上创建自签名证书...

  1. 打开IIS

  2. 选择您的服务器(顶级项目或您的计算机名称)

  3. 在IIS部分下,打开"服务器证书"

  4. 点击"创建自签名证书"

  5. 将其命名为"localhost"(或类似的东西)

  6. 点击"确定"

然后,您可以将该证书绑定到您的网站......

  1. 右键单击您的网站,然后选择"编辑绑定..."

  2. 点击"添加"

    • 键入:https
    • IP地址:"全部未分配"
    • 港口:443
    • SSL证书:"localhost"
  3. 点击"确定"

  4. 点击"关闭"


Pab*_*ruz 9

你当然可以使用putty(puttygen.exe)来做到这一点.

或者您可以让Cygwin使用您刚才描述的实用程序.

  • 我了解如何在puttygen中创建公钥/私钥对,但是如何在puttygen中创建证书(.pem)? (17认同)