云技术基础(详见B站泷羽sec)

一、简介

不管是防御系统还是进攻系统,强大的底层技术基础都是必不可少的。

从防御的角度来看,只有了解底层技术,我们才能知道如何构建防御体系。

从进攻的角度讲,了解底层技术才能发现漏洞并开发出漏洞利用的方法。

所以,攻击者和防御者都必须清楚对方的运作方式。

二、云技术历史

以前构建系统的时候,需要购买设备、租用数据中心机柜,然后搭建基础设施。

随着处理器的不断进化,虚拟机出现了。它能把一台机器的资源分成多台机器来使用,提高了资源利用率,变得更加灵活可拓展,实现了从裸机基础设施到虚拟化基础设施的转变。

接着,容器化技术登场,进一步提高了效率,实现了服务器、网络和存储的虚拟交付。现在,我们把最新一代的基础设施称为“云”,它可不是单一的技术哦,而是众多技术的集合。

三、云服务

云是一种 IT 基础设施系统,它将资源的创建抽象在容错、地理分布和可扩展的物理基础设施之上。并以服务器的形式按需求交付能力,非常易于使用,可以自动创建服务器、存储、网络等等。

云基础架构必须稳定,不能频繁出现中断。

地理分布的云基础设施能够提高容错能力,而且云必须能够快速扩展,以满足各种需求。

有很多公有云服务商,比如 Amazon Web Services(AWS)、Azure、Google(GCP),还有华为云、腾讯云、阿里云等等。组织可以使用 OpenStack 等工具在自己的数据中心搭建私有云,或者一部分业务运行在私有云中,一部分运行在公有云中。

四、云分类

1. 基础设施即服务(Iaas):就像提供建筑材料和工具,让你可以自己搭建房子。

指的是把IT基础设施作为一种服务通过网络对外提供,并根据用户对资源的实际使用量或占用量进行计费的一种服务模式。在这种模式下,云服务提供商负责管理机房基础设施、计算机网络、磁盘柜、服务器和虚拟机等,而用户则可以在此基础上构建自己的应用程序和服务。用户需要自行安装和管理操作系统、数据库、中间件、应用软件和数据信息。

2. 平台即服务(PaaS):类似有了基本框架的房子,你只需进行装修和布置。

PaaS平台通常包括一系列服务和功能,如应用程序开发工具、应用程序运行环境、数据库、消息队列、缓存等。这些服务可以帮助开发者快速部署和扩展应用程序,同时提供自动化管理的功能,如自动扩展、自动备份、自动恢复等,以提高应用程序的可靠性和可用性。

为用户提供了一个基于云端的开发和部署环境。在这个平台上,用户可以开发、测试、部署和管理应用程序,而无需自行构建和维护通常与这些过程相关的复杂基础设施。

3. 软件即服务(SaaS):直接给你一个装修好可以直接入住的房子。

它是一种基于云计算的软件部署模式,在这种模式下,第三方供应商在云基础设施上构建应用程序,并通过互联网向客户提供这些应用程序,客户通常通过订阅的方式按需支付服务费用,而无需购买、安装和运维软件及相关硬件。SaaS应用程序可以在任何有互联网连接和网络浏览器的设备上访问,用户无需在本地设备上安装和运行软件。

五、云架构

1. 虚拟化:把一台机器的资源分成多台虚拟机器,多台裸机汇集形成资源集群,隔离资源的使用,灵活且可扩展资源池。它抽象了硬件安装过程,但仍有改进空间,并非专为云而生。技术栈的灵活性和可定制性提升,促使了容器的出现。

2. 容器:容器就像一个个独立的小空间,允许开发人员与堆栈各部分灵活交互,实现按需生成服务,提高网络抽象程度,方便应用迁移扩展,更高效地使用资源。系统管理和网络工程可以外包给其他公司。云是多种技术的集合。

六、云架构设计

1.组件选择

确定架构(难改),选择绑定/非绑定组件(开发、开源、购买)

云原生组件: 为分布式系统设计,CNCF认证(非必须)、安全编码、开源(部分)

laC:引导介质(Packer)、安装系统(Terraform)、 自动配置(Ansible)、 状态强制

(Monit)

2.集成部署

使用持续集成和持续交付(CICD) 管道来构建环境

包括测试、测量和扫描代码更改的自动化测试和部署(GitOps)

3.弹性可靠

任何单点故障都有故障转移或其他机制,使业务可以持续提供(冗余)

GSLB (智能DNS、GTM)解决客户单访问的单点故障隐患

4.平衡控制

控制保护系统免受漏洞和内部攻击的组件,应平衡控制和可用性

七、云设计模式

云架构设计不必从头开始,采用已检验的设计模式是最佳选择。

1. 微服务架构:为松散耦合、模块化服务而设计,微服务协同工作完成整体服务。每个服务都可以独立修改代码和重用,提高系统整体弹性和容错。

大多数云利用微服务架构,云原生应用被构建充当微服务,便于水平扩展。安全优势是每个微服务应用强化、隔离,单一服务漏洞对整体系统影响小。缺点是调试更复杂,需要跨不同服务跟踪事务;性能可能有短板。

2. 零信任架构:对资源的每个请求都需要验证来源已授权,然后授权短期访问(用令牌)。实现零信任架构的一种常见方法是 Open ID Connect(OIDC)联盟访问。

授权处于活动状态时可以访问任何联合内服务。

密码重置是针对零信任架构的常见攻击方式。

八、安全控制

1. 网络控制:

传统架构用防火墙实现网络控制,云环境网络抽象为 SDN、SD WANSDN 可以对不同的接口(如 API 或 GUI)设置网络规则。

通过 mTLS 不仅能加密流量,还能对客户端进行身份验证,有证书才能访问微服务。不正确的访问管理可导致权限提升,甚至破坏整个基础设施。

现代访问管理系统多使用令牌进行访问控制,提供对服务的短时访问权。

JWT 通常用于访问云端资源,伪造和破解密码是常见攻击手段。

另一种类型的权限控制机制是强制访问控制 MAC。

2. 身份管理:企业通常用 AD、LDAP 进行身份管理。

AWS IAM 是身份和访问管理的公共云服务。

Google 联盟认证 OIDC 经常用于 2FA。

云身份提供者(IdP)作为真实身份来源,是更安全的解决方案,比如 Azure AD。

九、容器与云

虚拟化中每个 VM 需要运行自己的操作系统,大大增加了总体开销。

容器化是更现代的架构,容器共享内核与硬件,更快、更小、更高效。

容器是对虚拟化的补充,而非取代。

容器的系统开销更小,可以进一步分离应用组件,比如搜索、登录、查询、订单功能分开。

容器使用映像作为模板生成,映像相当于计算机硬盘。容器使用不同发行版文件加载内核,运行容器。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/468889.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全球海工供应链,中国建造!第十一届全球FPSOFLNGFSRU大会在上海隆重召开

10月30日-31日,全球海洋工程与高端装备领域的年度国际交流盛会——第十一届全球FPSO&FLNG&FSRU大会暨海上能源全产业链博览会在上海隆重召开,同期举办第七届亚洲海洋风能大会。本次大会暨博览会由上海船舶工业行业协会、上海市工业合作协会、决策…

Linux网络编程——网络字节序和IP地址详解

一、网络字节序 1、大端模式和小端模式 字节序是指多字节数据的存储顺序,在设计计算机系统的时候,有两种处理内存中数据的方法:大端格式、小端格式。 小端格式(Little-Endian):将低位字节数据存储在低地址; 大端格式(…

解析低代码开发在企业数字化转型中的多重优势

在数字化转型的浪潮中,企业面临着前所未有的机遇和挑战。为了在竞争激烈的市场中脱颖而出,企业需要迅速且高效地构建和更新应用程序,以适应不断变化的业务需求。数字化转型已不再是企业的选择,而是关乎生存和发展的必由之路。在这…

JMeter项目实战

目录 一、流程: 1.接口测试流程: 2.测试数据准备: 3.接口功能测试: 4.自动化测试流程: 5.情景压力测试分析: 6.生成图形化测试报告: 一、流程: 1.接口测试流程: …

SHARE 100M A10风力发电机动态巡检

背景 随着碳中和、碳达峰“3060”目标的提出,“十四五”时期乃至本世纪中叶应对气候变化工作、绿色低碳发展和生态文明建设提出了更高要求。在时代建设的背景下,清洁能源行业蓬勃发展,传统静态巡检模式与高度依赖人力的风机巡检运维手段已经无…

数据分析:宏基因组DESeq2差异分析筛选差异物种

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍原理:计算步骤:结果:加载R包准备画图主题数据链接导入数据Differential abundance (No BP vs 2BP TA)构建`countData`矩阵过滤低丰度物种构建DESeq数据对象DESeq2差异分析画图Di…

Linux进程信号(信号的产生)

目录 什么是信号? 信号的产生 信号产生方式1:键盘 前台进程 后台进程 查看信号 signal系统调用 案例 理解进程记录信号 软件层面 硬件层面 信号产生方式2:指令 信号产生方式3:系统调用 kill系统调用 案例 其他产生信号的函数调用 1.rais…

【ESP】一小时速通入门笔记

【ESP】一小时速通入门笔记 前言: 之前上学时就用过一次esp32, 当时初次使用搭建编译环境费了老大功夫.在我第一篇esp32笔记中也有说明.以至于我好像忘记记录完整的入门笔记了.最近因为工作需要又开始接触esp32才发现,现在已经方便得多了.顺利的话一小时速通. 前排提醒: 本笔记…

22.04Ubuntu---ROS2使用rclcpp编写节点C++

节点需要存在于功能包当中,功能包需要存在于工作空间当中。 所以我们要想创建节点,就要先创建一个工作空间,再创建功能包。 第一步:创建工作空间 mkdir -p chapt2_ws/src/ 第二步:创建example_cpp功能包&#xff0c…

QML项目实战:自定义CheckBox

目录 一.添加模块 import QtQuick.Controls 1.2 import QtQuick.Controls.Styles 1.4 import QtGraphicalEffects 1.15 二.自定义CheckBox 1.CheckBox设置 2.勾选框设置 3.标签部分 4. 状态变化处理 5.文本设置 三.效果 1.当enabled为true 2.当enabled为true 3.当…

【Git】Liunx环境下Git的使用:“克隆,提交,推送“

目录 一、常用参数 二、我们为什么要使用Git? 三、创建远程仓库 第一步:创建对应代码托管平台账号。 第二步:在托管平台创建仓库 第三步:完善仓库内容(选择性使用) 开源和私有 四、克隆远程仓库到本…

《Python网络安全项目实战》项目4 编写网络扫描程序

《Python网络安全项目实战》项目4 编写网络扫描程序 项目4 编写网络扫描程序任务4.1 扫描内网有效IP地址任务描述任务分析任务实施任务拓展 任务4.2 编写端口扫描工具任务描述任务分析任务实施相关知识任务评价任务拓展项目评价 项目4 编写网络扫描程序 许多扫描工具是由Pytho…

软件设计开发规程,制度(word原件)

技术解决方案过程包括: 1、选择最佳解决方案; 2、制定架构设计; 3、制定概要设计; 4、制定详细设计和数据库设计; 5、利用准则进行接口设计; 6、实现设计; 7、进行单元测试; 8、进行…

Spring Boot框架的知识分类技术解析

2 开发技术 2.1 VUE框架 Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架。 Vue 只关注视图层, 采用自底向上增量开发的设计。 Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。 2.2 Mysql数据库 …

Knowledge Graph-Enhanced Large Language Models via Path Selection

研究背景 研究问题:这篇文章要解决的问题是大型语言模型(LLMs)在生成输出时存在的事实不准确性,即所谓的幻觉问题。尽管LLMs在各种实际应用中表现出色,但当遇到超出训练语料库范围的新知识时,它们通常会生…

Spark中的宽窄依赖

一、什么是依赖关系 这里通过一张图来解释: result_rdd是由tuple_rdd使用reduceByKey算子得到的, 而tuple_rdd是由word_rdd使用map算子得到的,word_rdd又是由input_rdd使用flatMap算子得到的。它们之间的关系就称为依赖关系! 二…

实现uniapp-微信小程序 搜索框+上拉加载+下拉刷新

pages.json 中的配置 { "path": "pages/message", "style": { "navigationBarTitleText": "消息", "enablePullDownRefresh": true, "onReachBottomDistance": 50 } }, <template><view class…

在vscode中如何利用git 查看某一个文件的提交记录

在 Visual Studio Code (VSCode) 中&#xff0c;你可以使用内置的 Git 集成来查看某个文件的提交历史。以下是具体步骤&#xff1a; 使用 VSCode 内置 Git 功能 打开项目&#xff1a; 打开你的项目文件夹&#xff0c;确保该项目已经是一个 Git 仓库&#xff08;即项目根目录下…

如何用python求导数

打开python运行环境。 导入微分的模块包&#xff1a;from sympy import *。 定义符号变量&#xff1a;x symbols(x) 定义一个函数&#xff1a;f x**9 diff diff(f,x)求导 最后输入diff&#xff0c;即可显示其变量值了。

Protobuf——基本使用

什么是Protobuf Protobuf是 Google的⼀种语⾔⽆关、平台⽆关、可扩展的序列化结构数据的⽅法&#xff0c;它可⽤于&#xff08;数据&#xff09;通信协议、数据存储等。 Protobuf类比于XML&#xff0c;是一种灵活&#xff0c;高效&#xff0c;自动化机制的结构数据序列化方法&…