本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 根據 IP 地址或地理位置限制存取 AWS WAF
由 Louis Hourcade (AWS) 建立
Summary
AWS WAF 是 Web 應用程式防火牆,可協助保護 Web 應用程式和 APIs 免受可能影響可用性、危及安全性或消耗過多資源的常見 Web 漏洞和機器人的影響。中的 Web 存取控制清單 (Web ACLs) AWS WAF 可讓您控制流量到達應用程式的方式。在 Web ACL 中,您可以新增規則或規則群組,這些規則或規則群組旨在允許合法流量、控制機器人流量,以及封鎖常見的攻擊模式。如需詳細資訊,請參閱AWS WAF 運作方式。
您可以將下列類型的規則與 AWS WAF Web ACLs建立關聯:
透過使用此模式和相關聯的程式碼儲存庫,您可以使用 AWS Cloud Development Kit (AWS CDK) 部署具有自訂規則的 AWS WAF Web ACL。 ACLs 這些規則會根據最終使用者的 IP 地址或地理位置來限制對 Web 應用程式資源的存取。您也可以選擇性地連接數個受管規則群組。
先決條件和限制
先決條件
限制
您只能在 AWS WAF 可用的 AWS 區域 中使用此模式。如需區域可用性,請參閱AWS 服務 依區域
。
工具
AWS 服務
AWS Cloud Development Kit (AWS CDK) 是一種軟體開發架構,可協助您在程式碼中定義和佈建 AWS 雲端 基礎設施。
AWS WAF 是 Web 應用程式防火牆,可協助您監控轉送至受保護 Web 應用程式資源的 HTTP 和 HTTPS 請求。
程式碼儲存庫
此模式的程式碼可在 GitHub IP 和含儲存庫的地理位置限制 AWS WAF
IPMatch
會封鎖來自不允許 IP 地址的請求。GeoMatch
會封鎖來自不允許國家/地區的請求。
在部署期間,您可以選擇將所有下列受管規則群組連接至您的 Web ACLs:
核心規則集 (CRS) – 此規則群組包含通常適用於 Web 應用程式的規則。它有助於防止各種漏洞遭到利用,包括 OWASP 出版物中所述的一些高風險和常見漏洞,例如 OWASP 前 10 名
。 管理員保護 – 此規則群組包含的規則可協助您封鎖對公開管理頁面的外部存取。
已知輸入錯誤 – 此規則群組可協助封鎖已知為無效,並與漏洞的利用或探索相關聯的請求模式。
Amazon IP 評價清單 – 此規則群組包含以 Amazon 內部威脅情報為基礎的規則。它可協助您封鎖通常與機器人或其他威脅相關聯的 IP 地址。
Linux 作業系統受管規則群組 – 此規則群組可協助封鎖與 Linux 漏洞利用相關聯的請求模式,包括 Linux 特定的本機檔案包含 (LFI) 攻擊。
SQL 資料庫受管規則群組 – 此規則群組可協助封鎖與利用 SQL 資料庫相關聯的請求模式,例如 SQL 注入攻擊。
史詩
任務 | 描述 | 所需的技能 |
---|---|---|
複製儲存庫。 | 輸入下列命令,將 IP 和地理位置限制與 AWS WAF
| Git |
設定規則。 |
| 一般 AWS、Python |
任務 | 描述 | 所需的技能 |
---|---|---|
引導您的 AWS 環境。 | 如果尚未完成,您需要先啟動 AWS 環境,才能部署 AWS CDK 應用程式。
| 一般 AWS |
部署 AWS CDK 應用程式。 |
| 一般 AWS |
任務 | 描述 | 所需的技能 |
---|---|---|
確認 Web ACLs已成功部署。 |
| 一般 AWS |
(選用) 將 Web ACLs 與資源建立關聯。 | 將 AWS WAF Web ACLs 與您的 AWS 資源建立關聯,例如 Application Load Balancer、API Gateway 或 CloudFront 分佈。如需說明,請參閱將 Web ACL 與 資源建立關聯或取消關聯AWS。https://docs.aws.amazon.com/waf/latest/developerguide/web-acl-associating-aws-resource.html如需範例,請參閱 AWS CDK 文件中的類別 CfnWebACLAssociation (建構)。 | 一般 AWS |
任務 | 描述 | 所需的技能 |
---|---|---|
刪除堆疊。 |
| 一般 AWS |
相關資源
API 參考 (AWS CDK 文件)
aws-cdk-lib.aws_wafv2 模組 (AWS CDK 文件)
使用 Web ACLs(AWS WAF 文件)
管理您自己的規則群組 (AWS WAF 文件)
規則 (AWS WAF 文件)