Error: Hostname/IP doesn’t match certificate’s altnames: “Host: xxx.oss-cn-szfinance-a.aliyuncs.com. is not in the cert’s altnames: 或者类似其他 endpoint 的证书报错。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
遇到 "Hostname/IP doesn’t match certificate’s altnames" 的错误,通常意味着你尝试访问的主机名或IP地址与SSL证书中列出的可替代名称(Subject Alternative Names, SANs)不匹配。在阿里云OSS(Object Storage Service)场景下,这可能是由于以下原因导致的:
地区域名不正确:阿里云OSS的Endpoint需要精确匹配你的Bucket所在区域。错误的地区域名会导致SSL证书验证失败。例如,如果你的Bucket位于“中国华南 finance”区域,正确的Endpoint应该是oss-cn-szfinance.aliyuncs.com
,而不是oss-cn-szfinance-a.aliyuncs.com
。请检查并确认你使用的Endpoint是否准确无误。
使用了内部或特殊Endpoint:某些特殊的Endpoint(如特定于金融云或其他定制服务的Endpoint)可能具有不同的SSL证书配置。确保你没有错误地使用了一个仅适用于特定环境或服务的Endpoint。
SSL证书更新或变更:阿里云可能会定期更新其服务的SSL证书。尽管这种情况较为罕见,但有时浏览器或客户端缓存的旧证书信息可能导致验证失败。尝试清除客户端的SSL会话缓存或临时禁用SSL验证(仅用于测试目的,不建议生产环境中这样做)来查看是否为证书更新问题。
客户端配置问题:如果你是在特定的编程环境或工具中遇到此问题(如通过SDK或CLI操作),确保该环境或工具的SSL验证设置正确,没有被错误配置或过于严格。
解决方法:
核对Endpoint:首先,登录阿里云控制台,检查你的Bucket所在的正确区域和推荐的Endpoint,并确保代码或应用中使用的是这个正确的Endpoint。
更新或重置客户端信任库:如果是因为客户端SSL证书库未及时更新,尝试更新你的操作系统、编程语言的SSL库或者SDK到最新版本。
清空缓存与重试:如果是浏览器访问或有缓存机制的客户端,尝试清除缓存后重新访问。
检查网络环境:有时候企业内部网络或特定的代理服务器可能会干扰SSL握手过程,确认是否有此类网络配置影响了连接。
如果以上步骤不能解决问题,建议直接联系阿里云客服或查阅阿里云官方文档获取更具体的帮助。