云服务器 ECS 安全:ECS安全组实践(一)

简介:


ECS安全组实践(一)

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

本文主要介绍如何配置安全组的入网规则。

安全组相关的信息

在配置安全组的入网规则之前,您应已经了解以下安全组相关的信息:

  • 安全组限制
  • 安全组默认规则
  • 设置安全组 In 方向的访问权限
  • 设置安全组 Out 方向的访问权限

安全组实践的基本建议

在开始安全组的实践之前,下面有一些基本的建议:

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

设置安全组的入网规则

以下是安全组的入网规则的实践建议。

不要使用 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} ,

授权另外一个 CIDR 可以入网访问

经典网络中,因为网段不太可控,建议您使用安全组 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
目录
相关文章
|
6天前
|
存储 SQL 关系型数据库
服务器数据恢复—云服务器上mysql数据库数据恢复案例
某ECS网站服务器,linux操作系统+mysql数据库。mysql数据库采用innodb作为默认存储引擎。 在执行数据库版本更新测试时,操作人员误误将在本来应该在测试库执行的sql脚本在生产库上执行,导致生产库上部分表被truncate,还有部分表中少量数据被delete。
46 25
|
5天前
|
机器学习/深度学习 人工智能 弹性计算
阿里云服务器入门级、企业级、异构云服务器、弹性裸金属服务器区别参考
在我们选购阿里云服务器时,面对多样化的云服务器架构,如X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及超级计算集群等,我们需要根据实际需求选择合适的服务器类型。阿里云提供了入门级企业级云服务器、异构云服务器和弹性裸金属服务器等多种产品类型,以满足不同场景下的业务需求。本文将简要介绍这些不同类型的云服务器及其主要适用场景。
|
8天前
|
存储 弹性计算 安全
阿里云服务器购买后设置密码、安全组、基础安全服务、挂载云盘等流程简介
对于初次选购阿里云服务器的用户来说,通过阿里云推出的各类活动买到心仪的云服务器仅仅是第一步。为了确保云服务器能够正常运行并承载您的应用,购买之后还需要给云服务器设置远程登录密码、设置安全组规则、设置基础安全、购买并挂载云盘等操作之后,我们才能使用并部署自己的应用到云服务器上。本文将详细介绍在阿里云的活动中购买云服务器后,您必须完成的几个关键步骤,助您快速上手并充分利用云服务器的强大功能。
|
22天前
|
存储 弹性计算 数据挖掘
阿里云服务器ECS通用算力型u1和ECS经济型e实例性能特点、使用及常见问题解答FAQ
阿里云ECS云服务器的经济型e实例和通用算力型u1实例深受开发者和中小企业青睐。e实例适合中小型网站、开发测试等轻量级应用,采用共享CPU调度模式,性价比高;u1实例则适用于中小型企业级应用,提供更高的性能保障和稳定性,支持固定CPU调度模式,计算性能更稳定。同等配置下,u1实例在网络带宽、IOPS等方面表现更优,价格也相对较高。个人用户可选择e实例,中小企业建议选择u1实例以确保业务稳定性。
|
2天前
|
存储 机器学习/深度学习 人工智能
2025年阿里云GPU服务器租用价格、选型策略与应用场景详解
随着AI与高性能计算需求的增长,阿里云提供了多种GPU实例,如NVIDIA V100、A10、T4等,适配不同场景。2025年重点实例中,V100实例GN6v单月3830元起,适合大规模训练;A10实例GN7i单月3213.99元起,适用于混合负载。计费模式有按量付费和包年包月,后者成本更低。针对AI训练、图形渲染及轻量级推理等场景,推荐不同配置以优化成本和性能。阿里云还提供抢占式实例、ESSD云盘等资源优化策略,支持eRDMA网络加速和倚天ARM架构,助力企业在2025年实现智能计算的效率与成本最优平衡。 (该简介为原文内容的高度概括,符合要求的字符限制。)
|
4天前
|
存储 弹性计算 人工智能
2025年阿里云企业云服务器ECS选购与配置全攻略
本文介绍了阿里云服务器的核心配置选择方法论,涵盖算力需求分析、网络与存储设计、地域部署策略三大维度。针对不同业务场景,如初创企业官网和AI模型训练平台,提供了具体配置方案。同时,详细讲解了购买操作指南及长期运维优化建议,帮助用户快速实现业务上云并确保高效运行。访问阿里云官方资源聚合平台可获取更多最新产品动态和技术支持。
|
6天前
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
Node.js 是一种高效的 JavaScript 运行环境,基于 Chrome V8 引擎,支持在服务器端运行 JavaScript 代码。本文介绍如何在阿里云上一键部署 Node.js 环境,无需繁琐配置,轻松上手。前提条件包括 ECS 实例运行中且操作系统为 CentOS、Ubuntu 等。功能特点为一键安装和稳定性好,支持常用 LTS 版本。安装步骤简单:登录阿里云控制台,选择扩展程序管理页面,安装 Node.js 扩展,选择实例和版本,等待创建完成并验证安装成功。通过阿里云的公共扩展,初学者和经验丰富的开发者都能快速进入开发状态,开启高效开发之旅。
|
1月前
|
弹性计算 数据挖掘 应用服务中间件
阿里云轻量应用服务器68元与云服务器99元和199元区别及选择参考
目前阿里云有三款特惠云服务器,第一款轻量云服务器2核2G68元一年,第二款经济型云服务器2核2G3M带宽99元1年,第三款通用算力型2核4G5M带宽199元一年。有的新手用户并不是很清楚他们之间的区别,因此不知道如何选择。本文来介绍一下它们之间的区别以及选择参考。
522 87
|
8天前
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
|
2天前
|
存储 人工智能 弹性计算
2025年阿里云企业高性能云服务器租用价格与选型详解
随着企业数字化转型,阿里云于2025年推出多款高性能云服务器实例,涵盖计算、通用和内存密集型场景。文章分析了企业选择云服务器的核心要点,包括明确业务需求(如计算密集型任务推荐计算型实例)、性能与架构升级(如第八代实例性能提升20%),以及第九代实例支持AI等高算力需求。同时提供了配置价格参考和成本优化策略,助力企业实现效率与成本的最优平衡。

热门文章

最新文章