本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Elasticsearch 的 Security Hub
這些 AWS Security Hub 控制項會評估 Elasticsearch 服務和資源。
這些控制項可能完全無法使用 AWS 區域。如需詳細資訊,請參閱各區域控制項的可用性。
【ES.1】 Elasticsearch 網域應該啟用靜態加密
相關要求:PCI DSS v3.2.1/3.4、NIST.800-53.r5 CA-9(1)、NIST.800-53.r5 CM-3(6)、NIST.800-53.r5 SC-13、NIST.800-53.r5 SC-28、NIST.800-53.r5 SC-28(1)、NIST.800-53.r5 SC-7(10)、NIST.800-53.r5 SI-7(6)
類別:保護 > 資料保護 > data-at-rest加密
嚴重性:中
資源類型: AWS::Elasticsearch::Domain
AWS Config 規則:elasticsearch-encrypted-at-rest
排程類型:定期
參數:無
此控制項會檢查 Elasticsearch 網域是否已啟用靜態加密組態。如果未啟用靜態加密,則檢查會失敗。
若要為 OpenSearch 中的敏感資料增加一層安全性,您應該將 OpenSearch 設定為靜態加密。Elasticsearch 網域提供靜態資料的加密。此功能使用 AWS KMS 來存放和管理加密金鑰。為了執行加密,其會使用 256 位元金鑰的進階加密標準演算法 (AES-256)。
若要進一步了解 OpenSearch 靜態加密,請參閱《Amazon OpenSearch Service 開發人員指南》中的 Amazon OpenSearch Service 靜態資料加密。 OpenSearch
t.small
和 等特定執行個體類型t.medium
不支援靜態資料加密。如需詳細資訊,請參閱《Amazon OpenSearch Service 開發人員指南》中的支援的執行個體類型。
修補
若要為新的和現有的 Elasticsearch 網域啟用靜態加密,請參閱《Amazon OpenSearch Service 開發人員指南》中的啟用靜態資料加密。
【ES.2】 不應公開存取 Elasticsearch 網域
相關要求:PCI DSS v3.2.1/1.2.1、PCI DSS v3.2.1/1.3.1、PCI DSS v3.2.1/1.3.2、PCI DSS v3.2.1/1.3.4、PCI DSS v3.2.1/1.3.6、NIST.800-53.r5 AC-21、NIST.800-53.r5 AC-3、NIST.800-53.r5 AC-3(7)、NIST.800-53.r5 AC-4(21)、NIST.800-53.r5 AC-6NIST.800-53.r5 AC-45.NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7 NIST.800-53.r5 SC-7
類別:保護 > 安全網路組態 > VPC 內的資源
嚴重性:嚴重
資源類型: AWS::Elasticsearch::Domain
AWS Config 規則:elasticsearch-in-vpc-only
排程類型:定期
參數:無
此控制項會檢查 Elasticsearch 網域是否位於 VPC 中。它不會評估 VPC 子網路路由組態來判斷公有存取。您應該確保 Elasticsearch 網域未連接到公有子網路。請參閱《Amazon OpenSearch Service 開發人員指南》中的資源型政策。您也應該確保您的 VPC 已根據建議的最佳實務進行設定。請參閱《Amazon VPC 使用者指南》中的 VPC 安全最佳實務。
部署在 VPC 內的 Elasticsearch 網域可以透過私有 AWS 網路與 VPC 資源通訊,而不需要周遊公有網際網路。此組態透過限制對傳輸中資料的存取來增加安全性狀態。VPCs 提供多種網路控制,以安全存取 Elasticsearch 網域,包括網路 ACL 和安全群組。Security Hub 建議您將公有 Elasticsearch 網域遷移至 VPCs,以利用這些控制項。
修補
如果您建立了具備公有端點的網域,您稍後便無法將其置放於 VPC 內。反之,您必須建立新網域並遷移您的資料。反之亦然。如果您在 VPC 中建立了網域,該網域便無法擁有公有端點。您必須改為建立另一個網域或停用此控制項。
請參閱《Amazon OpenSearch Service 開發人員指南》中的在 VPC 中啟動 Amazon OpenSearch Service 網域。 OpenSearch
【ES.3】 Elasticsearch 網域應該加密節點之間傳送的資料
相關要求:NIST.800-53.r5 AC-4、NIST.800-53.r5 SC-13、NIST.800-53.r5 SC-23、NIST.800-53.r5 SC-23(3)、NIST.800-53.r5 SC-7(4)、NIST.800-53.r5 SC-8、NIST.800-53.r5 SC-8(1)、NIST.800-53.r5 SC-8(2)、PCI DSS v4.0.1/4.2.1
類別:保護 > 資料保護 > data-in-transit加密
嚴重性:中
資源類型: AWS::Elasticsearch::Domain
AWS Config 規則:elasticsearch-node-to-node-encryption-check
排程類型:變更觸發
參數:無
此控制項會檢查 Elasticsearch 網域是否已啟用node-to-node。如果 Elasticsearch 網域未啟用node-to-node加密,則控制項會失敗。如果 Elasticsearch 版本不支援node-to-node加密檢查,控制項也會產生失敗的調查結果。
HTTPS (TLS) 可用來協助防止潛在攻擊者使用person-in-the-middle或類似攻擊竊聽或操縱網路流量。只能允許透過 HTTPS (TLS) 進行加密連線。啟用 Elasticsearch 網域的node-to-node加密可確保叢集內通訊在傳輸中加密。
此組態可能會產生效能懲罰。在啟用此選項之前,您應該了解並測試效能權衡。
修補
如需在新的和現有的網域上啟用node-to-node加密的資訊,請參閱《Amazon OpenSearch Service 開發人員指南》中的啟用node-to-node加密。
【ES.4】 應啟用記錄至 CloudWatch Logs 的 Elasticsearch 網域錯誤
相關要求:NIST.800-53.r5 AC-2(4)、NIST.800-53.r5 AC-4(26)、NIST.800-53.r5 AC-6(9)、NIST.800-53.r5 AU-10、NIST.800-53.r5 AU-12、NIST.800-53.r5 AU-2、NIST.800-53.r5 AU-3、NIST.800-53.r5 AU-6(3)、NIST.800-53.r5 AU-6(4)CA-7、NIST.8000-55NIST.800-53.r5 SC-7 SI-3 SI-4 SI-7
類別:識別 ‒ 記錄日誌
嚴重性:中
資源類型: AWS::Elasticsearch::Domain
AWS Config 規則:elasticsearch-logs-to-cloudwatch
排程類型:變更觸發
參數:
-
logtype = 'error'
(不可自訂)
此控制項會檢查 Elasticsearch 網域是否設定為將錯誤日誌傳送至 CloudWatch Logs。
您應該啟用 Elasticsearch 網域的錯誤日誌,並將這些日誌傳送至 CloudWatch Logs 以進行保留和回應。網域錯誤日誌可協助進行安全和存取稽核,也可協助診斷可用性問題。
修補
如需如何啟用日誌發佈的資訊,請參閱《Amazon OpenSearch Service 開發人員指南》中的啟用日誌發佈 (主控台)。
【ES.5】 Elasticsearch 網域應該啟用稽核記錄
相關要求:NIST.800-53.r5 AC-2(4)、NIST.800-53.r5 AC-4(26)、NIST.800-53.r5 AC-6(9)、NIST.800-53.r5 AU-10、NIST.800-53.r5 AU-12、NIST.800-53.r5 AU-2、NIST.800-53.r5 AU-3、NIST.800-53.r5 AU-6(3)、NIST.800-53.r5 AU-6(4)、NIST.8000-5.CA-7 NIST.800-53.r5 SC-7 SI-3 SI-4 SI-710.4.2
類別:識別 > 記錄日誌
嚴重性:中
資源類型: AWS::Elasticsearch::Domain
AWS Config rule:elasticsearch-audit-logging-enabled
(自訂 Security Hub 規則)
排程類型:變更觸發
參數:
-
cloudWatchLogsLogGroupArnList
(不可自訂)。Security Hub 不會填入此參數。應為稽核日誌設定的 CloudWatch Logs 日誌群組逗號分隔清單。如果在此參數清單中未指定 Elasticsearch 網域的 CloudWatch Logs 日誌群組,
NON_COMPLIANT
則表示此規則。
此控制項會檢查 Elasticsearch 網域是否已啟用稽核記錄。如果 Elasticsearch 網域未啟用稽核記錄,則此控制會失敗。
稽核日誌可高度自訂。它們可讓您追蹤 Elasticsearch 叢集上的使用者活動,包括身分驗證成功和失敗、對 OpenSearch 的請求、索引變更,以及傳入的搜尋查詢。
修補
如需啟用稽核日誌的詳細資訊,請參閱《Amazon OpenSearch Service 開發人員指南》中的啟用稽核日誌。
【ES.6】 Elasticsearch 網域應至少具有三個資料節點
相關要求:NIST.800-53.r5 CP-10、NIST.800-53.r5 CP-6(2)、NIST.800-53.r5 SC-36、NIST.800-53.r5 SC-5(2)、NIST.800-53.r5 SI-13(5)
類別:復原 > 彈性 > 高可用性
嚴重性:中
資源類型: AWS::Elasticsearch::Domain
AWS Config rule:elasticsearch-data-node-fault-tolerance
(自訂 Security Hub 規則)
排程類型:變更觸發
參數:無
此控制項會檢查 Elasticsearch 網域是否至少設定三個資料節點,且 zoneAwarenessEnabled
為 true
。
Elasticsearch 網域需要至少三個資料節點,才能實現高可用性和容錯能力。部署具有至少三個資料節點的 Elasticsearch 網域可確保在節點失敗時執行叢集操作。
修補
修改 Elasticsearch 網域中的資料節點數量
開啟 Amazon OpenSearch Service 主控台,網址為 https://https://console.aws.amazon.com/aos/
。 -
在網域下,選擇您要編輯的網域名稱。
-
選擇 Edit domain (編輯網域)。
-
在資料節點下,將節點數量設定為大於或等於 的數字
3
。針對三個可用區域部署,將 設定為三個的倍數,以確保可用區域之間的分佈相等。
-
選擇提交。
【ES.7】 Elasticsearch 網域應至少設定三個專用主節點
相關要求:NIST.800-53.r5 CP-10、NIST.800-53.r5 CP-6(2)、NIST.800-53.r5 SC-36、NIST.800-53.r5 SC-5(2)、NIST.800-53.r5 SI-13(5)
類別:復原 > 彈性 > 高可用性
嚴重性:中
資源類型: AWS::Elasticsearch::Domain
AWS Config rule:elasticsearch-primary-node-fault-tolerance
(自訂 Security Hub 規則)
排程類型:已觸發變更
參數:無
此控制項會檢查 Elasticsearch 網域是否設定至少三個專用主節點。如果網域不使用專用主節點,則此控制會失敗。如果 Elasticsearch 網域有五個專用主節點,則此控制項會通過。不過,使用超過三個主要節點可能不需要,以降低可用性風險,並會產生額外的成本。
Elasticsearch 網域需要至少三個專用主節點,以實現高可用性和容錯能力。專用主節點資源在資料節點藍/綠部署期間可能會受到壓力,因為還有其他節點需要管理。部署具有至少三個專用主節點的 Elasticsearch 網域,可確保在節點失敗時有足夠的主節點資源容量和叢集操作。
修補
修改 OpenSearch 網域中專用主節點的數量
開啟 Amazon OpenSearch Service 主控台,網址為 https://https://console.aws.amazon.com/aos/
。 -
在網域下,選擇您要編輯的網域名稱。
-
選擇 Edit domain (編輯網域)。
-
在專用主節點下,將執行個體類型設定為所需的執行個體類型。
-
將主節點的數量設定為等於三個或大於三個。
-
選擇提交。
【ES.8】 應使用最新的 TLS 安全政策加密與 Elasticsearch 網域的連線
相關要求:NIST.800-53.r5 AC-17(2)、NIST.800-53.r5 AC-4、NIST.800-53.r5 IA-5(1)、NIST.800-53.r5 SC-12(3)、NIST.800-53.r5 SC-13、NIST.800-53.r5 SC-23、NIST.800-53.r5 SC-23(3)、NIST.800-53.r5 SC-7(4)、NIST.800-53.r5 SC-8、NIST.800-53.r5 SC-85NIST.800-53.r5 SC-8 SI-7
類別:保護 > 資料保護 > data-in-transit加密
嚴重性:中
資源類型: AWS::Elasticsearch::Domain
AWS Config rule:elasticsearch-https-required
(自訂 Security Hub 規則)
排程類型:變更觸發
參數:無
此控制項會檢查 Elasticsearch 網域端點是否設定為使用最新的 TLS 安全政策。如果 Elasticsearch 網域端點未設定為使用最新支援的政策,或未啟用 HTTPs,則控制項會失敗。目前支援的最新 TLS 安全政策為 Policy-Min-TLS-1-2-PFS-2023-10
。
HTTPS (TLS) 可用來防止潛在攻擊者使用中間人攻擊或類似的攻擊手法來竊聽或操控網路流量。只能允許透過 HTTPS (TLS) 進行加密連線。加密傳輸中的資料可能會影響效能。您應該使用此功能測試應用程式,以了解效能描述檔和 TLS 的影響。TLS 1.2 比舊版 TLS 提供數個安全性增強功能。
修補
若要啟用 TLS 加密,請使用 UpdateDomainConfig API 操作來設定DomainEndpointOptions物件。這會設定 TLSSecurityPolicy
。
【ES.9】 應標記 Elasticsearch 網域
類別:識別 > 庫存 > 標記
嚴重性:低
資源類型: AWS::Elasticsearch::Domain
AWS Config rule:tagged-elasticsearch-domain
(自訂 Security Hub 規則)
排程類型:變更觸發
參數:
參數 | Description (描述) | Type | 允許的自訂值 | Security Hub 預設值 |
---|---|---|---|---|
requiredTagKeys
|
評估的資源必須包含的非系統標籤索引鍵清單。標籤鍵會區分大小寫。 | StringList | 符合AWS 要求的標籤清單 |
No default value
|
此控制項會檢查 Elasticsearch 網域是否具有具有參數 中定義之特定金鑰的標籤requiredTagKeys
。如果網域沒有任何標籤索引鍵,或它沒有參數 中指定的所有索引鍵,則控制項會失敗requiredTagKeys
。如果requiredTagKeys
未提供 參數,則控制項只會檢查標籤金鑰是否存在,如果網域未使用任何金鑰標記,則 會失敗。系統標籤會自動套用並以 開頭aws:
,因此會遭到忽略。
標籤是您指派給 AWS 資源的標籤,其中包含索引鍵和選用值。您可建立標籤,依照用途、擁有者、環境或其他條件分類資源。標籤可協助您識別、組織、搜尋和篩選資源。標記也可協助您追蹤動作和通知的負責資源擁有者。使用標記時,您可以實作屬性型存取控制 (ABAC) 做為授權策略,以根據標籤定義許可。您可以將標籤連接至 IAM 實體 (使用者或角色) 和 AWS 資源。您可以為 IAM 主體建立單一 ABAC 政策或一組單獨的政策。您可以設計這些 ABAC 政策,以便在主體的標籤符合資源標籤時允許操作。如需詳細資訊,請參閱《IAM 使用者指南》中的 ABAC for AWS?。
注意
請勿在標籤中新增個人識別資訊 (PII) 或其他機密或敏感資訊。許多 都可以存取標籤 AWS 服務,包括 AWS Billing。如需更多標記最佳實務,請參閱《》中的標記您的 AWS 資源AWS 一般參考。
修補
若要將標籤新增至 Elasticsearch 網域,請參閱《Amazon OpenSearch Service 開發人員指南》中的使用標籤。