带你读《CloudOps云上自动化运维 白皮书2.0》之25:3. 多个层面构建的安全与合规能力(3)

简介: 带你读《CloudOps云上自动化运维 白皮书2.0》之25:3. 多个层面构建的安全与合规能力(3)

《CloudOps云上自动化运维 白皮书2.0》—— 七、安全和合规能力Security——3. 多个层面构建的安全与合规能力(2):https://developer.aliyun.com/article/1222438?groupCode=ecs


3) 网络环境安全

 

云计算利用虚拟网络(Virtual Private Cloud,简称VPC),来抽象物理网络并创建网络资源池,实现数据链路层的隔离,为每个用户提供一张独立隔离的安全网络环境。不同VPC之间内部网络完全隔离,只能通过对外映射的IP互连。

 

在VPC内部,用户可以自定义IP地址范围、网段、路由表和网关等;此外,用户可以通过VPN 网关、高速通道物理专线、智能接入网关等服务将本地数据中心和云上VPC打通,也可以通过云企业网实现全球网络互通,从而形成一个按需定制的网络环境,实现应用的平滑迁移上云和对数据中心的扩展。

 

此外,网络是所有云服务的唯一入口,网络攻击是种类最多、危害最大,也是最难防护的风险之一。云计算平台会提供一套成熟的网络安全架构,以应对来自互联网的各种威胁。在阿里云上,可以通过安全组、网络ACL、路由策略或网络专线来控制虚拟网络的访问权限。除了对内网网络访问的控制之外,还需要配置云防火墙、应用程序防火墙、DDoS 防护等安全措施,针对各种外部网络安全威胁,进行安全防护。

 

image.png

 

a) 网络资源隔离安全建议

 

建立网络管理员,统一管理安全组、网络ACL以及流量日志

使用ACL限制不需要公开的任何内容

网络资源隔离,预设置较大子网,避免子网重叠使用

围绕访问点而不是资源配置安全组

定期重新访问安全组以优化规则

 

b) 搭建实例安全的网络环境

 

合理设置安全组网络隔离减少攻击面

 

安全组是重要的网络安全隔离手段,用于设置单台或多台云服务器的网络访问控制。通过设置安全组规则,可以在网络层过滤服务器的主动/被动访问行为,限定服务器对外/对内的端口访问,授权访问地址,从而减少攻击面,保护服务器的安全。

 

以下是安全组实践的安全建议:

 

最小原则白名单开放

 

安全组应该是白名单性质的,所以需尽量开放和暴露最少的端口,同时尽可能少地分配公网IP。

 

避免设置0.0.0.0/0授权对象

 

允许全部入网访问是经常犯的错误。使用0.0.0.0/0意味着所有的端口都对外暴露了访问权限。这是非常不安全的。正确的做法是,先拒绝所有的端口对外开放。安全组应该是白名单访问。

 

筛查潜在高危安全组

 

安全组规则设置不当会造成严重的安全隐患。阿里云会定期检查您的安全组,如果安全组规则对特定端口的访问不做限制,就会产生预警。您可以使用潜在高危安全组概览发现不合理的安全组规则,通过修改安全组规则保证ECS实例的网络安全。

 

关闭不需要的入网规则

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

 

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

 

经典网络的内网安全组规则不要使用CIDR或者IP授权

 

对于经典网络类型的ECS实例,阿里云默认不开启任何内网的入规则。内网的授权一定要谨慎。

 

定义合理的安全组名称和标签

合理的安全组名称和描述有助于您快速识别当前复杂的规则组合。

 

将需要互相通信的ECS实例加入同一个安全组

 

一个ECS实例最多可以加入5个安全组,而同一安全组内的ECS实例之间是网络互通的。

 

安全组内实例间隔离

 

安全组是一种虚拟防火墙,具备状态检测和包过滤功能。安全组由同一个地域内具有相同安全保护需求并相互信任的实例组成。为了满足同安全组内实例之间网络隔离的需求,阿里云丰富了安全组网络连通策略,支持安全组内实现网络隔离。

 

使用安全组五元组规则

 

安全组用于设置单台或多台ECS实例的网络访问控制,它是重要的网络安全隔离手段,用于在云端划分安全域。安全组五元组规则能精确控制源IP、源端口、目的IP、目的端口以及传输层协议。

 

公网服务的云服务器和内网服务器尽量属于不同的安全组

 

是否对外提供公网服务,包括主动暴露某些端口对外访问(例如80、443等),被动地提供端口转发规则(例如云服务器具有公网IP、EIP、NAT端口转发规则等),都会导致自己的应用可能被公网访问到。

 

合理配置安全域隔离企业内部不同安全等级服务

 

您可以基于VPC专有网络,构建自定义专属网络,隔离企业内部不同安全级别的服务器,避免互通网络环境下受其他服务器影响。

 

建议您创建一个专有网络,选择自有IP地址范围、划分网段、配置路由表和网关等。然后将重要的数据存储在一个跟互联网网络完全隔离的内网环境,日常可以用弹性IP(EIP)或者跳板机的方式对数据进行管理。具体步骤请参见创建专有网络

 

使用跳板机或堡垒机防御内部和外部入侵破坏

 

跳板机由于其自身的权限巨大,需要通过工具做好审计记录,建议直接使用堡垒机,保障网络和数据不受来自外部和内部用户的入侵和破坏,同时运用各种技术手段监控和记录运维人员对网络内的服务器、网络设备、安全设备、数据库等设备的操作行为,以便集中报警、及时处理及审计定责。

 

使用跳板机SSH时,建议您优先使用SSH密钥对而不是密码登录。

 

公网IP合理分配,降低公网攻击风险

 

不论是经典网络还是专有网络VPC中,合理的分配公网IP可以让系统更加方便地进行公网管理,同时减少系统受攻击的风险。在专有网络的场景下,创建虚拟交换机时,建议您尽量将需要公网访问的服务区的IP区间放在固定的几个交换机子网CIDR中,方便审计和区分,避免不小心暴露公网访问。

 

在分布式应用中,大多数应用都有不同的分层和分组,对于不提供公网访问的云服务器尽量不提供公网IP,如果是有多台服务器提供公网访问,建议您配置公网流量分发的负载均衡服务来公网服务,提升系统的可用性,避免单点。

 

对于不需要公网访问的云服务器尽量不要分配公网IP。专有网络中当您的云服务器需要访问公网的时候,优先建议您使用NAT网关,用于为VPC内无公网IP的ECS实例提供访问互联网的代理服务,您只需要配置相应的SNAT规则即可为具体的CIDR网段或者子网提供公网访问能力,具体配置参见SNAT。避免因为只需要访问公网的能力而在分配了公网IPEIP之后也向公网暴露了服务。



《CloudOps云上自动化运维 白皮书2.0》—— 七、安全和合规能力Security——3. 多个层面构建的安全与合规能力(4):https://developer.aliyun.com/article/1222433?groupCode=ecs

相关文章
|
22天前
|
监控 jenkins 测试技术
自动化测试框架的构建与实践
【10月更文挑战第40天】在软件开发周期中,测试环节扮演着至关重要的角色。本文将引导你了解如何构建一个高效的自动化测试框架,并深入探讨其设计原则、实现方法及维护策略。通过实际代码示例和清晰的步骤说明,我们将一起探索如何确保软件质量,同时提升开发效率。
35 1
|
28天前
|
测试技术 开发者 Python
自动化测试之美:从零构建你的软件质量防线
【10月更文挑战第34天】在数字化时代的浪潮中,软件成为我们生活和工作不可或缺的一部分。然而,随着软件复杂性的增加,如何保证其质量和稳定性成为开发者面临的一大挑战。自动化测试,作为现代软件开发过程中的关键实践,不仅提高了测试效率,还确保了软件产品的质量。本文将深入浅出地介绍自动化测试的概念、重要性以及实施步骤,带领读者从零基础开始,一步步构建起属于自己的软件质量防线。通过具体实例,我们将探索如何有效地设计和执行自动化测试脚本,最终实现软件开发流程的优化和产品质量的提升。无论你是软件开发新手,还是希望提高项目质量的资深开发者,这篇文章都将为你提供宝贵的指导和启示。
|
10天前
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
25 9
|
24天前
|
运维 监控
构建高效运维体系:从理论到实践
在当今快速发展的信息化时代,高效的运维体系是保障企业信息系统稳定运行的关键。本文旨在探讨如何构建一个高效、可靠的运维体系,通过分析当前运维面临的挑战,提出相应的解决策略,并结合实际案例,展示这些策略的实施效果。文章首先介绍了高效运维的重要性,接着分析了运维过程中常见的问题,然后详细阐述了构建高效运维体系的策略和步骤,最后通过一个实际案例来验证这些策略的有效性。
|
1月前
|
人工智能 运维 监控
构建高效运维体系:理论与实践的深度融合####
本文旨在探讨高效IT运维体系的构建策略,通过理论框架与实际案例并重的方式,深入剖析了现代企业面临的运维挑战。文章开篇概述了当前运维领域的新趋势,包括自动化、智能化及DevOps文化的兴起,随后详细阐述了如何将这些先进理念融入日常运维管理中,形成一套既灵活又稳定的运维机制。特别地,文中强调了数据驱动决策的重要性,以及在快速迭代的技术环境中保持持续学习与适应的必要性。最终,通过对比分析几个典型企业的运维转型实例,提炼出可复制的成功模式,为读者提供具有实操性的指导建议。 ####
|
2月前
|
运维 监控 jenkins
运维自动化实战:利用Jenkins构建高效CI/CD流程
【10月更文挑战第18天】运维自动化实战:利用Jenkins构建高效CI/CD流程
|
2月前
|
机器学习/深度学习 敏捷开发 运维
构建高效运维体系
本文旨在探讨如何通过技术创新和管理优化,构建一个高效、稳定且可持续发展的运维体系。我们将从自动化工具的应用、监控告警机制的完善、持续集成与持续部署(CI/CD)的实践、以及团队协作与沟通的强化等多个维度,深入剖析运维体系的构建过程。同时,文章将结合实际案例,分析运维过程中可能遇到的挑战及应对策略,为运维人员提供实用的指导和建议。
|
1月前
|
存储 运维 监控
运维技术深度解析:构建高效、稳定的运维体系
【10月更文挑战第22天】运维技术深度解析:构建高效、稳定的运维体系
209 0
|
1月前
|
人工智能 运维 监控
运维技术深度解析:构建高效、稳定的IT基础设施
【10月更文挑战第22天】运维技术深度解析:构建高效、稳定的IT基础设施
64 0
|
1月前
|
机器学习/深度学习 边缘计算 运维
运维技术深度解析:构建高效、稳定的IT基础设施
【10月更文挑战第22天】运维技术深度解析:构建高效、稳定的IT基础设施
54 0