![](/img/trans.png)
[英]How to configure https for Amazon S3 html files linked to Elastic Beanstalk application
[英]How to connect Amazon Cloudfront with Elastic Beanstalk Single Instance in order to use HTTPS cert
我閱讀的所有教程都與 Elastic Beanstalk 負載均衡器有關,我沒有將其與單個實例一起使用。
我可以通過使用環境 url 或簡單地將我的 Route 53 Type A 記錄重定向到 Elastic Beanstalk 環境或 ec2 公共域來訪問通過 Elastic Beanstalk 部署的應用程序。
我希望我的 webapp 使用 HTTPS,所以我通過 ACM 創建了一個 SSL 證書,並嘗試通過 CloudFront 在我的 webapp 上部署該證書。 我創建了一個 CloudFront 分發域,但這就是我被卡住的地方:我不能將我的 Elastic Beanstalk 環境用作源域,只能用作 S3 存儲桶。
如何讓 CloudFront 與 Elastic Beanstalk/EC2 對話?
直接訪問 S3 不是一個選項,不僅我得到 403 錯誤,而且我的項目是一個 Angular App 和 .NET WebApi,需要部署和運行,而不是簡單地從 S3 文件夾訪問。 我也無法繞過 CloudFront 並將證書放入我的項目中,因為您無法下載 ACM 證書。
它應該在 HTTPS 中與 ElasticBeanstalk 通信,對嗎?
可悲的是,這不是它的工作原理。 要在 CF 和 EB 之間擁有 HTTPS,您的 EB 實例上必須具有有效的公共 SSL 證書。 您不能使用自簽名證書,默認情況下 EB 也不會給您任何 SSL。 如果您在 EB 上沒有 ALB,則必須從第三方(不是 ACM)獲取 SSL 證書,例如 LetsEncrypt 並部署在實例上。 您還必須擁有自己的域才能正常工作。
只有滿足以上條件,整個路徑上才會有 HTTPS:
Client --- (https) --> CF ---- (https) ----> EB
否則,你只能有:
Client --- (https) --> CF ---- (http) ----> EB
當您在 inte.net 上使用 http(純文本)時,這是一個安全風險。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.