【vSphere 7/8】深入浅出 vSphere 证书 Ⅲ—— vSphere 证书的更新和替换概述

2024-08-31 11:20

本文主要是介绍【vSphere 7/8】深入浅出 vSphere 证书 Ⅲ—— vSphere 证书的更新和替换概述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 摘要
  • 1. vSphere Certificate Architecture
  • 2. 证书更新和替换概述
    • 2.1更新 VMCA 签名的证书
      • (1)使用 vSphere Client UI
      • (2)使用 vSphere Certificate Manager 命令行工具(自动)
      • (3)使用 dir-cli、certool 和 vecs-cli 命令行工具(手动)
      • (4)使用 vSphere Automation API(自动化脚本)
    • 2.2 使 VMCA 成为中间 CA
      • (1)使用 vSphere Certificate Manager 命令行工具(自动)
      • (2)使用 dir-cli、certool 和 vecs-cli 命令行工具(手动)
    • 2.3 使用自定义证书替换 VMCA 签名证书
      • (1)使用 vSphere Client UI
      • (2)使用 vSphere Certificate Manager 命令行工具(自动)
      • (3)使用 dir-cli、certool 和 vecs-cli 命令行工具(手动)
    • 2.4 混合部署
    • 2.5 ESXi 证书替换
  • 参考文献
  • 关联博文

摘要

本系列博文会深入浅出的引导读者认识,了解,理解 vSphere 环境中的证书。
本篇博文主要介绍了 vSphere 证书(替换)关系示意图

1. vSphere Certificate Architecture

一个 vSphere 虚拟化环境中一般包括一台或以上的 vCenter Server,外加一台或以上的 ESXi 主机。那么这样一个虚拟化环境中,其证书架构图如下所示:
在这里插入图片描述VMCA CA 作为 vSphere 中的根证书,为各种服务和组件签发证书。vSphere 环境中主要的证书有 ESXi 证书,Machine SSL 证书,Solution User 证书,SMS 证书,data-encipherment 证书以及 STS Signing 证书。如上图所示。其中

  • ESXi 证书存储在 ESXi 主机中,
  • Machine SSL 证书,Solution User 证书,SMS 证书,data-encipherment 证书存储在 VECS 中,
  • STS Signing 证书存储在 SSO 中。

2. 证书更新和替换概述

vSphere 支持用户根据公司安全策略和系统需求来使用企业签名 CA 替换 vSphere 默认证书。用户可以根据喜好,自行选择替换证书的方式,包括

  • 通过 vSphere Client UI (Certificate Management)
  • 通过 vSphere Certificate Manager 实用程序(certificate-manager)
  • 通过安装时附带的 CLI 手动执行证书替换(dir-cli、certool 和 vecs-cli )

2.1更新 VMCA 签名的证书

如果 VMCA 证书过期或由于其他原因要对其进行替换,可以使用证书管理 CLI 执行此过程。默认情况下,VMCA 根证书有效期为十年,且 VMCA 签名的所有证书都会在根证书过期时过期,即有效期最长为十年。

由 VMCA 签发的证书有两大类,分别是

  • Machine SSL Certificate 计算机 SSL 证书
  • Solution User Certificate解决方案用户证书

由 VMCA 签名的证书存储在 VECS 中

在这里插入图片描述

(1)使用 vSphere Client UI

在 UI 上只能对 Machine SSL 证书进行更新。

在这里插入图片描述

关于 VMCA 根证书,包括 Trusted Root 证书和解决方案用户证书,需要使用 CLI 工具(certificate-manager 或 dir-cli、certool、vecs-cli)来进行更新和替换。

(2)使用 vSphere Certificate Manager 命令行工具(自动)

更新时可以使用以下 选项:

  • Replace Machine SSL Certificate with VMCA Certificate (将计算机 SSL 证书替换为 VMCA 证书)
  • Replace Solution User Certificate with VMCA Certificate(将解决方案用户证书替换为 VMCA 证书)
  • Reset all Certificates(重置所有证书,包括 Machine SSL 和 Solution User 证书)

(3)使用 dir-cli、certool 和 vecs-cli 命令行工具(手动)

  • 生成新的 VMCA 签名根证书(请关注后续章节)
  • 生成新的计算机 SSL 证书(请关注后续章节)
  • 生成新的解决方案用户证书(请关注后续章节)

(4)使用 vSphere Automation API(自动化脚本)

以 Python 为例,Python API 提供了 vcenter.certificate_management.vcenter.Tls.renew() 方法,用于刷新 Machine SSL 证书。具体步骤请参考博客:【vSphere | Python】vSphere Automation SDK for Python Ⅶ—— Certificate Management APIs(上)

[!NOTE]

这里说明的 VMCA 签名的证书可以分为两种情况:

  • 第一种是 vSphere 默认证书。
  • 第二种是 VMCA 已经是企业自签证书,由 VMCA 继续签名 Machine SSL 和 Solution User 两大类证书,此时这两大类证书也是企业自签名证书。详见1.2 小节

2.2 使 VMCA 成为中间 CA

vSphere 支持将 VMCA 根证书替换为由企业 CA 或第三方 CA 签名的证书。

每次置备 VMCA 证书时都会签署自定义根证书,从而使 VMCA 成为中间 CA。

由第三方或企业 CA 签名的证书使用 VMCA 作为中间 CA

在这里插入图片描述

(1)使用 vSphere Certificate Manager 命令行工具(自动)

更新时可以使用以下 选项:

  • 将 VMCA 根证书替换为自定义签名证书并替换所有证书。
  • Replace Machine SSL Certificate with VMCA Certificate (将计算机 SSL 证书替换为 VMCA 证书)多节点增强型链接模式部署。
  • Replace Solution User Certificate with VMCA Certificate(将解决方案用户证书替换为 VMCA 证书)多节点增强型链接模式部署。

(2)使用 dir-cli、certool 和 vecs-cli 命令行工具(手动)

  • 替换根证书(中间 CA)(请关注后续章节)
  • 替换计算机 SSL 证书(中间 CA)(请关注后续章节)
  • 替换解决方案用户证书(中间 CA)(请关注后续章节)

2.3 使用自定义证书替换 VMCA 签名证书

vSphere 支持将现有的 VMCA 签名证书替换为自定义证书。如果使用外部CA直签证书替换,用户必须负责置备和监控所有证书。

外部证书直接存储在 VECS 中

在这里插入图片描述

(1)使用 vSphere Client UI

在 UI 上只能对 Machine SSL 证书进行替换成自定义证书。

在这里插入图片描述

(2)使用 vSphere Certificate Manager 命令行工具(自动)

更新时可以使用以下 选项:

  • Replace Machine SSL Certificate with Custom Certificate(将计算机 SSL 证书替换为自定义证书)
  • Replace Solution User Certificates with Custom Certificates(将解决方案用户证书替换为自定义证书)

(3)使用 dir-cli、certool 和 vecs-cli 命令行工具(手动)

  • 自定义根证书
  • 自定义计算机 SSL 证书

2.4 混合部署

vSphere 支持让 VMCA 提供一些证书,同时对基础架构的其他部分使用自定义证书。

例如,由于解决方案用户证书仅用于验证 vCenter Single Sign-On 的身份,因此可以考虑让 VMCA 提供这些证书。使用自定义证书替换计算机 SSL 证书,以确保所有 SSL 流量的安全。

公司策略通常不允许使用中间 CA。在这些情况下,混合部署是一种有效的解决方案。它会最大程度地减少要替换的证书数量并确保所有流量的安全。混合部署只保留内部流量,即解决方案用户流量,以便使用默认的 VMCA 签名证书。

在这里插入图片描述

2.5 ESXi 证书替换

ESXi 证书替换的情况分为两种:

  • 被 vCenter Server 纳管的 ESXi 主机
  • 不被 vCenter Server 纳管的 ESXi 主机

对于被 vCenter Server 纳管的 ESXi主机,用户可以从 vSphere Client 更改证书置备行为。

选项描述
VMware Certificate Authority(默认值)默认情况下,VMware Certificate Authority (VMCA) 被用作 ESXi 主机证书的证书颁发机构 (CA) 。默认情况下,VMCA 为根 CA,但可将其设置为其他 CA 的中间 CA。在 vmca 模式下,您可以从 vSphere Client 中续订和刷新证书。如果 VMCA 是辅助证书,也将使用 VMCA。
自定义证书颁发机构模式如果希望仅使用第三方或企业 CA 签名的自定义证书,则使用此模式。在自定义模式下,您必须自行管理证书。从 vSphere 8.0 Update 3 开始,用户可以从 vSphere Client 中管理自定义证书。
**注:**除非将证书模式更改为“自定义证书颁发机构”( custom),否则在 vSphere Client 中选择 续订等情况下,VMCA 可能会替换自定义证书。
指纹模式vSphere 5.5 使用指纹模式,且此模式在 vSphere 6.x 中仍可用作后备选项。在此模式下,vCenter Server 会检查证书格式是否正确,但不会检查证书是否有效。甚至会接受已过期的证书。
除非使用其他两种模式之一时遇到无法解决的问题,否则不要使用此模式。某些 vCenter Server 6.x 及更高版本服务在指纹模式下可能无法正常运行。

对于不被 vCenter Server 纳管的 ESXi 主机,用户需要借助 ESXi 命令行工具来刷新证书。

参考文献

  • vSphere 7 :Certificate Replacement Overview
  • vSphere 8 :Replacing vSphere Certificates

关联博文

关于深入浅出 vSphere 证书,请查阅下面的博文:
1:初识和了解 vSphere证书
2:了解 vSphere 证书的类型,作用以及保存位置
3:vSphere 证书的更新和替换概述

这篇关于【vSphere 7/8】深入浅出 vSphere 证书 Ⅲ—— vSphere 证书的更新和替换概述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1123757

相关文章

Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题

《Python爬虫HTTPS使用requests,httpx,aiohttp实战中的证书异步等问题》在爬虫工程里,“HTTPS”是绕不开的话题,HTTPS为传输加密提供保护,同时也给爬虫带来证书校验、... 目录一、核心问题与优先级检查(先问三件事)二、基础示例:requests 与证书处理三、高并发选型:

深入浅出Java中的Happens-Before核心规则

《深入浅出Java中的Happens-Before核心规则》本文解析Java内存模型中的Happens-Before原则,解释其定义、核心规则及实际应用,帮助理解多线程可见性与有序性问题,掌握并发编程... 目录前言一、Happens-Before是什么?为什么需要它?1.1 从一个问题说起1.2 Haht

Python进行word模板内容替换的实现示例

《Python进行word模板内容替换的实现示例》本文介绍了使用Python自动化处理Word模板文档的常用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友... 目录技术背景与需求场景核心工具库介绍1.获取你的word模板内容2.正常文本内容的替换3.表格内容的

MySQL批量替换数据库字符集的实用方法(附详细代码)

《MySQL批量替换数据库字符集的实用方法(附详细代码)》当需要修改数据库编码和字符集时,通常需要对其下属的所有表及表中所有字段进行修改,下面:本文主要介绍MySQL批量替换数据库字符集的实用方法... 目录前言为什么要批量修改字符集?整体脚本脚本逻辑解析1. 设置目标参数2. 生成修改表默认字符集的语句3

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

Python正则表达式匹配和替换的操作指南

《Python正则表达式匹配和替换的操作指南》正则表达式是处理文本的强大工具,Python通过re模块提供了完整的正则表达式功能,本文将通过代码示例详细介绍Python中的正则匹配和替换操作,需要的朋... 目录基础语法导入re模块基本元字符常用匹配方法1. re.match() - 从字符串开头匹配2.

SpringBoot全局域名替换的实现

《SpringBoot全局域名替换的实现》本文主要介绍了SpringBoot全局域名替换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录 项目结构⚙️ 配置文件application.yml️ 配置类AppProperties.Ja

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

C#高效实现Word文档内容查找与替换的6种方法

《C#高效实现Word文档内容查找与替换的6种方法》在日常文档处理工作中,尤其是面对大型Word文档时,手动查找、替换文本往往既耗时又容易出错,本文整理了C#查找与替换Word内容的6种方法,大家可以... 目录环境准备方法一:查找文本并替换为新文本方法二:使用正则表达式查找并替换文本方法三:将文本替换为图

Python批量替换多个Word文档的多个关键字的方法

《Python批量替换多个Word文档的多个关键字的方法》有时,我们手头上有多个Excel或者Word文件,但是领导突然要求对某几个术语进行批量的修改,你是不是有要崩溃的感觉,所以本文给大家介绍了Py... 目录工具准备先梳理一下思路神奇代码来啦!代码详解激动人心的测试结语嘿,各位小伙伴们,大家好!有没有想