我想将SSL证书设置为我的Azure网站。 CA,Gandi给了我一个.crt文件。 但是,Azure需要带有私钥的.pfx文件。
我必须说我不习惯处理SSL证书: - /
我在搜索一些解决方案之前在这里发布我的问题,但没有任何效果。 其中一个是使用openssl转换我的.Crt文件,但是当我尝试这些命令时,我收到一条错误消息,指出无法识别私钥。
.crt文件不包含私钥?我只有这个.crt文件,在哪里可以找到私钥?
感谢您阅读我的问题,我们将不胜感激任何答案: - )
答案 0 :(得分:8)
首先是第一件事。当Gandi为您生成证书时,它必须要求CSR(证书签名请求)。如果您使用IIS生成了CSR,那么也很少有机会为您生成私钥文件。因此,始终建议使用OpenSSL等工具生成CSR以及私钥文件,以后可以使用私钥文件从CA收到的crt文件中创建PFX。因此,要遵循的步骤是:
openssl req -nodes -newkey rsa:2048 -keyout myserver.key -out myserver.csr
myserver可以替换为您希望用于证书的任何名称。然后,此命令将允许您输入用于生成CSR的信息。此步骤在此处进一步阐述:http://wiki.gandi.net/en/ssl/csr
接下来,将CSR和其他验证信息传递给Gandi,Gandi将为您生成.crt和.pem(如果是中间证书),就像您提到的那样。
获得证书后,首先使用mmc(管理控制台)导入中间证书。此链接可以帮助您完成此步骤:http://blog.amusedia.com/2011/10/setting-up-secure-windows-azure-web.html
接下来,使用下面的OpenSSL命令将crt文件转换为可以导出的pfx文件。
openssl pkcs12 -export -out name-your-azure-certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.pem
此处,您的privateKey.key是您在第一步中生成的文件。 certificate.crt是你从Gandi收到的crt文件,而CACert.pem是Gandi给你的pem文件。
成功执行上述命令会提示您输入密码。请记住此密码,因为您需要在将pfx上传到Azure时输入此密码。
答案 1 :(得分:1)
使用免费的DigiCert证书实用程序 - 这是一个不用脑子,你将在一分钟内启动并运行。
以下是确切的程序: http://www.digicert.com/ssl-certificate-installation-azure-website.htm#import