亚马逊AWS官方博客
使用阻止公有访问配置保护您的 Amazon EMR 集群免受意外网络攻击
阻止公有访问配置概览
BPA 配置是账户级别的配置,可帮助您集中管理对AWS同一个区域(Region)中的 EMR 集群的公共网络访问。您可以在区域中启用此配置,并阻止账户用户启动集群,防止因此而允许通过其端口从公有 IP 地址(对于 IPv4,源设置为 0.0.0.0/0,对于 IPv6,则设置为 ::/0)传入无限制的入站流量。您的应用程序可能需要特定的端口才能对互联网开放,对于这种情况,可以在 BPA 配置中将这些端口(或端口范围)配置为例外,以允许在启动集群之前进行公共访问。
当账户用户在启用了 BPA 配置的区域中启动集群时,EMR 将检查在此配置中定义的端口规则,并将其与在集群的关联安全组中指定的入站流量规则进行比较。如果这些安全组具有可打开访问公有 IP 地址的端口的入站规则,但您没有在 BPA 配置中将这些端口配置为例外,则 EMR 会导致集群创建失败,并向用户发送一条异常。
从 AWS 管理控制台启用 BPA 配置
要启用 BPA 配置,您需要具有调用 PutBlockPublicAccessConfiguration API 的权限。
- 登录到 AWS 管理控制台。在控制台中,导航到 Amazon EMR
- 在导航面板中,选择阻止公有访问(Block Public Access)。
- 选择更改,然后选择启用以启用 BPA。
默认情况下,除用于 SSH 流量的端口 22 外,所有端口均被阻止。要允许更多端口可供公共访问,请将它们添加为例外。
- 选择添加端口范围。
在启动集群之前,请定义这些例外。这些端口号或范围应该是安全组规则中唯一具有入站源 IP 地址(对于 IPv4 为 0.0.0.0/0,对于 IPv6 为 ::/0)的端口号或范围。
- 输入可供公共访问的端口号或端口范围。
- 选择保存更改。
有关使用 AWS CLI 配置 BPA 的信息,请参阅配置阻止公有访问。
小结
在本文中,我们讨论了 Amazon EMR 上的一项账户级别新功能,称为阻止公有访问 (BPA) 配置,该功能可帮助管理员管理对其 EMR 集群的公有访问。您可以立即启用 BPA 配置,防止区域中的 EMR 集群意外暴露于公共网络之中。
关于作者
Vignesh Rajamani 是 AWS EMR 的高级产品经理。
Esther Kundin 是 AWS EMR 的软件开发工程师。
Wesley Blumenthal 是 AWS EMR 的软件开发工程师。