cloudfront 和 elb (AWS) 之间的 502

问题描述 投票:0回答:2
  1. 我已经设置了一个 EC2,上面安装了 WordPress。它侦听端口 80。

  2. 我在其之上创建了一个应用程序负载均衡器,并使用 ACM 并创建了一个证书(由 Amazon 签名),并创建了一个 HTTPS 侦听器,将其从 (1) ec2 上的 443 转发到 80。 监听器使用 ELBSecurityPolicy-TLS-1-2-Ext-2018-06 作为安全策略。

  3. 我配置了一条从域到ELB的route53 A规则。这非常有效。

  4. 此后,我尝试创建一个 Cloudfront 发行版 - 仅使用正确的 CN 名称和自定义证书(与 (2) 中使用的相同证书)支持 HTTPS。

  5. 我得到了臭名昭著的502。

  6. 我阅读了大量有关尝试解决该问题的帖子...并严格按照此工作示例进行操作 - https://www.youtube.com/watch?v=9O2bqYqySEY。没有什么对我有用。我仍然收到 502 错误

  7. 我使用 openssl (openssl s_client -connect mydomain:443) 来尝试理解它 - 我明白了


---
No client certificate CA names sent
Peer signing digest: SHA256
Peer signature type: RSA-PSS
Server Temp Key: X25519, 253 bits
---
SSL handshake has read 5479 bytes and written 373 bytes
Verification: OK
---
New, TLSv1.3, Cipher is TLS_AES_128_GCM_SHA256
Server public key is 2048 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)
---
closed

让我觉得奇怪的是它使用了 TLSv1.3(我知道 AWS 几个月前才添加)。

顺便说一句,当我尝试在工作情况(第 3 阶段)上运行相同的 openssl 时 - 我看到它在工作时使用 TLSv1.2。

我还尝试找到一个选项来强制让 Cloudfront 使用 TLSv1.2,但我做不到。

我知道很多人问过这个话题 - 然而,我认为这是一个新问题,因为最近添加了 v1.3 并且其他答案都没有帮助。

有什么建议吗? 谢谢你

amazon-cloudfront aws-application-load-balancer
2个回答
0
投票

好的 - 结果问题出在 ELB 的安全策略上。 我一开始没有将其配置为 ELBSecurityPolicy-TLS-1-2-Ext-2018-06 (而是默认值)。然后我将其切换为 ELBSecurityPolicy-TLS-1-2-Ext-2018-06...

但没有看到任何变化。在我放弃的几个小时后,我再次检查了它并且这有效 - 所以我猜测它需要一些时间/缓存。

现在一切正常。


0
投票

超级有帮助,对我也有用。

© www.soinside.com 2019 - 2024. All rights reserved.