跟进我已经问过here的问题。
我有运行Windows 2013服务器的Amazon AWS Instance。我使用IIS 8生成CSR文件。我在godaddy.com中使用了CSR文件来获取SSL证书。
去爸爸给我以下文件: - somerandomhash.crt(2KB) - gd_bundle-g2-g1.crt(5KB)
在我的Sails.js(express.js)中,我有:
serverOptions : {
key: fs.readFileSync(my.key),
cert: fs.readFileSync(my.cert)
}
我使用http://www.selfsignedcertificate.com/为我的测试域创建测试证书。该网站为我提供了两个文件,密钥和证书,可以正常使用(ip域)。 现在我需要使用正确的SSL,我有问题。
如何更新配置(serverOptions)以使用godaddy提供的文件?我没有在任何地方看到密钥文件。
答案 0 :(得分:1)
IIS应该与CSR一起生成密钥。 http://www.entrust.net/knowledge-base/technote.cfm?tn=7905您的SSL提供商不会为您提供密钥,这是非常不安全的 - 您是唯一一个应该拥有私钥的人。
gd_bundle-g2-g1.crt
是一个证书链文件,应该添加到serverOptions
,如下所示:
serverOptions : {
key: fs.readFileSync(my.key),
cert: fs.readFileSync(my.cert),
ca: fs.readFileSync(my.ca)
}
答案 1 :(得分:1)
经过大量阅读后,这是最终解决方案:
我收到以下错误:
例程:PEM_read_bio:错误的结束行node.js
无论我做什么,我总是会遇到这个错误。其他出现相同错误的人建议在请求的页眉和页脚上添加额外的输入。在我的情况下,它没有帮助。帮助我的是Notepad ++和EoL转换。
我想你可以和其他编辑一起做,但是我使用了Notepad ++。只需编辑 - > EoL转换并确保选中Windows。
希望这会为遇到同样问题的其他人节省时间。