選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

使用 Amazon EMR 封鎖公開存取

焦點模式
使用 Amazon EMR 封鎖公開存取 - Amazon EMR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

如果叢集的安全組態允許來自連接埠上公有 IP 地址的傳入流量,則 Amazon EMR 封鎖公開存取 (BPA) 會阻止您在公有子網路中啟動叢集。

重要

預設為啟用封鎖公開存取。為了增強帳戶保護,建議您保持啟用狀態。

了解封鎖公開存取

您可以使用封鎖公開存取帳戶層級組態來集中管理 Amazon EMR 叢集的公有網路存取。

當來自 的 使用者 AWS 帳戶 啟動叢集時,Amazon EMR 會檢查叢集安全群組中的連接埠規則,並將其與您的傳入流量規則進行比較。如果安全群組具有開啟公有 IP 地址 IPv4 0.0.0.0/0 或 IPv6 ::/0 連接埠的傳入規則,且這些連接埠未指定為您帳戶的例外狀況,則 Amazon EMR 不會允許使用者建立叢集。

如果使用者修改公有子網路中正在執行的叢集的安全群組規則,讓其具有違反您帳戶的 BPA 組態的公開存取規則,則 Amazon EMR 將撤銷新規則 (如果它有執行此操作的許可)。如果 Amazon EMR 沒有撤銷此規則的許可,則其會在 AWS Health 儀表板中建立描述違規的事件。若要將撤銷規則許可授予 Amazon EMR,請參閱 設定 Amazon EMR 以撤銷安全群組規則

依預設,為您的 AWS 帳戶的每個 AWS 區域 中的所有叢集啟用封鎖公開存取。BPA 適用於叢集的整個生命週期,但並不適用於您在私有子網路中建立的叢集。您可以設定 BPA 規則的例外狀況;依預設,連接埠 22 為例外狀況。如需有關設定例外狀況的詳細資訊,請參閱 設定封鎖公開存取

設定封鎖公開存取

您可以隨時更新帳戶中的安全群組和封鎖公開存取組態。

您可以使用 AWS Management Console、 () 和 Amazon EMR API 來開啟和關閉封鎖公開存取 AWS Command Line Interface (BPA AWS CLI) 設定。設定會依據各個區域套用到您的帳戶。若要維護叢集安全,建議您使用 BPA。

Console
使用主控台設定封鎖公有存取
  1. 登入 AWS Management Console,然後在 https://https://console.aws.amazon.com/emr 開啟 Amazon EMR 主控台。

  2. 在頂部導覽列上,選取您要設定的區域 (如果尚未選取)。

  3. 在左側導覽窗格中的 EC2 上的 EMR 下,選擇封鎖公開存取

  4. Block public access settings (封鎖公開存取設定) 下,完成以下步驟。

    若要... 執行此作業...

    開啟或關閉封鎖公開存取

    選擇編輯,視需要選擇開啟關閉,然後選擇儲存

    編輯例外清單中的連接埠

    1. 選擇編輯並尋找連接埠範圍例外狀況區段。

    2. 若要將連接埠新增至例外清單,請選擇 Add a port range (新增連接埠範圍),然後輸入新的連接埠或連接埠範圍。針對每個新增的連接埠或連接埠範圍重複此步驟。

    3. 若要移除連接埠或連接埠範圍,請在連接埠範圍清單中選擇項目旁邊的移除

    4. 選擇 Save (儲存)。

AWS CLI
使用 設定封鎖公開存取 AWS CLI
  • 使用 aws emr put-block-public-access-configuration 指令來設定封鎖公開存取,如下列範例所示。

    若要... 執行此作業...

    開啟封鎖公開存取

    如下列範例所示,設定 BlockPublicSecurityGroupRulestrue。若要讓叢集啟動,任何與叢集相關聯的安全群組都可以有允許公開存取的傳入規則。

    aws emr put-block-public-access-configuration --block-public-access-configuration BlockPublicSecurityGroupRules=true

    關閉封鎖公開存取

    如下列範例所示,設定 BlockPublicSecurityGroupRulesfalse。與叢集相關聯的安全群組可以擁有允許任何連接埠上公有存取的傳入規則。我們不建議使用此組態。

    aws emr put-block-public-access-configuration --block-public-access-configuration BlockPublicSecurityGroupRules=false

    開啟封鎖公開存取,並將連接埠指定為例外狀況

    下列範例開啟封鎖公開存取,並將連接埠 22 和連接埠 100-101 指定為例外狀況。這可以讓叢集建立相關聯的安全群組具有允許連接埠 22、連接埠 100 或連接埠 101 公開存取的傳入規則。

    aws emr put-block-public-access-configuration --block-public-access-configuration '{ "BlockPublicSecurityGroupRules": true, "PermittedPublicSecurityGroupRuleRanges": [ { "MinRange": 22, "MaxRange": 22 }, { "MinRange": 100, "MaxRange": 101 } ] }'
使用主控台設定封鎖公有存取
  1. 登入 AWS Management Console,然後在 https://https://console.aws.amazon.com/emr 開啟 Amazon EMR 主控台。

  2. 在頂部導覽列上,選取您要設定的區域 (如果尚未選取)。

  3. 在左側導覽窗格中的 EC2 上的 EMR 下,選擇封鎖公開存取

  4. Block public access settings (封鎖公開存取設定) 下,完成以下步驟。

    若要... 執行此作業...

    開啟或關閉封鎖公開存取

    選擇編輯,視需要選擇開啟關閉,然後選擇儲存

    編輯例外清單中的連接埠

    1. 選擇編輯並尋找連接埠範圍例外狀況區段。

    2. 若要將連接埠新增至例外清單,請選擇 Add a port range (新增連接埠範圍),然後輸入新的連接埠或連接埠範圍。針對每個新增的連接埠或連接埠範圍重複此步驟。

    3. 若要移除連接埠或連接埠範圍,請在連接埠範圍清單中選擇項目旁邊的移除

    4. 選擇 Save (儲存)。

設定 Amazon EMR 以撤銷安全群組規則

Amazon EMR 需要撤銷安全群組規則並遵守您的封鎖公開存取組態的許可。您可以使用下列其中一種方法,來提供 Amazon EMR 所需的許可:

  • (建議)AmazonEMRServicePolicy_v2 受管政策附接至服務角色。如需詳細資訊,請參閱Amazon EMR 的服務角色 (EMR 角色)

  • 建立新的內嵌政策,以允許對安全群組執行 ec2:RevokeSecurityGroupIngress 動作。如需有關如何修改角色許可政策的詳細資訊,請參閱《IAM 使用者指南》中的使用 IAM 主控台AWS APIAWS CLI 修改角色許可政策

解決封鎖公開存取違規問題

如果發生封鎖公開存取違規,您可以透過下列其中一個動作來緩解此問題:

  • 如果您想要存取叢集上的 Web 介面,請使用 檢視 Amazon EMR 叢集上託管的 Web 介面 中所述的其中一個選項透過 SSH (連接埠 22) 存取介面。

  • 若要允許從特定 IP 地址而非公有 IP 地址傳送至叢集的流量,請新增安全群組規則。如需詳細資訊,請參閱《Amazon EC2 入門指南》中的將規則新增至安全群組

  • (不建議) 您可以設定 Amazon EMR BPA 例外狀況,以包含所需的連接埠或連接埠範圍。在您指定 BPA 例外狀況時,會對未受保護的連接埠造成風險。如果您計劃指定例外狀況,則應在不再需要例外狀況時立即予以移除。如需詳細資訊,請參閱設定封鎖公開存取

識別與安全群組規則關聯的叢集

您可能需要識別與指定安全群組規則關聯的所有叢集,或尋找指定叢集的安全群組規則。

  • 如果您知道安全群組,且尋找此安全群組的網路介面,則可以識別關聯的叢集。如需詳細資訊,請參閱 AWS re:Post上的如何尋找與 Amazon EC2 安全群組關聯的資源?。附接至這些網路介面的 Amazon EC2 執行個體將使用其所屬叢集的 ID 進行標記。

  • 如果您要尋找已知叢集的安全群組,請遵循 檢視 Amazon EMR 叢集狀態和詳細資訊 中的步驟進行。您可以在主控台的網路和安全面板中,或 AWS CLI的 Ec2InstanceAttributes 欄位中尋找叢集的安全群組。

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。