2

我们在办公室的 Linux 服务器上托管我们的公共网站。上周我用 CA 签名的证书替换了自签名的 SSL 证书。在我这样做之后,我无法在我的家庭 Linux 服务器上使用像 gcloud 或 gsutil 这样的 Google Cloud SDK 实用程序。我得到一个以

File "/usr/lib64/python2.7/ssl.py", line 272, in match_hostname %
(hostname, ', '.join(map(repr, dnsnames)))) 
ssl.CertificateError:
hostname 'metadata.google.internal' doesn't match either of
'www.rubgrp.com', 'rubgrp.com'

虽然 rubgrp.com 是公司域名,但在我的家庭 SDK 配置中没有引用它 - 云帐户与我的个人 gmail.com 地址相关联。为了验证问题是否与更改办公室服务器证书有关,我重新安装了自签名证书,错误消失了;它在放回签名证书后重新出现。

我尝试在办公室的 Linux 机器上使用相同版本的 OS 和 Python 安装 SDK,并且成功了。我尝试在家里的 Mac 上安装它,它工作正常。但是当我在家用 Linux 机器上设置另一个用户时,它失败了。它就像在他的家庭服务器上缓存了一些东西,但我找不到什么或在哪里。

谢谢!

4

1 回答 1

0

也有这个问题,我通过编辑解决了这个问题google-cloud-sdk/lib/googlecloudsdk/core/credentials/gce_cache.py

在函数定义return False的第一行添加一个。GetOnGCE这将防止它查询 metadata.google.internal 并感到困惑。

于 2020-06-21T22:47:44.133 回答