安装SSL证书

时间:2014-08-14 12:29:43

标签: express ssl sails.js ssl-certificate

跟进我已经问过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提供的文件?我没有在任何地方看到密钥文件。

2 个答案:

答案 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。

希望这会为遇到同样问题的其他人节省时间。