如何使用 Redbird 反向代理配置安全 (HTTPS) 域

How to configure a secure (HTTPS) domain with Redbird reverse proxy

我想知道如何使用 Redbird 代理正确配置安全域。基本的 info 有点混乱,因为例子有点零散。我想 letsencrypt 应该可以自动(如那里所声称的那样)。

我试过:

   var proxy = require('redbird')({
     port:80,
     ssl: {
       port: 3000,
       letsencrypt: {
           path: '../SSL-certs',
       }
     }
   });
  proxy.register('secure-web.net', 'http://xx.xx.xxx.xxx:8080',{
      ssl: {
        letsencrypt: {
          email: 'my@mail.com'
        }
      }
  });
  proxy.register('insecure-web.net', 'http://xx.xxx.xx.xxx:6881');

终端抛出(当我尝试访问页面时):

{"name":"redbird","hostname":"honza-kvm","pid":3089,"level":50,"err":{"message":"140009434470272:error:1408A0C1:SSL routines:ssl3_get_client_hello:no shared cipher:../deps/openssl/openssl/ssl/s3_srvr.c:1418:\n","name":"Error","stack":"Error: 140009434470272:error:1408A0C1:SSL routines:ssl3_get_client_hello:no shared cipher:../deps/openssl/openssl/ssl/s3_srvr.c:1418:\n"},"msg":"HTTPS Client  Error","time":"2016-11-08T13:03:37.979Z","v":0}

Firefox 抛出:

Error code: SSL_ERROR_NO_CYPHER_OVERLAP

目录 SSL-certs 是有意为空的(看起来应该根据手册页)但也许我需要一些关于通过 Redbird 使用 letsencrypt 的重要信息。

此示例为我现有的 localhost:8080 启用了 http 和 https。

var proxy = require('redbird')({
  port: 80
  xfwd: false,
  letsencrypt: {
    path: "certs",
    port: 3000
  },
  ssl: {
    port: 443
  }
});

proxy.register("www.example.com", "http://localhost:8080", {
    ssl: {
    letsencrypt: {
      email: "me@example.com",
      production: false
      }
    }
});

此外,当从production:false切换到production:true时,我发现证书颁发者仍然是

Fake LE Intermediate X1

我完全删除了certs目录的内容,重新启动代理找到

Let's Encrypt Authority X3