玛卡巴卡的卡巴卡玛 发表于 2024-6-28 20:48:41

VMware vCenter证书过期解决方法

        
   
   vCenter证书过期解决方法
    目次
   1 概述   
   2 详细利用步骤        
   2.1 查抄关键的STS证书是否过期并修复        
   2.2 查抄除STS证书外是否另有别的证书过期        
   2.3 续订除STS和data-encipherment以外的证书        
   2.4 续订data-encipherment证书        
   2.5 删除BACKUP_STORES certificat        
   3 FAQ        
   3.1 VMCA为关键步骤,且不可逆,执行之前注意老师成快照。        
   概述
   vCenter内含各种证书,部分证书过期会导致登录webclient时,出现“获取身份认证程序时出错”(https://ip/ui),“no healthy upstream”(https://ip)的提示,导致无法登陆,错误代码500、400。本手册先容证书过期标题的解决方法。
   https://img-blog.csdnimg.cn/958c8c115e654d09959ce13aaf2a535e.png
    https://img-blog.csdnimg.cn/c3e1bc9208a34d3ab258c35792de63f2.png
   详细利用步骤
   
   2.1 查抄关键的STS证书是否过期并修复
   STS 证书过期时不会触发证书到期警报。安全令牌服务(STS)证书过期时,将导致内部服务息争决方案用户无法获得有效的令牌,从而无法按预期工作在证书到期前3个月完成证书的更新及续签。
   查抄 vCenter Server 上 STS 证书的过期日期
   (参考官方KB:https://kb.vmware.com/s/article/79248?lang=en_us)
   上传检测脚本
   脚本文件:
   https://img-blog.csdnimg.cn/011a3a02515240ffa3cba1ae3ae67185.png
   通过SCP协议将脚本问价上传至vCenter Server
   以winscp工具为例,将脚本上传到新建的/tmp2目次
   https://img-blog.csdnimg.cn/33e3120a0be44f51882304b6b466321e.png
   
   https://img-blog.csdnimg.cn/ca9e1e41f4284cbeb145e4fa34c3d100.jpeg
   
   通过SSH协议登陆vCenter Server Appliance
   输入shell,进入shell命令视图
   执行chsh -s /bin/bash root,赋予root用户执行脚本权限:
   https://img-blog.csdnimg.cn/9b08fea150da43ec93bfa7d606baf57e.jpeg
   
   执行脚本 python checksts.py
   https://img-blog.csdnimg.cn/3998f4e0ac8346a9ba536b8fecc3fcd7.jpeg
   
   从结果得知STS没有过期。
   注:假如STS过期,则执行修复脚本
   https://img-blog.csdnimg.cn/bfc3772c97c845edb69fe381855be53a.png
   ,并重启服务:
   service-control --stop --all
   service-control --start --all
   2.2 查抄除STS证书外是否另有别的证书过期
   完成关键的STS证书检测(和修复)后,查抄其他证书到期环境
   通过命令查抄:
   for store in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list | grep -v TRUSTED_ROOT_CRLS); do echo "
[*] Store :" $store; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $store --text | grep -ie "Alias" -ie "Not After";done;
   https://img-blog.csdnimg.cn/8c2bc57b97ad448fb5cd59b46938ee4f.jpeg
   
   从结果得知:有多个证书已过期。
   2.3 续订除STS和data-encipherment以外的证书
    通过VMCA 来重新生成 vSphere 6.x 证书
   启动 vSphere Certificate Manager。
       对于vCenter Server 6.x Appliance:
   /usr/lib/vmware-vmca/bin/certificate-manager
       对于 Windows vCenter Server 6.x:
   C:\Program Files\VMware\vCenter Server\vmcad\certificate-manager
   https://img-blog.csdnimg.cn/c36f17276989495fb54a31bfa5d056d8.jpeg
   
   选择8或4,执行功能相同
   根据 VMCA 的提示,输入以下项的值:
   https://img-blog.csdnimg.cn/2fdc929cc6e04d0ebd887768bea2232b.jpeg
   
   重点项:
   Enter proper value for 'Hostname' :这个值要和vCenter Server的主机名一致。
   Enter proper value for VMCA 'Name' :  (注意:vCenter Server 6.0 U3、6.5 及更高版本将要求提供此信息,您可以在此字段中使用 vCenter Server 的 FQDN。 它将作为 VMCA 根证书的公用名) 没有设置FQDN就是用IP地点。
   开始执行更新
   https://img-blog.csdnimg.cn/b0afd77b4b3e4321b009d8c89f704fec.jpeg
   
   ………………………………………………
   https://img-blog.csdnimg.cn/037ef420068d4d7a9a64ed28465e7a72.jpeg
   
   更新完成后会重启,再次用命令查抄是否另有证书到期。
   证书期限都正常后,访问vCenter WebClient,确认各项服务是否正常。
   一样平常环境到此可解决标题,若不正常继续续订data-encipherment证书。
   
   2.4 续订data-encipherment证书
   参考官方KB:https://kb.vmware.com/s/article/88548?lang=en_US
   续订、修复脚本
   https://img-blog.csdnimg.cn/2ac80f17a56b4892814d8f6e8946c76c.png
   
   
   上传脚本,使用 SSH 会话连接到 vCenter Server
   导航到存放脚本的 /tmp2目次:
   cd /tmp2
   运行chmod +x fix_encipherment_cert.sh使文件可执行。
   运行./fix_encipherment_cert.sh
   重新启动 VPXD 服务以使更改生效
   service-control --stop vpxd
   service-control --start vpxd
   https://img-blog.csdnimg.cn/e6cdbf2f9ad14279b213bc4e3b0a9a06.jpeg
   
   2.5 删除BACKUP_STORES certificat
   参考KB:Clearing BACKUP_STORES certificates in the VCSA via shell script (82560)
   VMware Knowledge Base
   
   使用下列命令查抄证书:
      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
   假如 STORE BACKUP_STORE 下有过期或过期证书,请继续运行上传的脚本clean_backup_stores.sh
   https://img-blog.csdnimg.cn/7eb8862f46044a3390578007249d6b0c.png
   :
   将脚本上传到 VCSA 到 /tmp2/ 目次
   通过运行使脚本可执行:chmod +x clean_backup_stores.sh
   使用以下命令运行脚本:./clean_backup_stores.sh
   注意:您可能会收到错误消息:  -bash: ./clean_backup_stores.sh: /bin/bash^M: bad interpreter: No such file or directory。
   假如是如许,请运行:  sed -i -e 's/\r$//' clean_backup_stores.sh
   使用命令  service-control --stop --all && service-control --start --all重启服务
   继续“确认”和“重置为绿色”任何与证书干系的警报
   3 FAQ
   VMCA为关键步骤,且不可逆,执行之前注意老师成快照。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: VMware vCenter证书过期解决方法