1.VMWARE平台STS(安全令牌服务)证书过期

1.1 问题描述

2022年6月16日,项目组在执行远程巡检过程中,发现VMWARE平台无法登陆。页面报错如下图:

1.2 部署方式及版本

架构:vCenter Server with an external Platform Services Controller(vcenter+外部PSC)
版本:VMware vCenter Server Appliance 6.5.0.32000(vCenter Server Appliance 6.5 U3f)

1.3 原因分析

  1. vmware知识库查询报错信息,指向了STS证书过期。
    STS签名证书的生命周期是2年,安全令牌服务(STS)证书过期时。这将导致内部服务和解决方案用户无法获得有效的令牌,从而无法按预期工作

  2. 方法一,下载官方的检测脚本checksts.py,上传到PSC服务端,确认是否存在证书过期问题。

    详见官方KB,https://kb.vmware.com/s/article/79248?lang=en_us
    注意:只有在英文界面下才能看到checksts.py附件

  3. 方法二适用于证书处于有效期内的环境,
    登陆https://vcenter_server_ip_address_or_fqdn/vsphere-client
    选择Administration > Single Sign-On > Configuration > Certificates > STS Signing.

1.4 影响范围

  • 全新安装PSC/vCenter Server 6.5,U2或更高版本开始(仅为6.5)。
  • 全新安装PSC/vCenter Server 6.5 U2及以上6.5版本,并升级到6.7和7.0以上版本。
  • PSC或vCenter Server安装完成后,使用certool工具替换STS签名证书。
  • 已将STS签名证书替换为自定义证书(内部/外部CA签名)。

1.5 处理过程

1.5.1 STS证书未过期续期

  1. 对vCenter及PSC虚拟机执行一次无内存快照
  2. 6.5版本及以下的操作方法是:https://vc-ip-address/psc,然后选择:证书->证书管理->选择证书->续订,计算机证书、解决方案用户证书,可信根证书全部续订一次。
  3. 6.7版本的操作方法是:主页->系统管理->证书->证书管理->选择证书->操 作->续订

1.5.2 STS证书已过期续期

  1. 从官方KB(https://kb.vmware.com/s/article/76719)下载fixsts.sh脚本,并上传到受影响的PSC(外部PSC架构)或嵌入PSC的vCenter服务器的/tmp目录。如果SCP客户端上传到vCenter的连接被拒绝,请使用SSH连接到vCenter执行: chsh -s /bin/bash

  2. 对vCenter及PSC虚拟机执行一次无内存快照

  3. 执行chmod +x fixsts.sh为脚本添加执行权限并执行

  4. 使用以下命令重启SSO域中vCenter和PSC上的所有服务
    service-control --stop --all
    service-control --start --all

    注意:如果有其他过期的证书,如机器SSL或解决方案用户,则重启服务仍然失败。继续下一步以识别和替换其他过期证书。

1.5.3 检查并替换其他过期的证书

  1. 执行下述命令检查其他证书的有效期
    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

    关注红框内证书是否已过期,vCenter及PSC都需要检查。

    官方KB:https://kb.vmware.com/s/article/2015600?lang=zh_CN

  2. 过期证书更新的先决条件

  • 在使用证书管理器重新生成证书之前,请确保STS证书是有效的。
  • 如果STS过期或损坏,证书再生将失败,因为没有有效令牌的服务依赖项启动失败。
  • 该任务将VMCA根证书替换为新的自签名证书,然后将SSL和解决方案用户证书替换为VMCA颁发的新证书。
  • 如果运行的是外部PSC,则需要在外部vCenter Server上运行证书管理器。并执行选项3, 将机器SSL证书替换为VMCA证书;执行选项6,将解决方案的用户证书替换为VMCA证书。
  1. 过期证书更新(https://kb.vmware.com/s/article/2112283),先更新PSC端
    1) 执行指令/usr/lib/vmware-vmca/bin/certificate-manager,选择选项4重新生成新的VMCA根证书并替换所有证书

    2) 根据提示输入 administrator@vsphere.local的密码
    3) 如果是首次生成VMCA证书,需要配置“certool.cfg”文件。在后续任务中,可以重用这些值。
    Please configure certool.cfg file with proper values before proceeding to next step.
    Press Enter key to skip optional parameters or use Default value.
    Enter proper value for ‘Country’ [Default value : US] : 回车
    Enter proper value for ‘Name’ [Default value : CA] : 回车
    Enter proper value for ‘Organization’ [Default value : VMware] : 回车
    Enter proper value for ‘OrgUnit’ [Default value : VMware Engineering] : 回车
    Enter proper value for ‘State’ [Default value : California] : 回车
    Enter proper value for ‘Locality’ [Default value : Palo Alto] : 回车
    Enter proper value for ‘IPAddress’ [optional] :PSC_IP
    Enter proper value for ‘Email’ [Default value : email@acme.com] : 回车
    Enter proper value for ‘Hostname’ [Enter valid Fully Qualified Domain Name(FQDN), For Example : example.domain.com] : PSC_IP
    Enter proper value for VMCA ‘Name’:PSC_IP
    4) 确认请求输入Yes (Y)继续
    You are going to regenerate Root Certificate and all other certificates using VMCA
    Continue operation : Option[Y/N] ? : Y
  2. 过期证书更新,再更新vCenter端
    1) 执行指令/usr/lib/vmware-vmca/bin/certificate-manager,依次选择3和6,替换SSL证书及解决方案用户证书
    Please configure certool.cfg file with proper values before proceeding to next step.
    Press Enter key to skip optional parameters or use Default value.
    Enter proper value for ‘Country’ [Default value : US] : 回车
    Enter proper value for ‘Name’ [Default value : CA] : 回车
    Enter proper value for ‘Organization’ [Default value : VMware] : 回车
    Enter proper value for ‘OrgUnit’ [Default value : VMware Engineering] : 回车
    Enter proper value for ‘State’ [Default value : California] : 回车
    Enter proper value for ‘Locality’ [Default value : Palo Alto] : 回车
    Enter proper value for ‘IPAddress’ [optional] :vCenter_IP
    Enter proper value for ‘Email’ [Default value : email@acme.com] : 回车
    Enter proper value for ‘Hostname’ [Enter valid Fully Qualified Domain Name(FQDN), For Example : example.domain.com] : vCenter_IP
    Enter proper value for VMCA ‘Name’:PSC_IP
  3. 使用以下命令重启SSO域中vCenter和PSC上的所有服务
    service-control --stop --all
    service-control --start --all

1.6 故障总结

组织团队全面排查VMWARE平台是否在影响范围列表内,如确认存在隐患,进一步核实证书过期时间,并将证书过期时间作为巡检项纳入远程巡检项中。在证书到期前3个月完成证书的更新及续签。

VMWARE平台STS证书过期相关推荐

  1. 检查vCenter Server上STS证书的过期日期(79248)(STS证书过期,导致 vCenter 报503无法登陆VC)

    检查vCenter Server上STS证书的过期日期(79248) 上次更新时间:2020/6/11分类:如何 1个语言:                 简体中文)日本西班牙文英语         ...

  2. 签名证书无效”-在vCenter Server Appliance 6.5 / 6.7上使用Shell脚本重新生成和替换已过期的STS证书(76719)

    "签名证书无效"-在vCenter Server Appliance 6.5 / 6.7上使用Shell脚本重新生成和替换已过期的STS证书(76719) 上次更新时间:2020/ ...

  3. VMware vCenter证书过期解决方法

    vCenter证书过期解决方法 目录 1 概述 2 详细操作步骤 2.1 检查关键的STS证书是否过期并修复 2.2 检查除STS证书外是否还有其余证书过期 2.3 续订除STS和data-encip ...

  4. VCSA证书过期问题处理

    1.  故障现象 2022年10月25日,登陆VC报错. 按照报错信息,结合官方文档,判断为STS证书过期导致. vCenter Server Appliance (VCSA) 6.5.x, 6.7. ...

  5. VCSA证书过期处理

    原创作者:运维工程师 谢晋 前提提要     客户环境为VSAN环境,VCSA版本为6.7,登陆VCSA时发现报错如下图:     经验判断该报错是因为VCSA的证书过期了,登陆VCSA的5480界面 ...

  6. vCenter的证书过期问题

    vCenter证书过期问题 VC的告警截图: 解决思路: 查看证书是否到期,更新证书就好了 查看证书: 当前用户的vCenter版本是7.0.0.10300 在系统管理里面的证书管理中能看到相关证书的 ...

  7. intel的linux证书过期,rhce证书过期了可以怎么办

    rhce证书过期了怎么办?我么一起来了解一下吧. 红帽rhce证书是没有有效使用期的,但是如果想进一步考rhca,就只有三年的有效时间,超过三年时间之后想要刷新证书,只需要重新参加一次考试就可以了. ...

  8. python检查https过期_Python实现HTTPS网站证书过期监控及更新

    当前HTTP逐渐被大众所抛弃,HTTPS正在成为互联网上的主流.前段时间我们维护的一个HTTPS证书即将过期,由于多云环境比较复杂,团队小伙伴在替换更新证书的过程中出现疏漏,导致有一个域名证书没有及时 ...

  9. 一起入门Citrix_XenDesktop7系列 十--跟着图片交付VMware平台Personal vDisk Windo

    产品版本 产品 ​ vCenter 5.1 update1 XenDesktop 7.0 Windows Client OS 8 ​ ​ 版本历史 版本 更改内容 创建者 时间 0.1 创建文档 Da ...

  10. SSL证书过期后怎么办?

    SSL证书是有时效期的,目前大部分浏览器支持SSL证书的有效期都在一年左右,所以如果不随时关注SSL证书日期,很容易导致SSL证书过期.那么SSL证书过期后会有什么后果?SSL证书过期后怎么解决呢? ...

最新文章

  1. Java数据库——事务处理
  2. 75. InputStreamReader和OutputStreamWriter(转换流--字节流转换成字符流)
  3. Nancy 寄宿OWin
  4. IP、TCP、UDP、HTTP头部信息
  5. python中怎么创建配置文件_如何在Django中创建配置文件注册表单?
  6. Maximo中调用XFire客户端的实现—Weblogic中间件
  7. css3 页面翻转效果.
  8. [转载] 用Python进行简单的文本相似度分析
  9. html中input描述,input的type值类型和描述-HTML
  10. Office Communications Server 和客户端使用的端口和协议
  11. 前端页面怎么办啊一条长的信息换行展示_前端入门!不容错过!HTML基本标签知识大盘点...
  12. linux进程间通信——netlink
  13. 谷歌浏览器不兼容websocket的wss协议_为什么程序员都喜欢用Chrome浏览器?
  14. 支付宝PM告诉你,互联网产品经理的工作职责有哪些?
  15. Fluent残差图中continuity不收敛如何处理
  16. OpenCV——图像细化算法
  17. JQuery返回前一页
  18. 线性运放HCNR201-500E构成的模拟信号隔离放大电路
  19. 华为matepad11无法连接mpencil2
  20. 串级PID及角度过零处理

热门文章

  1. vrep与vs2015联合仿真(C/C++)
  2. 51单片机驱动数码管显示
  3. 安卓车载中控竖屏分三屏
  4. C++:显示每年的各月份第一天是星期几
  5. Calendar 设置周一为每周第一天
  6. 使用PCtoLCD2002字模提取软件
  7. UG NX 12.0入门
  8. python pyhook_python使用pyHook.HookManager()返回来的event中,event.Time怎么转换成为datetime形式?...
  9. CAD转图片,怎么转换成PNG图片?
  10. 看懂Oracle的执行计划