VC登录失败排查指南:密码正确却无法访问的证书过期解决方案

张开发
2026/4/18 13:36:47 15 分钟阅读

分享文章

VC登录失败排查指南:密码正确却无法访问的证书过期解决方案
1. 为什么密码正确却无法登录VC最近遇到好几个朋友反馈明明输入了正确的VC账号密码却死活登录不进去系统。这种情况我见得多了十有八九是证书出了问题。就像你拿着正确的门禁卡但卡片过期了照样进不了大楼。先别急着重装系统我来教你怎么排查。首先要注意观察错误提示常见的503 Service Unavailable错误往往伴随着类似Failed to connect to endpoint的提示。这时候我们需要分三步走检查存储空间、验证证书状态、更新过期证书。2. 快速检查系统存储状态登录SSH后第一件事就是用df -h命令看看磁盘空间。我遇到过不少案例表面上是证书问题实际是/storage/log目录被日志塞爆了。检查时要特别注意这几个目录/storage/log日志文件存放处使用率超过90%就要清理/storage/db数据库目录正常情况下使用率应该低于30%/根目录剩余空间最好保持2GB以上如果发现某个分区快满了可以用这个命令清理日志find /storage/log -type f -name *.log -mtime 30 -exec rm -f {} \;3. 详细检查证书过期情况确认存储空间没问题后就该检查证书了。VMware环境里有多种证书最重要的是这几个机器SSL证书MACHINE_SSL_CERTVPXD服务证书vSphere Web Client证书STS安全令牌服务证书用这个命令可以列出所有证书存储库/usr/lib/vmware-vmafd/bin/vecs-cli store list查看具体证书过期时间更直观的方法是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输出结果里Not After后面的日期就是过期时间。我上次就遇到一个客户的vpxd证书过期了导致整个VC都无法登录。4. 证书过期的解决方案发现证书过期后有几种处理方式4.1 重置所有证书最彻底的方法是使用certificate-manager工具重置所有证书。操作步骤运行命令/usr/lib/vmware-vmca/bin/certificate-manager选择选项8Reset all Certificates输入管理员账号密码格式Administratorvsphere.local按提示填写证书信息保持默认值即可确认操作后等待完成这个过程大概需要10-15分钟完成后必须重启服务器。4.2 仅更新STS证书如果确定只是STS证书过期可以用这个专用脚本./fixsts.sh脚本运行时会要求确认已做好快照备份输入SSO管理员密码等待证书重置完成这个方法的优点是速度快通常5分钟内就能搞定。但要注意如果是多PSC环境需要在每个PSC上都执行这个操作。5. 操作后的验证步骤更新完证书后建议做这些检查再次运行证书检查命令确认所有Not After日期都已更新检查服务状态service-control --status --all测试VC登录功能检查/var/log/vmware/vpxd.log是否有报错如果还遇到问题可以尝试重启所有服务service-control --stop --all service-control --start --all6. 预防证书过期的建议根据我的经验做好这些预防措施能避免90%的证书问题设置证书到期提醒提前90天定期检查证书状态建议每月一次保持系统时间准确NTP服务要正常维护好备份策略包括证书备份考虑使用企业CA颁发的长期证书可以用这个命令设置定期检查任务加入crontab#!/bin/bash CERT_CHECK$(/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store MACHINE_SSL_CERT --text | grep Not After) echo SSL证书过期时间$CERT_CHECK证书问题看似复杂但只要掌握了正确的方法处理起来并不难。关键是要养成定期检查的好习惯别等出了问题才手忙脚乱。

更多文章