【问题标题】:How do I configure my Nodejs app to respond to only SSL connections? [closed]如何配置我的 Nodejs 应用程序以仅响应 SSL 连接? [关闭]
【发布时间】:2013-02-20 16:18:26
【问题描述】:

我有一个使用 Nginx 和 Mongodb 在 ec2 上运行的 Nodejs/Express 应用程序。我在一个 8 核 ec2 实例上运行,并且我的 Nodejs 应用程序有 8 个单独的实例在 Nginx 前面运行。目前,我只有一台服务器。

我们即将上线,并希望确保我们的服务器仅响应 SSL 请求。我想知道如何以及在哪里配置 SSL 连接。

他们在这里:

  1. 我必须去像 Verisign 这样的 CA 来获得证书,对吗?我的域名是通过 Godaddy 注册的,我可以从他们那里获得 ssl 证书吗?

  2. 我需要在 ec2 实例上安装证书吗?如果是,如果我必须为 HA 添加另一台服务器并且我想使用弹性负载平衡,会发生什么?在这种情况下,我是否需要为每个 ec2 实例购买单独的证书?是否有一些关于如何为 ssl 配置 Nginx 的文档或教程?

  3. 开启 ssl 后,如何确保所有非 ssl 连接都自动重定向到 ssl 端点?我可以通过 Nginx 中的配置条目轻松做到这一点吗?

【问题讨论】:

    标签: node.js ssl nginx amazon-web-services amazon-ec2


    【解决方案1】:

    1。我将不得不去像威瑞信这样的 CA 来获得证书,对吗?我的 域名是通过 godaddy 注册的,我可以从他们那里获得 ssl 证书吗?

    是的,you can buy an SSL certificate directly through GoDaddy

    2。我需要在 ec2 实例上安装证书吗?

    是的,您要在其上提供 HTTPS 内容的每台服务器都需要安装证书。 请注意购买可安装在多台服务器上的证书 - 某些证书只能安装在一。 GoDaddy 似乎允许无限制地安装证书,因此如果您使用它们,这不是问题,但如果您与其他人一起使用,则可能会出现问题。

    另一个考虑因素是,如果您希望子域能够使用 SSL(即 https://*.mydomain.com 不会引发浏览器警告),您将需要购买通配符证书(允许无限的子域)或支持您要使用的特定数量的子域的证书。

    另外请注意,如果您需要在 AWS 上的负载均衡器后面支持 sticky sessions,您将需要 install the certificate on the Elastic Load Balancer (ELB) 以及您的所有服务器。

    但在其他一切正常之前我不会担心这一点,因为您现在只有一台服务器,但请注意证书必须是 X.509(看起来是 GoDaddy 的)才能安装在您的 ELB 上。只是在购买时确保它不会成为将来的问题。

    谁能给我一些关于如何为 ssl 配置 nginx 的文档或教程?

    SSL Certificate Installation in Nginx.

    3。如何确保所有非 ssl 连接都自动重定向到 ssl 端点?

    查看 ServerFault 上的this answer here,配置起来非常简单:

    server {
        listen      80;
        server_name signup.mysite.com;
        rewrite     ^   https://$server_name$request_uri? permanent;
    } 
    

    祝你好运。

    【讨论】:

    • 谢谢瑞恩。这很有帮助。我购买了通配符 ssl 证书,今天能够成功安装和测试。
    【解决方案2】:

    您可以在 ELB 处终止 SSL 连接,然后将纯 HTTP 传回应用程序服务器。然后在您的实例上设置安全组以禁止来自客户端的任何直接连接(强制它们通过 ELB)。这种方法几乎可以解决您的所有问题。

    【讨论】:

    • 杰米布,感谢您的评论。当我在我的环境中添加更多服务器时,我将在不久的将来实施您的解决方案。谢谢!
    猜你喜欢
    • 2019-10-11
    • 2021-01-27
    • 2011-04-21
    • 2019-01-31
    • 1970-01-01
    • 2020-07-13
    • 2017-09-27
    • 2019-09-12
    • 1970-01-01
    相关资源
    最近更新 更多