全部产品
Search
文档中心

云服务器 ECS:管理安全组规则

更新时间:Dec 23, 2024

安全组规则用来控制ECS实例的出入站流量,适用于允许或拒绝特定网络流量、封锁不必要的端口、限制特定协议的流量和配置应用程序访问权限等使用场景。本文介绍安全组规则的添加、修改、查询、删除和导入导出操作。

操作前须知

在添加安全组规则之前,请了解以下内容:

  • 安全组能力概述和使用建议。具体信息,请参见安全组

  • 除了自定义的安全组规则,安全组还有一些不可见的默认访问控制规则,会影响流量的允许或拒绝。具体信息,请参见普通安全组与企业级安全组安全组规则

  • 安全组规则有数量限制,您应尽量保持规则的精简。具体信息,请参见安全组使用限制

使用场景

  • 当您的ECS实例需要对外提供服务时,您需要添加入方向、允许访问的安全组规则。

  • 当您发现ECS实例遭受到恶意攻击行为时,您可以添加入方向、拒绝访问的安全组规则。

  • 当您希望ECS实例主动连接外部网络时,需根据安全组类型及组内联通策略判断是否需要添加出方向、允许访问的安全组规则。

  • 当您不再需要某些出方向、入方向的流量管控时,可以删除对应方向的安全组规则。

  • 当您想要将规则快速复制到其他安全组,可使用导入导出安全组规则功能。

  • 更多场景,请参见安全组应用案例

添加安全组规则

通过控制台配置的安全组规则,入方向规则需要配置授权对象(即源地址,支持IP地址、安全组、前缀列表)、目的端口、协议类型;出方向规则需要配置授权对象(即目的地址,支持IP地址、安全组、前缀列表)、目的端口、协议类型。

使用ECS控制台

  1. 登录ECS管理控制台

  2. 在左侧导航栏,选择网络与安全 > 安全组

  3. 在页面左侧顶部,选择目标资源所在的资源组和地域。地域

  4. 到目标安全组,在操作列单击管理规则,添加出入方向的安全组规则。

    • 方式一:快速添加安全组规则

      适用于快速设置常用的TCP协议规则,您单击快速添加后,只需要设置授权策略授权对象,并选中一个或多个端口便能完成。

      image

    • 方式二:手动添加安全组规则

      您需要设置授权策略、优先级、协议类型、端口范围、授权对象等信息。具体操作步骤如下:

      1. 单击手动添加

      2. 在规则列表中,配置新增的安全组规则,配置完成后,单击操作列中的保存

        单条规则如何设置,请参见安全组规则

        image

使用API

如果您需要更精确地控制ECS实例的出流量和入流量,可以使用安全组五元组规则。五元组规则包含:源IP地址、源端口、目的IP地址、目的端口以及协议类型,并且与原有的安全组规则完全兼容。您可以通过API的方式配置安全组五元组规则。更多信息请参见安全组五元组规则

修改安全组规则

修改安全组规则后,新的安全组规则对安全组中的ECS实例立即生效,您可能需要监控网络流量和连接情况,以确保修改后的规则满足实际业务需求,并维持网络安全。更多信息,请参见什么是云监控

使用ECS控制台

  1. 网络与安全 > 安全组页面,找到需要修改安全组规则的安全组,单击操作列中的管理规则

  2. 找到需要修改的安全组规则,单击操作列中的编辑,进行修改,完成后,单击保存

使用API

查询安全组规则

通过健康检查功能检测安全组中的冗余规则,可以帮助您简化安全组配置,减少管理工作量,提高网络管理的方便性和效率,同时降低安全漏洞的风险。

使用ECS控制台

方式一:查看单个安全组的规则

  1. 网络与安全 > 安全组页面,找到需要修改安全组规则的安全组,单击操作列中的管理规则

  2. 选择安全组规则所属的方向,可以查询到各自分类的安全组规则。

    说明

    在安全组规则列表上方的搜索框中输入端口或授权对象,能够快速搜索出符合条件的安全组规则。

方式二:查看ECS实例已加入的所有安全组中的规则

  1. 实例与镜像 > 实例页面,找到待查看安全组规则的目标实例并单击实例ID,进入实例详情页。

  2. 安全组页签下,查看该实例加入的所有安全组。

  3. 单击操作管理规则,逐个查询所有安全组的规则。

使用API

删除安全组规则

在删除安全组规则之前,请确保您了解此操作可能带来的影响。避免因误删而导致不必要的网络安全问题。如果在删除安全组规则后发现仍然需要使用该规则,您可以重新创建一条新的规则来取代它。

使用ECS控制台

  1. 网络与安全 > 安全组页面,找到需要修改安全组规则的安全组,单击操作列中的管理规则

  2. 找到需要删除的安全组规则,单击操作列中的删除

  3. 在弹出的对话框中阅读提示信息,确认无误后,单击确定

使用API

检查安全组是否存在冗余规则

安全组的健康检查功能用于检查单个安全组中是否存在冗余规则。例如,安全组规则A的所有条件被规则B完全包含,并且规则A的优先级小于等于规则B的优先级,则规则A被认定为冗余规则。如果存在冗余规则,请清除冗余规则,避免出现安全组规则数量达到上限影响安全组的使用。

说明

每个安全组以及ECS实例的每张弹性网卡可以包含的安全组规则数量有限。有关安全组规则的使用限制及配额,请参见安全组使用限制

使用ECS控制台

  1. 网络与安全 > 安全组页面,找到需要查询规则的安全组,单击操作列中的管理规则

  2. 访问规则区域,单击健康检查

  3. 健康检查对话框中确认是否存在冗余规则。

    如下图所示,表示该安全组中存在两条冗余规则。冗余规则

  4. 选中冗余规则,然后单击确定,可对冗余规则进行删除。

导入导出安全组规则

ECS控制台支持安全组规则导出和导入功能,适用于安全组规则备份、恢复和迁移等使用场景。

在导入安全组之前,您需要符合如下限制,否则将会有导入失败的风险:

  • 安全组规则的优先级范围1~100,大于100的优先级需要先删除,导入后再重新创建。

  • ECS控制台支持将安全组规则导出为JSON或CSV文件。请确保您使用的文件格式正确,并且遵循了阿里云的安全组规则文件命名规则。

  • 导入时建议单次导入规则数量不超过200条。

  • 在跨地域导入规则时,不支持安全组规则中授权对象为安全组和前缀列表。

使用ECS控制台

  1. 网络与安全 > 安全组页面,找到需要导出安全组规则的安全组,单击操作列中的管理规则

  2. 访问规则区域,选择对应操作进行管理。

    • 导入安全组规则

      单击导入,在导入安全组规则对话框中,单击选择文件,然后选择本地的JSON或CSV文件。然后单击开始导入

      如果存在导入失败的规则,您可以将光标移到警告图标上查看失败原因。

    • 导出安全组规则

      单击导出,并选择保存的文件格式,下载并保存到本地。

      • JSON格式

        JSON文件命名规则示例为:ecs_${region_id}_${groupID}.json

        假设regionIDcn-qingdaogroupIDsg-123,导出的JSON文件名称则是ecs_cn-qingdao_sg-123.json

      • CSV格式

        CSV文件命名规则示例为:ecs_sgRule_${groupID}_${region_id}_${time}.csv

        假设regionIDcn-qingdaogroupIDsg-123time2020-01-20,导出的CSV文件名称则是ecs_sgRule_sg-123_cn-qingdao_2020-01-20.csv

安全组规则常见问题和最佳实践