【vSphere 7/8】深入浅出 vSphere 证书 Ⅰ—— 初识和了解 vSphere证书
目录
- 摘要
- 1. vSphere 安全证书
- 1.1 vSphere 安全证书的类型和有效期
- 2. 在 vSphere Client 中初识 vSphere 证书
- 2.1 vCenter 8.0.3 的 vSphere Client 界面
- 2.2 vCenter Server 7.0 Update2 到 vCenter Server 8.0 Update 2 的 vSphere Client 界面
- 2.3 vCenter Server 7.0 到 vCenter Server 7.0 Update1 的 vSphere Client 界面
- 3. 为什么证书对 vSphere 环境至关重要
- 4. 管理证书
- 4.1 使用 vSphere Client
- 4.2 使用 vSphere Automation API
- 4.3 使用 vSphere Certificate Manager 命令行工具
- 4.4 使用 CLI 命令执行手动证书替换
- 参考文献
摘要
- 本系列博文会深入浅出的引导读者认识,了解,理解 vSphere 环境中的证书。
- 本篇博文主要引导大家初识 vSphere 证书,描述如何快速查看 vSphere 证书
这里的 vSphere 证书包括 vCenter Server 和 ESXi 的证书。除了 ESXi 证书,其他证书均在 vCenter Server 中。
1. vSphere 安全证书
vSphere 通过使用证书来加密通信,对服务进行身份验证,以及对令牌进行签名来提供安全性。
vSphere 证书的作用:
- 对两个节点(例如 vCenter Server 和 ESXi 主机)之间的通信进行加密。
- 对 vSphere 服务进行身份验证。
- 执行内部操作,如对令牌进行签名。
vSphere 的内部证书颁发机构 VMware Certificate Authority (VMCA) 提供 vCenter Server 和 ESXi 所需的所有证书。每一个 vCenter Server 主机上均安装了 VMCA,其可立即确保解决方案的安全,而不进行任何其他修改。保留此默认配置可为证书管理提供最低操作开销。vSphere 提供了一种证书更新机制,用于在这些证书过期时进行续订。
vSphere 还提供了一种证书替换机制,用于将某些证书替换为用户自己的证书。但是,仅替换在节点之间提供加密的 SSL 证书,以保持较低的证书管理开销。
| 模式 | 描述 | 优势 |
|---|---|---|
| VMCA 默认证书 | VMCA 为 vCenter Server 和 ESXi 主机提供所有证书。 | 最简单和最低开销。VMCA 可以管理 vCenter Server 和 ESXi 主机的证书生命周期。 |
| 使用外部 SSL 证书的 VMCA 默认证书(混合模式) | 替换 vCenter Server 的 SSL 证书,并允许 VMCA 管理解决方案用户和ESXi 主机的证书。(可选)对于安全性很重要的部署,还可以替换 ESXi主机的 SSL 证书。 | 简单且安全。VMCA 会管理内部证书,但允许用户使用企业批准的 SSL 证书,并让浏览器信任 |
VMware 官方建议,既不要替换解决方案用户证书或 STS 证书,也不要使用辅助 CA 取代 VMCA。如果选择任意一种选项,都可能会遇到很大复杂性和对安全产生负面影响的可能性,以及不必要地提高操作风险。有关管理 vSphere 环境内的证书的更多信息,请参见标题为 New Product Walkthrough - Hybrid vSphere SSL Certificate Replacement 的博客。
1.1 vSphere 安全证书的类型和有效期
在 vSphere ( vCenter 和 ESXi )环境中主要的证书有5个类型。
| Certificate Type / 证书类型 | Valid 有效期 | 刷新后的有效期 |
|---|---|---|
| Root certificate / 根证书 | 10 年 | 10 年 |
| VMCA Root certificate / VMCA根证书 | 10 年 | 10 年 |
| Machine SSL certificate / 计算机 SSL 证书 | 2 年 | 2 年 |
| Solution user certificate / 解决方案用户证书 | 10 年 | 2 年 |
| ESXi certificate / ESXi 证书 | 5年 | 5年 |
其中
-
Root certificate(根证书),它是所有 VMware vSphere 安全证书的 CA,该证书无法替换。
-
VMCA Root certificate(VMCA根证书),可用于中间CA,用户可以替换该根证书(建议不替换),
它可以为 Machine SSL certificate(计算机 SSL 证书)和 Solution user certificate(解决方案用户证书签名),即 Machine SSL certificate 和 Solution user certificate是其子证书。
-
Machine SSL certificate(计算机 SSL 证书) 是经过 VMCA Root certificate 证书签名的证书。如果使用企业CA直接自定该证书也是可以的。即绕开 VMCA 根证书。
-
Solution user certificate(解决方案用户证书签名)也是经过 VMCA Root certificate 证书签名的证书。如果使用企业 CA 直接自定该证书也是可以的。即绕开 VMCA 根证书。
-
ESXi certificate ( ESXi 证书),刚创建且未加入 vCenter 的 ESXi 在安装时会自签发证书。在加入 vCenter 时,vCenter 的 VMCA 会自动对 ESXi 签发并替换 ESXi 证书。
2. 在 vSphere Client 中初识 vSphere 证书
绝大多数用户刚开始都是在 vSphere Client UI 中接触到 vSphere 证书。那么 vSphere 证书在 vSphere Client UI 中哪个位置?
我们通过 administrator@vsphere.local 账户登录 vSphere Client UI 后,转到 菜单 > Administration > Certificates > Certificate Management
在这个界面中我们可以观察到上面小节中提到的部分证书。
根据 vCenter Server 版本的不同,该界面会有一些差异,具体差异如下:
2.1 vCenter 8.0.3 的 vSphere Client 界面
最新的 vCenter 8.0.3 将 Machine SSL,STS Signing 和 VMCA Root,Trusted Root 证书分别分为一个标签页。

2.2 vCenter Server 7.0 Update2 到 vCenter Server 8.0 Update 2 的 vSphere Client 界面
Machine SSL,STS Signing 和 VMCA Root,Trusted Root 证书在同一页面显示。

2.3 vCenter Server 7.0 到 vCenter Server 7.0 Update1 的 vSphere Client 界面
Machine SSL,VMCA Root 和 Trusted Root 证书在同一页面显示,不显示 STS Signing 证书。

在 Certificate Management 界面我们可以对部分证书进行管理,包括
- 查看证书具体信息(VIEW DETAILS)
- 更新证书(Renew)
- 导入和替换自定义证书(Import and Replace Certificate)
- 生成证书签名请求(Generate Certificate Signing Request (CSR))
在 vSphere Client UI 上用户是看不到 Solution user certificate / 解决方案用户证书,因此对于该类型证书的管理,我们需要借助 VCSA 的 CLI 工具,该部分内容本系列博客后续博文会详细说明。
3. 为什么证书对 vSphere 环境至关重要
在 vSphere 环境中证书的至关重要,它直接影响 vCenter 的服务是否能正常启动和运行,如果证书过期,那么 vCenter 的服务会相应进入停止(stopped)状态,从而导致 vSphere Client UI 无法访问,进而导致用户不能正常管理 vSphere 虚拟化环境。
后续博文会对证书失效后,出现的报错和如何更新证书进行详细说明。
4. 管理证书
用户可以使用不同界面管理证书。包括通过 vSphere Client 管理证书,也可以使用 API、脚本或 CLI 管理证书。
vSphere 提供4种方式管理证书:
- 使用 vSphere Client
- 使用 vSphere Automation API
- vSphere Certificate Manager 命令行工具
- 使用 CLI 命令执行手动证书替换:使用 dir-cli、certool 和 vecs-cli 执行所有证书管理任务。关于 STS 证书管理,需要使用 sso-config 实用程序。
4.1 使用 vSphere Client
一般的,我们较熟悉的方式是 vSphere Client UI管理证书,包括的证书的查看,更新和自定义证书替换。
实际使用起来,建议使用 vSphere Client 查看 STS 证书信息,关于证书更新和使用自定义证书替换默认 vSphere 证书,建议通过 CLI 的形式来操作。
使用 UI 操作可能会造成报错或更新失败。
4.2 使用 vSphere Automation API
vSphere Automation API 一般用于 vSphere 自动化工作中,关于这个知识点我们有另外的专栏进行说明: vSphere Python 自动化
VMware 官方也给出了《VMware vSphere Automation SDK 编程指南》。这部分涉及到编程,可选择的编程语言有 Java,Python等。
4.3 使用 vSphere Certificate Manager 命令行工具
vSphere Certificate Manager 工具是处理 vSphere 证书问题的利器,基本上主要的证书更新,它都能可以实现,除了 STS 证书。
该工具的执行文件位于:/usr/lib/vmware-vmca/bin/certificate-manager
certificate-manager 给出了8个选项,可以单独更新 Machine SSL certificate,也可以单独更新 Solution user certificates 亦可以 替换所有证书。此外它还支持使用企业 CA 签名的证书来替换原有证书。
4.4 使用 CLI 命令执行手动证书替换
除了上述三种半自动/自动化工具外,我们也可以通过 vSphere 提供的三个命令行工具( dir-cli、certool 和 vecs-cli ),手动的管理每一个证书。前面提到在 vSphere Client UI 上看不到 Solution user certificate / 解决方案用户证书,我们需要使用 dir-cli 和 vecs-cli 工具进行查看其详细信息和有效期。
几乎所有证书管理任务均能使用 dir-cli、certool 和 vecs-cli 三个 CLI 工具进行操作。
关于 STS 证书,首先我们需要了解 vCenter Server Security Token Service (STS) ,它是一项发布、验证和续订安全令牌的 Web 服务。其证书并不保存在 VECS 中,而是在 STS 服务中。同时也可以使用 certool 工具和 sso-config 实用程序 对 STS 证书进行更新。
参考文献
- vSphere 7 :vSphere Security Certificates
- vSphere 8 :vSphere Security Certificates
相关文章:
【vSphere 7/8】深入浅出 vSphere 证书 Ⅰ—— 初识和了解 vSphere证书
目录 摘要1. vSphere 安全证书1.1 vSphere 安全证书的类型和有效期 2. 在 vSphere Client 中初识 vSphere 证书2.1 vCenter 8.0.3 的 vSphere Client 界面2.2 vCenter Server 7.0 Update2 到 vCenter Server 8.0 Update 2 的 vSphere Client 界面2.3 vCenter Server 7.0 到 vCe…...
【云备份】服务端模块-热点管理
文章目录 0.回顾extern1.介绍2.实现思想3.代码测试代码 热点管理总结 0.回顾extern extern cloudBackup::DataManager *_dataManager extern 关键字用于声明一个全局变量或对象,而不定义它。这意味着 _dataManager 是一个指向 cloudBackup::DataManager 类型的指针…...
call apply bind特性及手动实现
call // 原生的call var foo { value: 1 };function bar(...args) {console.log("this", this.value, args); }bar.call(foo)// call 改变了bar的this指向 // bar函数执行了 // 等价于 // var foo { // name: "tengzhu", // sex: "man", …...
pygame开发课程系列(5): 游戏逻辑
第五章 游戏逻辑 在本章中,我们将探讨游戏开发中的核心逻辑,包括碰撞检测、分数系统和游戏状态管理。这些元素不仅是游戏功能的关键,还能显著提升游戏的趣味性和挑战性。 5.1 碰撞检测 碰撞检测是游戏开发中的一个重要方面,它用…...
嵌入式系统实时任务调度算法优化与实现
嵌入式系统实时任务调度算法优化与实现 目录 嵌入式系统实时任务调度算法优化与实现 引言 1.1 嵌入式系统的重要性 1.2 实时任务调度的重要性 实时任务的定义与分类 2.1 实时任务的定义 2.2 实时任务的分类 2.3 实时任务的其他分类方法 硬实时与软实时系统 3.1 硬实…...
Java:枚举转换
在Java中,你可以使用Enum.valueOf()方法将字符串转换为枚举常量。但是,如果你想要将枚举转换为其他类型,你需要自定义转换方法。以下是一个简单的例子,演示如何将枚举转换为整数: public enum Color {RED(1), GREEN(2…...
Vue、react父子组件生命周期
Vue 的父子组件生命周期 以下分为三部分,加载渲染阶段——更新阶段——销毁阶段,我们来一一介绍: 1、加载渲染阶段 在加载渲染阶段,一定得等子组件挂载完毕后,父组件才能挂载完毕,所以父组件的 mounted 在…...
HTML 基础要素解析
目录 HTML 初步认识 纯文本文件介绍 纯文本文件与其它文件的区别 Html介绍 HTML 骨架 文档类型(!DOCTYPE)声明 介绍 常用的 DOCTYPE 声明 meta标签 字符集 关键字和页面描述 HTML 初步认识 纯文本文件介绍 纯文本文件指的是仅包含文本内容&am…...
开源的向量数据库Milvus
Milvus是一款开源的向量数据库,专为处理向量搜索任务而设计,尤其擅长处理大规模向量数据的相似度检索。 官网地址:https://milvus.io/ 以下是关于Milvus的详细介绍: 一、基本概念 向量数据库:Milvus是一款云原生向量…...
设计模式-工厂方法
“对象创建”模式 通过“对象创建”模式绕开new,来避免对象创建(new)过程中所导致的紧耦合(依赖具体类),从而支持对象创建的稳定。它是接口抽象之后的第一步工作。典型模式 Factory MethodAbstract Factory…...
Flask SQLALchemy 的使用
Flask SQLALchemy 的使用 安装 Flask-SQLAlchemy配置 Flask-SQLAlchemy定义模型创建数据库和表插入和查询数据更新和删除数据迁移数据库总结Flask-SQLAlchemy 是一个 Flask 扩展,它简化了 Flask 应用中 SQLAlchemy 的使用。SQLAlchemy 是一个强大的 SQL 工具包和对象关系映射(…...
Metasploit漏洞利用系列(一):MSF完美升级及目录结构深度解读
在信息安全领域,MetasploitFramework(MSF)是一个无处不在的工具,它集合了大量的渗透测试和漏洞利用模块,帮助安全专家识别和利用系统中的弱点。本文将深入探讨如何对Metasploit进行完美升级,以及对其核心目…...
C/C++|经典代码题(动态资源的双重释放与「按值传递、按引用传递、智能指针的使用」)
以下代码中你能看出其存在什么问题?如何修复,能给出几种方法?分别在什么场景下用哪种方法。 #include <iostream>class Buffer {public:Buffer() { std::cout << "Buffer created" << std::endl; }~Buffer() { s…...
西北乱跑娃 -- linux使用笔记
1.后台运行每天一个日志文件 nohup python3.8 manage.py >> $(date %Y-%m-%d).log 2>&1 &2.目录操作: ls:列出目录内容。cd:改变当前工作目录。pwd:显示当前工作目录的路径。mkdir:创建新目录。rmd…...
Kubectl基础命令使用
一.Kubectl 基础命令 格式: kubectl [command] [TYPE] [NAME] [FLAGS] kubectl 是 Kubernetes 的命令行工具,用于管理 Kubernetes 集群。以下是一些常用的 kubectl 命令及其选项: 常用命令 获取资源 列出所有资源类型(Pods、De…...
推荐编译器插件:Fitten Code 更快更好的AI助手
✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…...
ArcGIS Pro基础:状态栏显示栏的比例尺设置和经纬度位置
上图所示,界面下方最左侧是显示的比例尺,可以进行选择设置,也可以进行自定义设置 上图所示,可以手动录入比例尺,同时也可以对比例尺设置别名,比如【实验1】作为特定比例尺的标记 如上图所示,可以…...
微前端架构入门
什么是微前端? 定义 微前端是一种多个团队通过独立发布功能的方式来共同构建现代化 web 应用的技术手段及方法策略。 微前端是一种架构风格,它允许将一个复杂的大前端应用拆分成多个可以独立开发、部署的小型前端应用。这些小型前端应用通常被称为“子应用”或者“微前端应用…...
[LitCTF 2023]导弹迷踪
页面源码底部有多个js,查看浏览 查看ksrc/game.js发现flag...
win10安装wsl2(ubuntu20.04)并安装 TensorRT-8.6.1.6、cuda_11.6、cudnn
参考博客: 1. CUDA】如何在 windows 上安装 Ollama 3 open webui (docker WSL 2 ubuntu nvidia-container):https://blog.csdn.net/smileyan9/article/details/140391667 2. 在 Windows 10 上 安装 W…...
AI助手开发实战:从资源索引到生产级系统搭建指南
1. 项目概述:一个为AI助手开发者准备的“藏宝图” 如果你正在开发一个AI助手应用,或者正打算将大语言模型的能力集成到你的产品里,那你大概率会遇到一个经典难题:面对市面上眼花缭乱的模型、API和工具,我到底该怎么选&…...
终极免费方案:3步轻松解锁QQ音乐加密文件,让音乐随处可听
终极免费方案:3步轻松解锁QQ音乐加密文件,让音乐随处可听 【免费下载链接】qmcflac2mp3 直接将qmcflac文件转换成mp3文件,突破QQ音乐的格式限制 项目地址: https://gitcode.com/gh_mirrors/qm/qmcflac2mp3 你是否曾遇到过这样的情况&a…...
如何免费解锁WeMod专业版:2026年终极完整指南
如何免费解锁WeMod专业版:2026年终极完整指南 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/gh_mirrors/we/Wand-Enhancer 还在为WeMod专业版的高昂费用而烦恼吗…...
终极Windows Defender移除指南:13项核心服务的完整卸载方案
终极Windows Defender移除指南:13项核心服务的完整卸载方案 【免费下载链接】windows-defender-remover A tool which is uses to remove Windows Defender in Windows 8.x, Windows 10 (every version) and Windows 11. 项目地址: https://gitcode.com/gh_mirror…...
婚礼技能库:用开源协作与项目管理思维打造个性化婚礼
1. 项目概述:婚礼技能库的诞生与价值婚礼,对大多数人来说,是人生中为数不多的、需要同时扮演项目经理、创意总监、财务主管和情感联络员的高压事件。筹备过程琐碎繁杂,从场地布置、流程设计,到妆发造型、摄影摄像&…...
CircuitPython开发进阶:从库文档解读到内存优化与异步编程实战
1. 从“能用”到“精通”:为什么你需要深入理解CircuitPython库文档刚接触CircuitPython时,我们往往是从复制粘贴示例代码开始的。这没什么问题,快速让一个LED闪烁起来,或者让传感器读出数据,那种即时反馈的成就感是驱…...
基于RAG的智能知识库问答系统:从原理到部署实战
1. 项目概述:当AI大模型遇见知识库,一个开源的智能问答解决方案 最近在折腾一个很有意思的开源项目,叫 zhimaAi/chatwiki 。光看名字,你大概能猜到它的核心: chat 代表对话, wiki 代表知识库。没错&a…...
ElevenLabs葡语语音私密训练技巧(仅限白名单客户使用的SSML扩展语法+方言权重微调指令集)
更多请点击: https://intelliparadigm.com 第一章:ElevenLabs葡语语音私密训练的核心价值与白名单准入机制 ElevenLabs 的葡语语音私密训练(Private Voice Fine-tuning for Portuguese)专为高合规性场景设计,面向金融…...
蜘蛛池技术解析:网站收录提速的关键工具与运营策略
在搜索引擎优化领域,蜘蛛池是助力网站收录提速的重要辅助工具,尤其适配新站、低权重站或海量内容站,能有效破解收录慢、收录少、深层页面难抓取等痛点。本文从技术原理、核心价值、搭建要点及合规运营策略四方面,全面解析蜘蛛池的…...
会话管理封装实践:构建安全可扩展的分布式会话系统
1. 项目概述:一个被低估的会话管理利器如果你是一名开发者,尤其是经常需要处理用户登录、权限校验、状态保持这类“脏活累活”的后端或全栈开发者,那么你一定对“会话管理”这四个字又爱又恨。爱的是,它是构建安全、有状态应用的基…...
