Node.js - 在运行时动态更改HTTPS服务器的SSL证书

时间:2011-10-28 03:18:05

标签: node.js ssl https handshake

我正在node中构建HTTPS代理。基本上我允许人们为我的代理机器(设置了通配符DNS)设置DNS CNAME别名,并将导入他们的SSL证书添加到我的应用程序中(如AWS Elastic Load Balancer那样),这样他们的CNAME主机名在每次请求时都得到了客户端的正确保护和识别。

现在我正在代理方面工作,我正试图在与客户端进行SSL握手之前找到一种动态加载正确证书的方法。工作流程是:

  1. 服务器收到新请求
  2. 获取客户端请求的主机名(即用户设置的DNS CNAME别名)
  3. 加载属于该主机名的正确证书
  4. 在当前请求中使用已加载的证书 (此处需要帮助)
  5. 握手(带有加载的证书 - 因请求而异)
  6. 有办法吗?

1 个答案:

答案 0 :(得分:1)

我们开始:使用SNI in node可以使其正常工作。

问题是并非所有客户端(浏览器或库)都支持它。