Skip to content

Commit

Permalink
update site at 20240820-185806, machine LiaoSirui-MacMini.local
Browse files Browse the repository at this point in the history
  • Loading branch information
LiaoSirui committed Aug 20, 2024
1 parent 04b4ddc commit b583498
Show file tree
Hide file tree
Showing 7 changed files with 122 additions and 2 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1 +1,39 @@
Vault 是 hashicorp 推出的 secrets 管理、加密即服务与权限管理工具
## 什么是 Vault

Vault 是 hashicorp 推出的 secrets 管理、加密即服务与权限管理工具

Vault 是一个基于身份的秘密和加密管理系统。秘密是您想要严格控制访问的任何内容,例如 API 加密密钥、密码和证书。 Vault 提供由身份验证和授权方法控制的加密服务。使用 Vault 的 UI、CLI 或 HTTP API,可以安全地存储和管理、严格控制(限制)和审核对机密和其他敏感数据的访问

## 为什么需要 Vault

- 执行密码轮换策略很痛苦
- 掌握机密的员工离职后可能泄密或是恶意报复
- 开发者不小心把机密信息随着代码上传到公网的源码仓库造成泄密
- 管理多个系统的机密非常麻烦
- 需要将机密信息安全地加密后存储,但又不想将密钥暴露给应用程序,以防止应用程序被入侵后连带密钥一起泄漏

## Vault 架构图

Vault 只暴漏了存储后端(Storage Backend) 和 API,其他部分都被保护起来了。Vault 并不信任后端存储,存放的都是密文

![img](./.assets/Vault简介/1.png)

## 加密

![img](./.assets/Vault简介/2-20240820153737525.png)

- Vault 保存在 Backend 中的数据都是加密的
- Vault 密钥称为 Master Key 主密钥,Vault 默认使用 Shamir 算法,把主密钥切分成 M 份,管理员必须至少提供其中的 N 份才能还原出主密钥(这里的 M 和 N 都是可配置的,M>=N)理想状态下,我们必须把这 M 份密钥分配给公司内 M 个不同的人,只有在获取其中 N 个人的授权后,Vault 才可以成功解密主密钥。



## 参考文档

- <https://shuhari.dev/blog/2018/02/vault-secret-engine>

- <https://infinilabs.cn/blog/2023/vault-quickstart/>

- <https://blog.csdn.net/zhengzaifeidelushang/article/details/131291390>

- <https://just4coding.com/2020/03/13/vault-introduction/>
- <https://lonegunmanb.github.io/essential-vault/9.%E5%AE%9E%E9%99%85%E6%A1%88%E4%BE%8B/4.ssh_otp.html>
3 changes: 3 additions & 0 deletions 计算机基础理论/密码学与安全技术/密码学.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
参考资料

- <https://thiscute.world/posts/experience-of-vault/>
51 changes: 50 additions & 1 deletion 运维研发/CMDB/CMDB.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,48 @@ CMDB 提供手动录入功能并可批量录入,将资源信息进行标准化

- 拉通监控、流程、智能分析平台数据,实现运维数据一体化消费场景,提高运维效率。

可参考项目:
## 基础概念

CMDB(Configuration Management Database)是一种用于管理和维护信息技术(IT)基础设施配置项(CI,Configuration Item)的数据库。CMDB 旨在追踪和记录与 IT 环境相关的配置项及其关系,为 IT 管理、配置管理和服务管理提供支持

- 模型

模型是对某种实体或概念的抽象,它描述了实体的结构、属性和关系。在配置管理中,模型可以是一个高级别的概念,用于定义配置项的通用特征和属性。

- CI 类型

配置项可以根据其性质和用途分为不同的类型,如硬件配置项(服务器、路由器)、软件配置项(应用程序、操作系统)、文档配置项等。每个 CI 类型可能具有特定的属性和关系。

- 配置项(CI)

配置项是 CMDB 中的基本单位,表示 IT 环境中的任何可管理的元素,如硬件、软件、文档、网络设备等。每个配置项都有唯一的标识符,并且可以包含与其相关的属性和关系。

如所有的物理机都属于同一类型,但每个物理机实例都是一个具体的 CI。CI Type 的定义可能包括一组通用属性,而具体的 CI 则包含每个实例的具体属性。

- 关系

关系描述了配置项之间的连接或依赖关系。

如服务器与数据库之间可以有一个安装关系,表示它们之间的依赖关系。关系有助于了解 IT 环境中不同配置项之间的交互和影响。

- 自动发现

自动发现是指使用工具和技术来自动收集和更新配置项信息,而无需手动输入。自动发现可以帮助确保 CMDB 中的信息始终保持最新和准确。

- ITIL

CMDB 是 ITIL(IT Infrastructure Library) 框架中的一个关键组件,提供了支持 IT 服务管理(ITSM)和配置管理的工具和流程。

## 设计

要实现一个尽可能通用、灵活、可扩展的运维资源数据的配置和管理系统,系统必须要满足:

- 运维人员能根据企业的运维场景和需求,自己去构建存储的数据模型,以及模型之间的关系
- 提供丰富的 API,尤其是在数据和关系检索要做到通用,便于二次开发
- 用户可以方便的订阅自己关心的数据,有丰富的图表展示
- 数据的自动发现和细粒度的权限控制

## 可参考项目

- NetBox

Expand All @@ -41,3 +82,11 @@ CMDB 提供手动录入功能并可批量录入,将资源信息进行标准化
<https://github.com/WeBankPartners/we-cmdb>

WeCMDB(Configuration Management Database 配置管理数据库),是源自微众银行运维管理实践的的一套配置管理数据库系统。CMDB,作为运维工具的核心,提供了全体系IT信息唯一数据源,是IT运维自动化、智能化的基础和前提条件。依赖可靠的CMDB,IT信息从物理层(数据中心、机架机位、服务器、网络信息等), 到逻辑层(IP、系统架构信息),到应用层(业务应用系统信息)被完整的记录并管理起来。

- 维易 CMDB

<https://veops.cn/docs/docs/cmdb/cmdb_design>

## 其他

Nacos 实现异地 CMDB:<https://nacos.io/en-us/blog/cmdb.html>
23 changes: 23 additions & 0 deletions 运维研发/CMDB/CMDB建设/自动发现.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
## 维护 CMDB 数据

维护 CMDB 数据的常用方法无外乎 3 种:

- 自动发现

这是最常用的采集数据的方法,比如服务器、网络设备、应用、软件等数据都可以通过自动发现的方式录入到CMDB里,以保证数据的准备性和及时性。

- 流程

流程是为了规范运维的操作与变更,对每个运维资源的生命周期进行管理,所以ITSM本身和CMDB是息息相关,ITSM的流程输出很多都会直接反馈到CMDB里,以保证数据的准确。

- 人工

一些数据比如负责人、位置信息需要人工去完善,也可以通过计算属性的方式自动填充。当然为避免人工遗漏或出错,要尽可能使用前面2种方法。

## 自动发现

自动发现的建设一般分为 3 步: 创建自动发现规则、模型关联自动发现规则、执行自动发现

## 参考资料

- <https://mp.weixin.qq.com/s/rQaf4AES7YJsyNQG_MKOLg>
7 changes: 7 additions & 0 deletions 运维研发/CMDB/维易OneOps/维易OneOps.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
## 部署

安装参考:<https://veops.cn/docs/docs/cmdb/cmdb_install#%E7%BA%AF%E5%87%80%E6%A8%A1%E5%BC%8F--%E5%AE%89%E8%A3%85>

## 使用

模板市场:<https://veops.cn/template>

0 comments on commit b583498

Please sign in to comment.