阿里云ECS安全组实践:允许或禁止安全组内的ECS实例对公网或私网的访问

简介: ECS安全组实践(一)本文介绍配置安全组的入方向规则的最佳实践。您可以通过配置安全组规则,允许或禁止安全组内的ECS实例对公网或私网的访问。安全组实践建议您在云端安全组提供类似虚拟防火墙功能,用于设置单台或多台ECS实例的网络访问控制,是重要的安全隔离手段。

ECS安全组实践(一)

本文介绍配置安全组的入方向规则的最佳实践。您可以通过配置安全组规则,允许或禁止安全组内的ECS实例对公网或私网的访问。

安全组实践建议

您在云端安全组提供类似虚拟防火墙功能,用于设置单台或多台ECS实例的网络访问控制,是重要的安全隔离手段。创建ECS实例时,您必须选择一个安全组。您还可以添加安全组规则,对某个安全组下的所有ECS实例的出方向和入方向进行网络控制。

在使用安全组前,您应先了解以下实践建议:

  • 最重要的规则:安全组应作为白名单使用。
  • 开放应用出入规则时应遵循“最小授权”原则,例如,您可以选择开放具体的端口(如80端口)。
  • 不应使用一个安全组管理所有应用,因为不同的分层一定有不同的需求。
  • 对于分布式应用来说,不同的应用类型应该使用不同的安全组,例如,您应对Web、Service、Database、Cache层使用不同的安全组,暴露不同的出入规则和权限。
  • 没有必要为每台实例单独设置一个安全组,控制管理成本。
  • 优先考虑VPC网络。
  • 不需要公网访问的资源不应提供公网IP。
  • 尽可能保持单个安全组的规则简洁。因为一台实例最多可以加入5个安全组,一个安全组最多可以包括100个安全组规则,所以一台ECS实例可能同时应用数百条安全组规则。您可以聚合所有分配的安全规则以判断是否允许流入或流出,但是,如果单个安全组规则很复杂,就会增加管理的复杂度。所以,应尽可能地保持单个安全组的规则简洁。
  • 阿里云的控制台提供了克隆安全组和安全组规则的功能。如果您想要修改线上的安全组和规则,您应先克隆一个安全组,再在克隆的安全组上进行调试,从而避免直接影响线上应用。

    **说明:** 调整线上的安全组的出入规则是比较危险的动作。如果您无法确定,不应随意更新安全组出入规则的设置。
    

避免设置0.0.0.0/0授权对象

允许全部入网访问是经常犯的错误。使用0.0.0.0/0意味着所有的端口都对外暴露了访问权限。这是非常不安全的。正确的做法是,先拒绝所有的端口对外开放。安全组应该是白名单访问。例如,如果您需要暴露Web服务,默认情况下可以只开放80、8080和443之类的常用TCP端口,其它的端口都应关闭。

{ "IpProtocol" : "tcp", "FromPort" : "80", "ToPort" : "80", "SourceCidrIp" : "0.0.0.0/0", "Policy": "accept"} ,
{ "IpProtocol" : "tcp", "FromPort" : "8080", "ToPort" : "8080", "SourceCidrIp" : "0.0.0.0/0", "Policy": "accept"} ,
{ "IpProtocol" : "tcp", "FromPort" : "443", "ToPort" : "443", "SourceCidrIp" : "0.0.0.0/0", "Policy": "accept"} ,

关闭不需要的入网规则

如果您当前使用的入规则已经包含了0.0.0.0/0,您需要重新审视自己的应用需要对外暴露的端口和服务。如果确定不想让某些端口直接对外提供服务,您可以加一条拒绝的规则。比如,如果您的服务器上安装了MySQL数据库服务,默认情况下您不应该将3306端口暴露到公网,此时,您可以添加一条拒绝规则,如下所示,并将其优先级设为100,即优先级最低。

{ "IpProtocol" : "tcp", "FromPort" : "3306", "ToPort" : "3306", "SourceCidrIp" : "0.0.0.0/0", "Policy": "drop", Priority: 100} ,

上面的调整会导致所有的端口都不能访问3306端口,极有可能会阻止您正常的业务需求。此时,您可以通过授权另外一个安全组的资源进行入规则访问。

以安全组为授权对象添加规则

不同的安全组按照最小原则开放相应的出入规则。对于不同的应用分层应该使用不同的安全组,不同的安全组应有相应的出入规则。

例如,如果是分布式应用,您会区分不同的安全组,但是,不同的安全组可能网络不通,此时您不应该直接授权IP或者CIDR网段,而是直接授权另外一个安全组ID的所有的资源都可以直接访问。比如,您的应用对Web、Database分别创建了不同的安全组:sg-web和sg-database。在sg-database中,您可以添加如下规则,授权所有的sg-web安全组的资源访问您的3306端口。

{ "IpProtocol" : "tcp", "FromPort" : "3306", "ToPort" : "3306", "SourceGroupId" : "sg-web", "Policy": "accept", Priority: 2} ,

以IP地址段为授权对象添加规则

经典网络中,因为网段不太可控,建议您使用安全组ID来授信入网规则

VPC网络中,您可以自己通过不同的VSwitch设置不同的IP域,规划IP地址。所以,在VPC网络中,您可以默认拒绝所有的访问,再授信自己的专有网络的网段访问,直接授信可以相信的CIDR网段。

{ "IpProtocol" : "icmp", "FromPort" : "-1", "ToPort" : "-1", "SourceCidrIp" : "10.0.0.0/24", Priority: 2} ,
{ "IpProtocol" : "tcp", "FromPort" : "0", "ToPort" : "65535", "SourceCidrIp" : "10.0.0.0/24", Priority: 2} ,
{ "IpProtocol" : "udp", "FromPort" : "0", "ToPort" : "65535", "SourceCidrIp" : "10.0.0.0/24", Priority: 2} ,

变更安全组规则步骤

变更安全组规则可能会影响您的实例间的网络通信。为了保证必要的网络通信不受影响,您应先尝试以下方法放行必要的实例,再执行安全组策略收紧变更。

说明: 执行收紧变更后,应观察一段时间,确认业务应用无异常后再执行其它必要的变更。

  • 新建一个安全组,将需要互通访问的实例加入这个安全组,再执行变更操作。
  • 如果授权类型为安全组访问,则将需要互通访问的对端实例所绑定的安全组ID添加为授权对象;
  • 如果授权类型为地址段访问,则将需要互通访问的对端实例内网IP添加为授权对象。

具体操作指引请参见添加安全组规则

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4天前
|
弹性计算 数据挖掘 测试技术
ECS e实例测评
ECS e实例是阿里云推出的经济型云服务器,适合中小规模应用。性能上能满足基本需求,但在高并发场景下表现一般。性价比高,价格亲民,适合预算有限的开发者。用户体验良好,配有丰富的技术文档,但部分高级功能操作说明有待优化。
30 18
|
10天前
|
存储 分布式计算 安全
阿里云服务器经济型e、通用算力型u1、计算型c8i、通用型g8i、内存型r8i实例介绍与选择参考
在阿里云现在的活动中,可选的云服务器实例规格主要有经济型e、通用算力型u1、计算型c8i、通用型g8i、内存型r8i实例,虽然阿里云在活动中提供了多种不同规格的云服务器实例,以满足不同用户和应用场景的需求。但是有的用户并不清楚他们的性能如何,应该如何选择。本文将详细介绍阿里云服务器中的经济型e、通用算力型u1、计算型c8i、通用型g8i、内存型r8i实例的性能、适用场景及选择参考,帮助用户根据自身需求做出合适的选择。
|
15天前
|
存储 人工智能 编解码
阿里云服务器计算型c8i、通用型g8i和计算型c8a、通用型g8a实例区别及选择参考
在选择阿里云服务器计算型和通用型实例规格的时候,有的用户不清楚计算型c8i、通用型g8i与计算型c8a、通用型g8a实例的区别,他们都是采用阿里云全新CIPU架构,可提供稳定的算力输出、更强劲的I/O引擎以及芯片级的安全加固。但是计算型c8i和通用型g8i实例用的是Intel处理器,计算型c8a和通用型g8a实例用的是AMD处理器。本文将详细介绍阿里云服务器计算型c8i、通用型g8i与计算型c8a、通用型g8a实例各自的性能和区别,以及适合的用户群体,帮助用户更好地选择适合自己的云服务器实例。
|
17天前
|
存储 人工智能 弹性计算
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理。通过合理优化资源分配、利用自动伸缩及高效数据管理,ECS能显著提升AI系统的性能与效率,降低运营成本,助力科研与企业用户在AI领域取得突破。
35 6
|
17天前
|
弹性计算 监控 数据库
制造企业ERP系统迁移至阿里云ECS的实例,详细介绍了从需求分析、数据迁移、应用部署、网络配置到性能优化的全过程
本文通过一个制造企业ERP系统迁移至阿里云ECS的实例,详细介绍了从需求分析、数据迁移、应用部署、网络配置到性能优化的全过程,展示了企业级应用上云的实践方法与显著优势,包括弹性计算资源、高可靠性、数据安全及降低维护成本等,为企业数字化转型提供参考。
42 5
|
18天前
|
存储 机器学习/深度学习 编解码
阿里云服务器计算型c8i实例解析:实例规格性能及使用场景和最新价格参考
计算型c8i实例作为阿里云服务器家族中的重要成员,以其卓越的计算性能、稳定的算力输出、强劲的I/O引擎以及芯片级的安全加固,广泛适用于机器学习推理、数据分析、批量计算、视频编码、游戏服务器前端、高性能科学和工程应用以及Web前端服务器等多种场景。本文将全面介绍阿里云服务器计算型c8i实例,从规格族特性、适用场景、详细规格指标、性能优势、实际应用案例,到最新的活动价格,以供大家参考。
|
23天前
|
存储 弹性计算 缓存
阿里云服务器通用型g8i实例性能与使用场景介绍及最新收费标准参考
阿里云ECS通用型g8i服务器采用阿里云全新CIPU架构,可提供稳定的算力输出、更强劲的I/O引擎以及芯片级的安全加固。ECS通用型g8i实例支持开启或关闭超线程配置,单台g8i实例最高支持100万IOPS。阿里云ECS通用型g8i实例CPU采用Intel®Xeon®Emerald Rapids或者Intel®Xeon®Sapphire Rapids,主频不低于2.7 GHz,全核睿频3.2GHz。本文为大家介绍通用型g8i实例性能与使用场景介绍及最新收费标准,以供参考。
|
22天前
|
人工智能 弹性计算 编解码
阿里云GPU云服务器性能、应用场景及收费标准和活动价格参考
GPU云服务器作为阿里云提供的一种高性能计算服务,通过结合GPU与CPU的计算能力,为用户在人工智能、高性能计算等领域提供了强大的支持。其具备覆盖范围广、超强计算能力、网络性能出色等优势,且计费方式灵活多样,能够满足不同用户的需求。目前用户购买阿里云gpu云服务器gn5 规格族(P100-16G)、gn6i 规格族(T4-16G)、gn6v 规格族(V100-16G)有优惠,本文为大家详细介绍阿里云gpu云服务器的相关性能及收费标准与最新活动价格情况,以供参考和选择。
|
27天前
|
机器学习/深度学习 人工智能 弹性计算
什么是阿里云GPU云服务器?GPU服务器优势、使用和租赁费用整理
阿里云GPU云服务器提供强大的GPU算力,适用于深度学习、科学计算、图形可视化和视频处理等多种场景。作为亚太领先的云服务提供商,阿里云的GPU云服务器具备灵活的资源配置、高安全性和易用性,支持多种计费模式,帮助企业高效应对计算密集型任务。
|
29天前
|
存储 分布式计算 固态存储
阿里云2核16G、4核32G、8核64G配置云服务器租用收费标准与活动价格参考
2核16G、8核64G、4核32G配置的云服务器处理器与内存比为1:8,这种配比的云服务器一般适用于数据分析与挖掘,Hadoop、Spark集群和数据库,缓存等内存密集型场景,因此,多为企业级用户选择。目前2核16G配置按量收费最低收费标准为0.54元/小时,按月租用标准收费标准为260.44元/1个月。4核32G配置的阿里云服务器按量收费标准最低为1.08元/小时,按月租用标准收费标准为520.88元/1个月。8核64G配置的阿里云服务器按量收费标准最低为2.17元/小时,按月租用标准收费标准为1041.77元/1个月。本文介绍这些配置的最新租用收费标准与活动价格情况,以供参考。