news 2026/4/20 4:26:15

vSphere 6.7U3g证书突然过期,凌晨三点救火记:手把手教你用fixsts.sh脚本修复STS证书

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
vSphere 6.7U3g证书突然过期,凌晨三点救火记:手把手教你用fixsts.sh脚本修复STS证书

vSphere证书危机:深夜紧急修复STS证书过期的全流程实录

凌晨三点的手机震动声在寂静中显得格外刺耳。运维团队群里的告警消息不断刷屏:"vCenter无法登录,所有虚拟机管理操作中断"。抓起笔记本的瞬间,我意识到这很可能又是一起STS证书过期引发的紧急事件——这种两年一次的"定时炸弹"总爱在深夜爆发。本文将完整还原从故障定位到修复的全过程,手把手带你用官方fixsts.sh脚本化解证书危机。

1. 故障现象与快速诊断

当vCenter突然拒绝所有登录请求时,第一要务是确认是否属于STS证书过期问题。以下是典型的症状组合:

  • 前端表现:输入正确密码后反复跳转登录页面(HTTP 400错误),或直接显示503服务不可用
  • 后台日志:检查/var/log/vmware/vpxd-svcs/vpxd-svcs.log可见关键报错:
    ERROR [...] Server rejected the provided time range. Cause:ns0:InvalidTimeRange: Signing certificate is not valid [...] cert validity: TimePeriod [startTime=..., endTime=...]

快速验证证书状态的两种方法:

方法一:使用官方检查脚本

wget https://kb.vmware.com/sfc/servlet.shepherd/version/download/068f400000JAn50AAD -O checksts.py python checksts.py

方法二:直接查询证书存储

/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store vpxd-extension --text | grep -A1 "Not After"

注意:证书过期后,Web界面通常无法访问,必须通过SSH连接VCSA操作

2. 修复前的关键准备工作

拿到fixsts.sh脚本前,这些保护措施能避免灾难性后果:

  1. 创建离线快照
    在vSphere Host Client中对VCSA虚拟机执行关机状态快照,确保可回退

  2. 检查系统时间同步
    错误的系统时间会导致新证书立即失效:

    timedatectl status hwclock --hctosys systemctl restart chronyd
  3. 下载官方修复工具
    准备两种下载途径以防网络问题:

    # 主下载源 wget https://kb.vmware.com/sfc/servlet.shepherd/version/download/068f400000JAn50AAD -O fixsts.sh # 备用下载源 wget https://kb.vmware.com/sfc/servlet.shepherd/version/download/068f400000HW9InAAL -O fixsts.sh
  4. 处理Windows换行符问题
    若脚本报/bin/bash^M错误,执行:

    sed -i 's/\r$//' fixsts.sh

3. 脚本执行与故障排除

赋予执行权限后,直接运行脚本会提示输入SSO管理员密码:

chmod +x fixsts.sh ./fixsts.sh

典型问题及解决方案:

错误现象原因分析解决措施
Operation timed out服务启动超时手动逐个启动关键服务
Failed to connect to endpoint证书未生效强制重启vmware-vpxd服务
Invalid credentialsSSO密码错误确认密码或重置SSO配置

服务重启的正确顺序:

service-control --stop --all service-control --start vmdird service-control --start vmware-sts-idmd service-control --start --all

重要提示:整个SSO域内只需在一台PSC上执行脚本,多节点重复执行会导致数据不一致

4. 验证与后续加固

修复成功后,立即验证各功能模块:

  1. 证书有效期检查

    for store in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list); do echo "[$store]" /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $store --text | grep -A1 "Not After" done
  2. 服务状态确认

    watch -n 1 'service-control --status --all | grep -v "running"'
  3. 预防性措施
    在日历中添加证书到期提醒,设置提前6个月的周期性检查:

    # 添加至crontab每月检查 0 3 1 * * python /usr/lib/vmware-vmafd/share/scripts/checksts.py | mail -s "STS Cert Check" admin@example.com

5. 深度技术解析:为什么STS证书如此关键

STS(Security Token Service)是vSphere的身份认证核心,其证书过期会导致整个信任链断裂。与普通SSL证书不同,STS证书具有以下特殊性:

  • 签发机制:由VMware Certificate Authority(VMCA)自动生成
  • 影响范围:影响所有API调用、UI登录和组件间通信
  • 更新限制:不能通过常规证书管理界面续订

证书生命周期对比:

证书类型默认有效期可续期影响范围
STS证书2年需脚本全局认证
Machine SSL10年可界面更新加密通信
Solution User5年自动轮换特定服务

这次深夜救火让我再次意识到,对于vSphere这类关键系统,不能仅依赖监控告警。建立完善的证书资产管理体系,才是避免凌晨紧急处理的根本之道。现在,是时候去补个觉了——当然,是在确认所有监控项都恢复绿色之后。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/20 4:25:16

ISP色彩校正矩阵(CCM)揭秘:从人眼感知到Sensor数据的数学桥梁

1. 为什么需要色彩校正矩阵(CCM)? 当你用手机拍下一朵红花时,有没有发现照片里的颜色和实际看到的总是差那么点意思?这背后其实藏着人眼和相机传感器的本质差异。人眼通过三种视锥细胞(S/M/L型)…

作者头像 李华
网站建设 2026/4/20 4:25:14

DPDK老司机避坑指南:I210网卡Force Link Mode的真实含义与EEE模式关闭实操

I210网卡Force Link Mode深度解析与EEE模式关闭实战 在虚拟化环境和边缘计算场景中,网络接口的稳定性直接关系到业务连续性。许多工程师在使用Intel I210这类工业级网卡时,都遇到过接口异常震荡的问题。一个常见的误解是:启用Force Link Mode…

作者头像 李华
网站建设 2026/4/20 4:25:13

从PointNet到PointNeXt:为什么‘共享’MLP是点云模型设计的基石?

从PointNet到PointNeXt:为什么‘共享’MLP是点云模型设计的基石? 点云数据处理一直是计算机视觉和三维感知领域的核心挑战之一。不同于规整的二维图像像素排列,点云数据具有无序性、非均匀性和稀疏性三大特征,这使得传统卷积神经网…

作者头像 李华
网站建设 2026/4/20 4:14:18

PyTorch实战:从零到一完成RoBERTa在对话情感数据集上的高效微调

1. 环境准备与数据加载 第一次接触RoBERTa微调时,我对着官方文档折腾了半天环境配置。后来发现用conda创建独立环境能避免90%的依赖冲突问题。以下是经过多次踩坑验证的稳定方案: conda create -n roberta_finetune python3.8 conda activate roberta_fi…

作者头像 李华