【问题标题】:Enabling SSL on webserver running on AWS EC2/Docker在 AWS EC2/Docker 上运行的网络服务器上启用 SSL
【发布时间】:2020-08-10 20:40:20
【问题描述】:

我目前有一个托管在 ec2 上并运行 Web 服务器的 docker 容器。仅使用不使用 https 的 IP 地址运行它时,IP 地址可以完美解析,但是当我输入 DNS 时,它不起作用。我目前将节点端口映射到初始 dockerfile 中的端口 80。然后我将端口 80 映射到端口 443,希望使用 ACM 的证书创建负载均衡器。这不是 docker 问题,我希望有人对如何配置负载均衡器以使用 SSL 与暴露了端口 80 的 Web 服务器对话有一些见解。放置 domain.io:443 时,我得到了 nginx 屏幕。

【问题讨论】:

    标签: amazon-web-services docker aws-application-load-balancer


    【解决方案1】:

    配置负载均衡器以使用 SSL 与暴露了端口 80 的 Web 服务器对话。

    为此,您需要在目标组中设置 HTTPS,而不是 HTTP。它还需要容器上的自签名证书 SSL 来处理 HTTPS 流量。

    【讨论】:

    • 我是否必须将自签名证书添加到实例中?和 Dockerfile 放在同一个目录下?
    • 我在实例上添加的证书是否必须作为“受信任的后端证书”添加到 ALB 中?
    • @aroe nginx 必须为它服务。所以如果你从容器中运行 nginx,那么你必须从那里提供它。 ALB 不检查证书的有效性。只需在目标组中指定端口 443 和 HTTPS 就足够了。有很多关于如何在 alb 上设置端到端 SSL 的教程(例如 here)。
    • 自签名证书不正是 ACM 负责的吗?
    • @aroe 否。ACM 证书是公共证书,不能在实例或 docker 上使用。 ACM 证书只能用于负载均衡器、云前端 disto 或 API 网关。如果您想要端到端加密,则需要拥有自己的 SSL 证书。但是您确定需要端到端 ssl 加密吗?通常人们不会这样做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-07
    • 1970-01-01
    • 1970-01-01
    • 2019-12-05
    • 1970-01-01
    • 2021-05-04
    • 1970-01-01
    相关资源
    最近更新 更多