[转帖]解决vCenter6.x由于证书过期问题无法登录
https://www.dinghui.org/vcenter-sts-certificate.html#:~:text=%E8%BF%99%E6%97%B6%E5%80%99%EF%BC%8C%E5%8F%AF%E8%83%BD%E5%B0%B1%E6%98%AF%E9%81%87%E5%88%B0%E4%BA%86%E8%AF%81%E4%B9%A6%E5%B7%B2%E8%BF%87%E6%9C%89%E6%95%88%E6%9C%9F%E7%9A%84%E9%97%AE%E9%A2%98%E3%80%82%20vCenter%20%E7%9A%84%E8%AF%81%E4%B9%A6%E5%9C%A8%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2%E6%97%B6%EF%BC%8C%E2%BC%80%E8%88%AC%E6%98%AF%E9%BB%98%E8%AE%A410,%E5%B9%B4%E7%9A%84%EF%BC%8CvCenter%206.5%20%E4%BB%A5%E5%90%8E%E7%9A%84%E9%83%A8%E5%88%86%E7%89%88%E6%9C%AC%E5%AD%98%E5%9C%A8%E8%AF%81%E4%B9%A6%E5%8F%AA%E6%9C%892%20%E5%B9%B4%E6%9C%89%E6%95%88%E6%9C%9F%E7%9A%84%E9%97%AE%E9%A2%98%E3%80%82
近期比较多客户遇到由于证书过期问题导致vCenter突然无法登录,这里做一个汇总。(也适用于vCenter 7.x)
故障现象可能如下:
1、vCenter无法登录,输入了用户名和密码,却一直提示输入用户名和密码。

2、vCenter页面直接显示503 Service Unavailable

这时候,可能就是遇到了证书已过有效期的问题。vCenter 的证书在安装部署时,⼀般是默认10 年的,vCenter 6.5 以后的部分版本存在证书只有2 年有效期的问题。
主要是验证两类证书:一类是STS证书(参考第一和第二),还一类是其他证书(参考第三和第四)。
解决办法:
一、验证是否因为STS证书原因导致。
1、从KB79248 的网页下载一个Python 的小程序checksts.py(文末有下载)
2、上传到vCenter Server 或外部的PSC。上传到VCSA 的/tmp 目录,或者Windows Server 的%TEMP%目录。(如果使用工具无法连接,可以将 shell 更改为 bash shell 来使用 SCP,命令如下:chsh -s/bin/bash root)
3、进到/tmp 目录:cd /tmp
4、运行 python checksts.py
可以看到证书的有效期,如果过期了,继续往下更新证书。
二、更新STS证书。
注意:在进行下列操作之前,将vCenter 的虚拟机做备份并打快照。
1)从KB76719 的网页下载脚本fixsts.sh。(文末有下载)
2)将这个脚本上传到vCenter/PSC Server 上的临时目录/tmp 下。
3)进入目录:cd /tmp
4)将脚本改为可执行模式:chmod +x fixsts.sh
5)运行脚本:./fixsts.sh
可以看到有提示成功的字样,这样STS证书就更新好了。

6)重启vCenter,如果是STS证书到期导致,此时应该能正常登录了。
如果还不能正常登录,继续往下更新其他证书。
备注:如果是Windows版本的vCenter更新证书,需要使用PowerShell script去更新证书,参考以下kb:
https://kb.vmware.com/s/article/79263
三、验证是否因为其他证书原因导致。
7)查询其他证书过期情况
for i in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list); do echo STORE $i; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $i --text | egrep "Alias|Not After"; done
如发现其他证书也存在过期情况,继续想办法更新这些证书。
如图,上述有证书就是2023年1月15日到期。
四、更新其他证书
8)参考KB2097936,使用certification Manager 替换其他过期证书。
要启动 vSphere Certificate Manager,请运行如下命令:
- vCenter Server(Windows 版本):C:\Program Files\VMware\vCenter Server\vmcad\certificate-manager
- vCenter Server Appliance:/usr/lib/vmware-vmca/bin/certificate-manager
运行 certificate-manager 命令时,将为您提供 8 个选项,如屏幕截图中所示。

选择选项 8 进行操作,根据提示,在「Hostname」输入vc的FQDN,在VMCA Name输入与Hostname相同的值(如果是以ip部署的vc,请输入ip地址)。其余按回车保持默认即可。
耐心等待提示100%更新成功后,vCenter就已经可以正常登陆了。
如何规避:
检查当前vCenter 证书到期时间:
1)6.5 及以下的操作方法是:https://vc-ip/psc,然后选择:证书 – 证书管理– 选择证书 – 续订
2)6.7 的操作方法是:主页 – 系统管理 – 证书 – 证书管理 – 选择证书 – 操作 – 续订

本文中提到的两个文件,点此下载checksts.py和fixsts.sh
[转帖]解决vCenter6.x由于证书过期问题无法登录的更多相关文章
- k8s采坑记 - 解决二进制安装环境下证书过期问题
前言 上一篇k8s采坑记 - 证书过期之kubeadm重新生成证书阐述了如何使用kubeadm解决k8s证书过期问题. 本篇阐述使用二进制安装的kubernetes环境,如何升级过期证书? k8s配置 ...
- Kubeadm安装的K8S集群1年证书过期问题的解决思路
这个问题,很多使用使用kubeadm的用户都会遇到. 网上也有类似的帖子,从源代码编译这种思路, 在生产环境,有些不现实. 还是使用kubeadm的命令操作,比较自然一点. 当然,自行生成一套证书,也 ...
- 阿里云ssl证书过期怎么解决 (免费SSL证书) 三步解决
阿里云ssl证书过期怎么解决(免费SSL证书),三步解决 使用免费的SSL证书网站 https://ohttps.com 1.注册帐号 2.申请证书 3.部署到阿里云 4.注意事项 1.注册帐号 到 ...
- kubelet证书过期解决方法
昨天收到报警短信:集群中某node状态为notReady,由于是长期不用的,所以放到今天才有空处理,以下记录处理过程. 查看kubelet日志,发现不停的打印证书过期相关提示信息. 以下操作基于kub ...
- 证书过期-->app审核提示90034证书错误
1.证书过期问题,去钥匙串中删除过期证书,然后新下载一个证书,重新添加,注:一定要把所有过期证书全部删除,如果不显示则点击钥匙串-->显示过期证书 然后下载新证书:https://develop ...
- ASP - MSXML2.ServerXMLHTTP & HTTPS & 证书过期 — msxml3.dll '80072f05'
Error: msxml3.dll '80072f05' The date in the certificate is invalid or has expired Dim xmlhttp Set ...
- CA证书过期
CA证书问题请教!最近在客户这里做Exchange2010及RMS项目,对当前Ca证书颁发机构的环境做了下勘察和调研,发现有些地方出现警号显示过期,不知道会不会影响Exchange和Adrms的集成部 ...
- ssl证书过期问题
问题:linux服务器ssl证书过期,申请新证书后,也更换了服务器的证书,但是网页一直提示证书过期 解决:经分析后,发现服务器架构为waf->slb->esc,域名并未直接解析到slb,解 ...
- MSXML2.ServerXMLHTTP & HTTPS & 证书过期 — msxml3.dll '80072f05'
昨天测试一个几天前写的一个应用,时不时的报错: msxml3.dll '80072f05' The date in the certificate is invalid or has expired ...
- kubernets 证书过期的问题
.问题起源 kubeadm 是 kubernetes 提供的一个初始化集群的工具,使用起来非常方便.但是它创建的apiserver.controller-manager等证书默认只有一年的有效期,同时 ...
随机推荐
- spring-mvc 系列:HttpMessageConverter(@RequestBody、RequestEntity、@ResponseBody、@RestController、ResponseEntity、文件上传下载)
目录 一.@RequestBody 二.RequestEntity 三.@ResponseBody 四.SpringMVC处理json 五.@RestController 六.ResponseEnti ...
- RasaGPT对话系统的工作原理
RasaGPT 结合了 Rasa 和 Langchain 这 2 个开源项目,当超出 Rasa 现有意图(out_of_scope)的时候,就会执行 ActionGPTFallback,本质上就是利用 ...
- 案例解析关于ArkUI框架中ForEach的潜在陷阱与性能优化
本文分享自华为云社区<深入解析ForEach的潜在陷阱与性能优化:错误用法与性能下降的案例分析>,作者:柠檬味拥抱 . 在ArkUI框架中,ForEach接口是基于数组类型数据进行循环渲染 ...
- 华为云MetaStudio全新升级,盘古数字人大模型助力数字人自由
摘要:基于盘古大模型能力,华为云MetaStudio数字内容生产线全新升级,推出数字人模型生成服务和模型驱动服务. 近日,华为开发者大会2023 ( Cloud ) 在东莞拉开帷幕.基于盘古大模型能力 ...
- Spark-submit执行流程,了解一下
摘要:本文主要是通过Spark代码走读来了解spark-submit的流程. 1.任务命令提交 我们在进行Spark任务提交时,会使用"spark-submit -class .....&q ...
- JavaScript回调函数的高手指南
摘要:本文将会解释回调函数的概念,同时帮你区分两种回调:同步和异步. 回调函数是每个前端程序员都应该知道的概念之一.回调可用于数组.计时器函数.promise.事件处理中. 本文将会解释回调函数的概念 ...
- 图解 Redis丨这就是 RDB 快照,能记录实际数据的
摘要:所谓的快照,就是记录某一个瞬间东西,比如当我们给风景拍照时,那一个瞬间的画面和信息就记录到了一张照片.RDB 快照就是记录某一个瞬间的内存数据,记录的是实际数据. 本文分享自华为云社区<图 ...
- PPT 动画-莲花绽放
画两圆,合并形状 -> 相交 复制8个图片,一共9片 旋转 最后动画 -> 平滑
- SQL SERVER 查询所有表 统计每张表的大小
(MySQL查看数据库表容量大小)[https://www.cnblogs.com/vipsoft/p/12145059.html] 查询某数据库中的所有数据表 SELECT name as tabl ...
- ByteBuffer 字节缓冲区
HeapByteBuffer 在jvm堆上面的一个buffer,底层的本质是一个数组 由于内容维护在jvm里,所以把内容写进buffer里速度会快些:并且,可以更容易回收 DirectB ...