【问题标题】:Is it necessary to force_ssl? Or should the SSL terminate at the load balancer?是否需要 force_ssl?或者 SSL 是否应该在负载均衡器处终止?
【发布时间】:2015-08-17 02:11:24
【问题描述】:

在 AWS OpsWorks 上。我正在使用一个 ELB,它有我的 CA 的 SSL 证书。

第一个访问点始终是负载平衡器 (ELB)。 ELB 将流量引导到实例。每个实例都有一个 Rails 应用程序、Unicorn 等的副本。

有一点需要注意。 ELB后面的实例不能直接访问。

此时,我需要在 Rails 中force_ssl 吗?我听说在边界 (ELB) 终止 SSL 很常见。

据我所知,force_ssl 提供以下信息:

  1. 自动将流量从 http 重定向到 https。
  2. 将 cookie 标记为安全和一些额外的保护(即防止 MITM 攻击)。

http://api.rubyonrails.org/classes/ActionController/ForceSSL/ClassMethods.html 仅表示 http 到 https 的重定向。

What does force_ssl do in Rails? 第二个答案表明force_ssl 不仅仅是重定向。

如果我决定不使用force_ssl,我可以通过编写 Nginx 定义来管理重定向。

鉴于这种情况,感觉通过 Rails 强制 SSL 已经过时了,因为 SSL 协商已经在 ELB 中进行。还需要force_ssl吗?有什么额外的好处吗?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 ssl amazon-web-services load-balancing


    【解决方案1】:

    如果您在 ELB 级别终止 SSL,则您不需要它。 (你想获取 http 流量而不是被重定向)。

    请记住,在这种情况下,ELB 和您的后端实例之间的流量将通过 HTTP(即未加密)。这在大多数情况下都很好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-24
      • 2018-02-21
      • 2020-10-22
      • 1970-01-01
      • 2022-01-03
      • 1970-01-01
      • 1970-01-01
      • 2016-06-04
      相关资源
      最近更新 更多