簡體   English   中英

Gatsby 站點在 EC2 上使用 pm2 節點和 aws 經典負載均衡器服務需要 https

[英]Gatsby site serving on EC2 with pm2 node with aws classic load balancer needs https

我在開發模式下運行 Gatsby 站點作為 EC2 上的開發服務器,負載均衡器從端口 80 指向 8000。我在我的域 dns 上設置了一個 cname 以指向負載均衡器,這工作正常。 但是,我需要將此頁面顯示為 iframe 。

我已通讀此https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-create-https-ssl-load-balancer.html大部分內容都很簡單。

到目前為止,我所做的是在負載均衡器上為 443 https 創建了一個偵聽器,並將 https 443 添加到安全組中。 我已成功向我與 aws 一起使用的子域頒發了證書,並將其附加到負載均衡器偵聽器。

Gatsby 有一篇關於開發模式自定義證書的文章https://www.gatsbyjs.org/docs/local-https/#custom-key-and-certificate-files我要找的是證書文件,授權文件和密鑰文件,以便在下面傳遞此命令

我在 aws 證書管理器中的哪里可以找到這些文件。 我認為這是我需要讓 https 工作的最后一塊,如果我錯了,請糾正我。

提前謝謝。

gatsby develop --https --key-file../relative/path/to/key.key --cert-file../relative/path/to/cert.crt --ca-file../relative/path/to/ca.crt

這是我用來請求我的證書的過程,它說它已頒發https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request-public.html

但是如何將它與帶有 gatsby 的自定義 https 命令一起使用?

有一個導出選項,但它只表示私鑰。 我需要創建一個私鑰然后我可以導出我需要的這些文件嗎?

我什至需要在 gatsby 這邊運行 https。 我使用 apache 觀看了一個視頻,並且沒有對 apache 服務器進行任何更改以使 https 與負載平衡器一起工作。

這是我的負載均衡器偵聽器的屏幕截圖

在此處輸入圖像描述

這是我的安全組的圖像

在此處輸入圖像描述

如果我為 gatsby develop 運行--https ,它會破壞我的網站,我無法再通過負載均衡器或端口 8000 訪問它。所以不知道在這里做什么。

我建議不要加密您的 ELB 和 EC2 實例之間的連接。 如果您的 EC2 實例無法公開訪問,而只能通過負載均衡器訪問,則最佳做法是終止負載均衡器上的 SSL 連接。 無需在 AWS VPC 內(即 ELB 和目標實例之間)加密 HTTP 請求。

您可以創建一個在 HTTP (80) 和 HTTPS (443) 端口上偵聽的負載均衡器。 如果您指定 HTTPS 偵聽器將請求發送到端口 80 上的實例,負載均衡器將終止請求,並且從負載均衡器到實例的通信未加密。 [1]

有一些討論(例如在 Kevin Burke 的博客上)是否有必要加密 VPC 內的流量。 [2] 然而,大多數人可能沒有這樣做。

這對您意味着什么:為您的目標使用與以前相同的實例協議:HTTP 通過端口 8000 用於兩個偵聽器。 不要為您的 Gatsby 服務設置 SSL。 請改用普通的 HTTP 服務器配置。 在負載平衡器上使用 SSL 終止時,無需更改 ELB 目標。

參考

[1] https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-create-https-ssl-load-balancer.html
[2] https://acloud.guru/forums/aws-certified-security-specialty/discussion/-Ld2pfsORD6ns5dDK5Y7/tlsssl-termination?answer=-LecNy4QX6fviP_ryd7x

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM