vCenter无法登录 | 需要用户名和密码 | User name and password are required

vCenter无法登录”需要用户名和密码“ ”User name and password are required"

症状:

  • vCenter登录失败
  • vCenter网页界面明明输入了SSO账号administrator@vsphere.local和密码,但是还是提示“需要用户名和密码
  • 英文版的错误为:“User name and password are required
  • 没有过期的常规证书如SSL,和VCSA没有硬盘空间不足的情况,参考:https://vmlib.com/vcsa-commands

先说结论,大几率是因为STS服务的证书过期

vCenter STS是什么

vCenter STS的中文为”安全令牌服务“。vCenter 的安全令牌服务 (STS) 是负责签发、验证和更新安全令牌的重要服务,尤其在单点登录 (SSO) 环境中。STS 通过生成并签署安全断言标记语言 (SAML) 令牌来确保 vSphere 服务之间的安全通信。这些令牌用于认证用户和服务,确保它们在 vSphere 基础架构内安全地交互。

STS 签名证书的作用是用于对这些 SAML 令牌进行签名。默认情况下,这个证书是由 VMware 证书颁发机构 (VMCA) 管理的,有较长的有效期。通常,用户不需要替换 STS 签名证书,因为它并不用于外部通信。然而,如果公司的安全策略要求,或证书过期时,管理员可以通过 vSphere Web Client 或 API 来手动更新或替换该证书。

如果STS签名证书过期,就会出现上述问题,无法登录vCenter并报错”需要用户名和密码“或”User name and password are required“

如何验证STS证书是否过期?

一般来说,可以正常登录的情况下,vCenter vSphere Client的GUI就可以看到

具体位置在vCenter点击菜单 – 管理Administration – 证书管理Certificate Management

但是我们现在登陆不到的状态下,只能通过VMware官方的checksts.py脚本检查。

https://knowledge.broadcom.com/external/article?legacyId=79248(Checking Expiration of STS Certificate on vCenter Servers)

注意:STS证书的状态不能通过常规检查SSL证书的命令查看,见https://vmlib.com/vcsa-commands的“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

只能通过VMware官方的checksts.py脚本检查,具体步骤和截图为:

  1. 拉到文章底部,下载checksts.py脚本
  2. 将脚本上传至VCSA的/tmp目录
  3. cd 到脚本目录
  4. 执行脚本#python checksts.py
  5. 当见到下列字句时,证明STS证书已经过期 “You have expired STS certificates”

如何更新STS证书

很简单,VMware官方也有做好的脚本去更新STS证书:

https://knowledge.broadcom.com/external/article?legacyId=76719 (文章名字”Signing certificate is not valid” error in vCenter Server Appliance)

更新STS证书的具体步骤:

  1. 同样去到上面的KB文章,拉到文章底部,下载fixsts.sh脚本
  2. 上传fixsts.sh脚本到VCSA的/tmp目录
  3. 这次是shell脚本,所以要添加执行权限#chmod +x fixsts.sh
  4. 执行脚本#./fixsts.sh,输入administrator@vsphere.local密码
  5. 执行完毕后,会见到类似下面的提示

成功更新STS证书后,按照提示需要重启VCSA全部服务:

  • #service-control –stop –all && service-control –start –all

大概等10-20分钟全部服务重启后,重新刷新浏览器就可以成功登录vCenter了

注意:如果vCenter是设置了Linked Mode,其他节点的服务也需要重启一下。

有VM问题需要协助?

免费试用VMware技术助理(已接Deepseek)!即时解答VM难题

→ 🤖VM技术助理

解析和诊断各类vCenter错误,ESXi日志,虚拟机vmware.log

→ 📕VMware日志分析器

图书推介 - 京东自营

24小时热门

还有更多VMware问题?

免费试下我们的VMware技术助理(已接Deepseek)!即时解答VM难题 → 🤖VM技术助理

试试 📕VMware日志分析器 免费诊断各类vCenter错误,ESXi日志,虚拟机vmware.log等等

########

扫码加入VM资源共享交流微信群(请备注加群

需要协助?或者只是想技术交流一下,直接联系我们!

推荐更多

vCenter 8.0U2 编辑旧硬件版本虚拟机设置失败问题
运维必备

vCenter 8.0U2 编辑旧硬件版本虚拟机设置失败问题

vCenter 8.0U2 编辑旧硬件版本虚拟机设置失败问题。详细解析 vCenter 8.0U2 中无法编辑硬件版本 9 及更低版本虚拟机设置的问题,提供两种临时解决方案和正式修复版本,帮助管理员快速恢复管理功能。 本文针对该问题提供了深度剖析与实测解决方案。

vSphere 8.x 集群所需状态不兼容的 vSwitch0 配置问题
运维必备

vSphere 8.x 集群所需状态不兼容的 vSwitch0 配置问题

vSphere 8.x 集群所需状态不兼容的 vSwitch0 配置问题。详细解析 vSphere 8.x 中集群所需状态配置报告不兼容的原因,重点说明 vSwitch0 bridge/nics configstore 不匹配问题,并提供 fixBridgeNic.py 脚本解决方案,帮助管理员快速恢复合规性。 本文针对该问题提供了深度剖析与实测解决方案。

vSphere 8.x Client 特定操作无响应的浏览器兼容性问题
运维必备

vSphere 8.x Client 特定操作无响应的浏览器兼容性问题

vSphere 8.x Client 特定操作无响应的浏览器兼容性问题。详细解析 vSphere 8.x Client 中某些操作无响应的原因,重点说明浏览器兼容性要求,并提供 PowerCLI 备用方法,帮助管理员快速解决问题。 本文针对该问题提供了深度剖析与实测解决方案。

vCenter vpxd 服务无法启动的 PostgreSQL 日志修复方法
运维必备

vCenter vpxd 服务无法启动的 PostgreSQL 日志修复方法

vCenter vpxd 服务无法启动的 PostgreSQL 日志修复方法。详细解析 vCenter Server 中 vpxd 服务无法启动的原因(PostgreSQL 事务日志损坏),并提供完整的 pg_resetxlog/pg_resetwal 修复步骤,帮助管理员快速恢复 vCenter 服务。 本文针对该问题提供了深度剖析与实测解决方案。

//omg10.com/4/9119499