使用 AWS CloudFront 使用 ssl-id 进行负载平衡
Posted
技术标签:
【中文标题】使用 AWS CloudFront 使用 ssl-id 进行负载平衡【英文标题】:Load balance with ssl-id with AWS CloudFront 【发布时间】:2020-10-09 04:09:03 【问题描述】:我们的应用需要端到端 SSL 加密,架构如下:
浏览器(https)-> AWS CloudFront(Https)- ON-perm F5 负载均衡器(HTTPS)-> 网络服务器。
AWS CloudFront 的 Origin 指向 On-Perm 负载均衡器 (F5)。 On-Perm 负载均衡器配置为使用 SSL-session-id(不是应用程序 session-id)进行粘性会话
由于 AWS CloudFront 域名映射到动态 IP 并根据边缘位置 IP SSL-sessionId 更改进行 SSL 抖动,即使请求来自相同的应用程序 session-id,它也会导致用户的会话数据丢失。
我们不能将负载均衡器更改为基于应用程序会话 ID 执行会话亲和性,也不能在负载均衡器上执行 SSL 终止。有人可以帮我在这种情况下如何进行会话亲和力?
【问题讨论】:
【参考方案1】:Amazon CloudFront 无法完成您的尝试。
CloudFront 专为提高性能而设计,这意味着单个查看器连接可以并行使用多个后端连接,多个查看器也可以通过单个后端连接发出顺序请求。
通过 CloudFront 的 TLS 不是端到端的——那是不可能的。 CloudFront 需要对流量进行解密和重新加密,因为它在 HTTP 层运行。
【讨论】:
你说得对,我在想 CloudFront 是否可以为单个查看器生成单个 ssl-id,但现在我意识到它只根据请求在边缘位置维护用户对象,仅此而已。谢谢@Michael以上是关于使用 AWS CloudFront 使用 ssl-id 进行负载平衡的主要内容,如果未能解决你的问题,请参考以下文章
如果我在 Cloudfront 上启用了 SSL,AWS ALB 是不是需要 SSL?