【问题标题】:Configuring HSTS with AWS (ELB, Kubernetes Nginx and ACM)使用 AWS(ELB、Kubernetes Nginx 和 ACM)配置 HSTS
【发布时间】:2021-03-24 03:44:12
【问题描述】:

我们需要在我们的环境中实现 HSTS,而无需在 ACM 之外安装证书。

这是我们目前的配置:

IGW > ELB > Kunermetes Nginx 实例

SSL 卸载由 ELB 通过 AWS Certificate Manager (ACM) 完成。因此,在 HTTPS 流量到达 ELB 后,将被解密并作为 HTTP 发送到 Nginx。

Nginx 有如下配置:

 server {
        listen 80 default_server;
        if ($http_x_forwarded_proto = 'http'){
            return 301 https://$host$request_uri;
        }

有没有办法配置 Nginx 以使用 AWS Certificate Manager 中的证书?

我们正在考虑的方法是配置ELB通过HTTPS将流量传递给Nginx,然后在Nginx的443端口创建监听器,然后从ACM获取证书解密流量并直接处理请求,能够将 HSTS 标头返回给浏览器。

据我们了解,要么采用这种方法,要么从 ACM 导出证书并将它们安装到 Nginx 中,然后需要以不同的方式保护它们。除非有其他我们没有考虑过的方式。

我很想阅读您的反馈。

谢谢, 乙

【问题讨论】:

    标签: amazon-web-services nginx hsts


    【解决方案1】:

    请注意我是否理解您要归档的内容,但据我所知:

    • HSTS 只是将“Strict-Transport-Security”标头添加到响应中。你可以用你当前的结构来做(ELB 发送 HTTP 到 Nginx,Nginx 添加这个头)

    • 恐怕从 ACM 导出证书并让 Nginx 在 443 上侦听不起作用:ACM 不允许导出私钥,您需要在 Nginx 上将其导出到 443 上的服务器

    【讨论】:

      猜你喜欢
      • 2020-08-07
      • 1970-01-01
      • 2018-09-23
      • 2020-01-20
      • 1970-01-01
      • 1970-01-01
      • 2018-06-18
      • 2021-08-22
      • 1970-01-01
      相关资源
      最近更新 更多