云原生-AWS EC2使用、安全性及国内厂商对比

简介: 云原生-AWS EC2使用、安全性及国内厂商对比

本文通过实操,介绍了EC2的基本使用,并在功能、安全性上与其他厂商进行对比。

什么是EC2

EC2(Elastic Compute Cloud)是AWS云中的服务器,提供按需、可扩展的计算能力。本文以Linux为例。下图是EC2的位置。

Instance就是EC2,它被Security group(安全组)保护着,持久性存储使用了EBS( Elastic Block Store)。在安全组外面是子网,子网外面是VPC,VPC通过网关与外部通信。

启动一个EC2实例

名称随意,上面默认,创建一个密钥对。

点击启动实例,之后可以在控制台看到实例信息。

连接一个实例

前面为了快速创建,都是默认的,默认的安全组是不同的,需要先创建一个安全组,开通22端口。

添加入站规则

选择新建的安全组即可

控制台

ssh

给密钥权限后使用ssh登录即可。

Security groups

安全组是云服务器级别的防火墙,一个云服务器可以绑定多个安全组,一个安全组也可以被多个云服务器绑定。安全组由入站规则和出站规则组成。

规则

规则主要由以下字段组成:

  • 协议:允许的协议。最常见的协议是 6 (TCP)、17 (UDP) 和 1 (ICMP)。
  • 端口范围:对于 TCP、UDP 或自定义协议,允许的端口范围。您可以指定单个端口号(例如22)或端口号范围(例如 7000-8000)或all。
  • 源或目标:允许的流量的源(入站规则)或目标(出站规则)。指定以下选项之一:
  • 单个 IPv4 地址。您必须使用/32前缀长度。例如, 203.0.113.1/32。
  • 以 CIDR 块表示法表示的 IPv4 地址范围。例如, 203.0.113.0/24。
  • 单个 IPv6 地址。您必须使用/128前缀长度。例如, 2001:db8: 1234:1a00::123/128.
  • IPv6 地址范围,采用 CIDR 块表示法。例如, 2001:db8: 1234:1a00::/64.
  • 前缀列表ID。例如, pl-1234abc1234abc123. 有关更多信息,请参阅Amazon VPC 用户指南 中的前缀列表。
  • 安全组(此处称为指定安全组)的ID。例如,当前安全组、同一 VPC 的安全组或对等 VPC 的安全组。这允许基于与指定安全组关联的资源的私有 IP 地址的流量。这不会将指定安全组中的规则添加到当前安全组。

规则由以下特点:

  • 允许入的,默认允许出,不必再设置出规则。
  • 规则默认都是允许,没有拒绝。

默认安全组与自定义安全组

默认安全组允许所有出流量,但入流量仅允许绑定该安全组的资源。

自定义安全组允许所有出流量,入流量不允许,需要添加规则来进行控制进出流量。

安全性

操作系统安全

EC2安装了操作系统,在创建时可以使用开源的操作系统,如果出现问题,也将影响AWS EC2对应的实例。

密钥泄漏

ssh的密钥文件一般很少泄漏,不过用户也可以修改sshd,启用账号密码登录。

部署应用安全

EC2上面如果部署应用,应用有漏洞,也可能影响EC2实例。

元数据造成SSRF漏洞出现时敏感信息泄漏

访问metadata能够获取以下信息

local-ipv4、public-ipv4、security-groups、identity-credentials等是比较敏感的信息,当然AWS是默认不开启元数据的,并且使用IMSV2(实例元数据服务版本2)来解决了普通的GET型SSRF问题(攻击者可控URL)。

用户数据类似

网络设置错误

安全组配置错误时,可能造成一台EC2被攻击后,其他EC2也被扫描出来。

厂商对比

对比项 AWS 阿里云 华为云
密钥泄漏 默认密钥文件登录 默认账号密码登录 默认账号密码登录
安全组 只能添加允许规则 可以允许或拒绝,有优先级字段,相同时拒绝优先 和阿里云类似
元数据服务 提供了IMSV2来防御GET型SSRF 通过加固模式防御GET型SSRF 需要租户自己解决,且元数据过多

参考

EC2用户指南

如何安全设置AWS EC2

针对AWS EC2的SSRF攻击

IMSV2仍有SSRF攻击

阿里云-云服务器ECS

华为云-弹性云服务器ECS

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
运维 Kubernetes Cloud Native
《云原生架构容器&微服务优秀案例集》——05 金融—— 费芮互动 通过 MSE 完成移动支付应用稳定性和安全性双提升
《云原生架构容器&微服务优秀案例集》——05 金融—— 费芮互动 通过 MSE 完成移动支付应用稳定性和安全性双提升
317 0
《云原生架构容器&微服务优秀案例集》——05 金融—— 费芮互动 通过 MSE 完成移动支付应用稳定性和安全性双提升
|
运维 Kubernetes Cloud Native
《2023云原生实战案例集》——05 金融服务——费芮互动 通过MSE完成移动支付应用,稳定性和安全性双提升
《2023云原生实战案例集》——05 金融服务——费芮互动 通过MSE完成移动支付应用,稳定性和安全性双提升
|
29天前
|
运维 Cloud Native 持续交付
深入理解云原生架构及其在现代企业中的应用
随着数字化转型的浪潮席卷全球,企业正面临着前所未有的挑战与机遇。云计算技术的迅猛发展,特别是云原生架构的兴起,正在重塑企业的IT基础设施和软件开发模式。本文将深入探讨云原生的核心概念、关键技术以及如何在企业中实施云原生策略,以实现更高效的资源利用和更快的市场响应速度。通过分析云原生架构的优势和面临的挑战,我们将揭示它如何助力企业在激烈的市场竞争中保持领先地位。
|
27天前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
2月前
|
Cloud Native Devops 云计算
云计算的未来:云原生架构与微服务的革命####
【10月更文挑战第21天】 随着企业数字化转型的加速,云原生技术正迅速成为IT行业的新宠。本文深入探讨了云原生架构的核心理念、关键技术如容器化和微服务的优势,以及如何通过这些技术实现高效、灵活且可扩展的现代应用开发。我们将揭示云原生如何重塑软件开发流程,提升业务敏捷性,并探索其对企业IT架构的深远影响。 ####
45 3
|
2月前
|
Cloud Native 持续交付 云计算
云原生架构的演进与挑战
随着云计算技术的不断发展,云原生架构已成为企业数字化转型的重要支撑。本文深入探讨了云原生架构的概念、发展历程、核心技术以及面临的挑战,旨在为读者提供一个全面了解云原生架构的视角。通过分析Kubernetes、Docker等关键技术的应用,以及微服务、持续集成/持续部署(CI/CD)等实践案例,本文揭示了云原生架构在提高应用开发效率、降低运维成本、增强系统可扩展性等方面的显著优势。同时,也指出了云原生架构在安全性、复杂性管理等方面所面临的挑战,并提出了相应的解决策略。
|
27天前
|
运维 Cloud Native 持续交付
云原生技术深度探索:重塑现代IT架构的无形之力####
本文深入剖析了云原生技术的核心概念、关键技术组件及其对现代IT架构变革的深远影响。通过实例解析,揭示云原生如何促进企业实现敏捷开发、弹性伸缩与成本优化,为数字化转型提供强有力的技术支撑。不同于传统综述,本摘要直接聚焦于云原生技术的价值本质,旨在为读者构建一个宏观且具体的技术蓝图。 ####
|
30天前
|
弹性计算 运维 Cloud Native
云原生架构的崛起与未来展望
在数字化转型的浪潮中,云原生架构凭借其高效、灵活和可扩展的特性,正逐渐成为企业IT战略的核心。本文旨在探讨云原生架构的定义、关键特性、实施优势以及面临的挑战,同时展望未来的发展趋势。通过深入分析,我们期望为读者提供一个关于云原生架构全面而深入的视角,助力企业在云计算时代做出更明智的决策。
34 3
|
1月前
|
Cloud Native API 持续交付
云原生时代的微服务架构设计
随着云计算的蓬勃发展,云原生概念逐渐成为IT行业的热点。本文将通过深入浅出的方式,介绍在云原生环境下,如何设计一个高效、可扩展的微服务架构。文章不仅涉及理论概念,还将结合实际代码示例,帮助读者理解微服务架构的核心要素和设计原则,以及如何在云平台上实现这些设计。
|
2月前
|
Kubernetes Cloud Native Docker
云原生之旅:从传统架构到容器化服务的演变
随着技术的快速发展,云计算已经从简单的虚拟化服务演进到了更加灵活和高效的云原生时代。本文将带你了解云原生的概念、优势以及如何通过容器化技术实现应用的快速部署和扩展。我们将以一个简单的Python Web应用为例,展示如何利用Docker容器进行打包和部署,进而探索Kubernetes如何管理这些容器,确保服务的高可用性和弹性伸缩。