节点服务器上的2个证书

时间:2012-03-07 00:26:12

标签: javascript node.js encryption ssl

我运行的NodeJS服务器通过HTTP成功地通过2个域进行了攻击。

现在这两个网站有不同的SSL证书。

我现在想要的是允许这两个站点通过HTTPS连接到节点服务器。

我已经成功添加了其中一个证书...我应该如何添加另一个证书,或者换句话说,将2个证书添加到同一节点服务器?

这是我到目前为止的代码:

var options = {
  key: fs.readFileSync("keys/cer1.key"),
  cert: fs.readFileSync("certs/cer2.crt"),
  ca: fs.readFileSync("ca/ca.crt")
};

https.createServer(options, function (req, res) {
  ...
}).listen(8000);

谢谢!

1 个答案:

答案 0 :(得分:1)

此处存在鸡和蛋问题:服务器需要解密请求以了解要使用的证书 - 解密请求;)

SNI旨在解决这个问题 - 但我不确定它是如何在节点中实现的。如果没有这个,你需要有一对一的端口到证书的映射(这是每个Web服务器面临的相同问题 - 希望SNI支持有一天会成为常态)。