本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
確認 ELB 負載平衡器需要 TLS 終止
創建者:普里揚卡喬達瑞 (AWS)
環境:生產 | 技術:網路;安全性、身分識別、合規 | AWS 服務:Amazon CloudWatch 活動;Elastic Load Balancing (ELB);AWS Lambda |
Summary
在 Amazon Web Services (AWS) 雲端上,Elastic Load Balancing (ELB) 會自動將傳入的應用程式流量分配到多個目標,例如亞馬遜彈性運算雲端 (Amazon EC2) 執行個體、容器、IP 地址和 AWS Lambda 函數。負載平衡器使用接聽程式來定義負載平衡器用來接受使用者流量的連接埠和通訊協定。應用程式負載平衡器會在應用程式層做出路由決策,並使用 HTTP/HTTPS 通訊協定。傳統負載平衡器使用 TCP 或安全通訊端層 (SSL) 通訊協定,或在應用程式層使用 HTTP/HTTPS,在傳輸層做出路由決策。
此模式提供安全性控制,可針對應用程式負載平衡器和傳統負載平衡器檢查多個事件類型。叫用函數時,AWS Lambda 會檢查事件並確保負載平衡器符合規定。
函數會在下列 API 呼叫上啟 CloudWatch 動 Amazon 事件事件:CreateLoadBalancer、CreateLoadBalancerListeners、DeleteLoadBalancerListeners、CreateLoadBalancerPolicy、SetLoadBalancerPoliciesOfListener、CreateListener、DeleteListener、和ModifyListener。當事件偵測到其中一個 API 時,它會呼叫執行 Python 指令碼的 AWS Lambda。Python 指令碼會評估接聽程式是否包含 SSL 憑證,以及套用的原則是否使用傳輸層安全性 (TLS)。如果 SSL 政策被判定為 TLS 以外的任何內容,則該函數會將 Amazon Simple Notification Service (Amazon SNS) 通知傳送給使用者,其中包含相關資訊。
先決條件和限制
先決條件
有效的 AWS 帳戶
限制
除非對負載平衡器接聽程式進行更新,否則此安全控制不會檢查現有的負載平衡器。
這種安全控制是區域性的。您必須將其部署在要監控的每個 AWS 區域中。
架構
目標架構
![確保負載平衡器需要 TLS 終止。](images/pattern-img/da99cda2-ac34-4791-a2bd-d37264d8d3d9/images/af92b3c8-32bb-45eb-a2a8-d8276fb3e824.png)
自動化和規模
如果您使用 AWS Organizations
,則可以使用 AWS Cloudformation StackSets 在您要監控的多個帳戶中部署此範本。
工具
AWS 服務
AWS CloudFormation — AWS 可 CloudFormation 協助您建立 AWS 資源的模型和設定、快速且一致地佈建,並在整個生命週期中進行管理。您可以使用範本來描述您的資源及其相依性,並將它們一起啟動並設定為堆疊,而不是個別管理資源。
Amazon CloudWatch 活動 — Amazon CloudWatch 活動提供近乎即時的系統事件串流,描述 AWS 資源的變更。
AWS Lambda — AWS Lambda 是一種運算服務,可支援執行程式碼,而無需佈建或管理伺服器。
Amazon S3 — Amazon Simple Storage Service (Amazon S3) 是可高度擴展的物件儲存服務,可用於各種儲存解決方案,包括網站、行動應用程式、備份和資料湖。
Amazon SNS — Amazon Simple Notification Service (Amazon SNS) 協調和管理發佈者和客戶之間的訊息傳遞或傳送,包括 Web 伺服器和電子郵件地址。訂閱者會收到發佈到所訂閱主題的所有訊息,且某一主題的所有訂閱者均會收到相同訊息。
Code
此模式包括下列附件:
ELBRequirestlstermination.zip
— 安全控制的 Lambda 程式碼。ELBRequirestlstermination.yml
— 設定事件和 Lambda 函數的 CloudFormation 範本。
史诗
任務 | 描述 | 所需技能 |
---|---|---|
定義 S3 儲存貯體。 | 在 Amazon S3 主控台 | 雲端架構師 |
上傳程 Lambda 碼。 | 將附件區段中提供的 Lambda 程式碼 ( | 雲端架構師 |
任務 | 描述 | 所需技能 |
---|---|---|
啟動 AWS CloudFormation 範本。 | 在與 S3 儲存貯體相同的 CloudFormation AWS | 雲端架構師 |
完成範本中的參數。 | 當您啟動範本時,系統會提示您輸入下列資訊:
| 雲端架構師 |
任務 | 描述 | 所需技能 |
---|---|---|
確認訂閱。 | 成功部署 CloudFormation 範本後,會將訂閱電子郵件傳送至您提供的電子郵件地址。您必須確認此電子郵件訂閱,才能開始接收違規通知。 | 雲端架構師 |
相關資源
在 AWS CloudFormation 主控台上建立堆疊 (AWS CloudFormation 文件)
什麼是 AWS Lambda? (AWS Lambda 文件)
什麼是 Classic Load Balancer? (ELB 文件)
什麼是 Application Load Balancer? (ELB 文件)
附件
若要存取與此文件相關聯的其他內容,請解壓縮下列檔案:attachment.zip