我经营着一个网站,让用户通过 Google 登录其帐户。一年多来,一切都运行良好 - 直到几天前,当 Google 服务器尝试访问其任何 OAuth 证书列表 API 端点时,它开始抛出 403 错误。
例如:
$ curl 'https://www.googleapis.com/oauth2/v1/certs'
...
<p><b>403.</b> <ins>That’s an error.</ins>
<p>Your client does not have permission to get URL <code>/oauth2/v3/certs</code> from this server. <ins>That’s all we know.</ins>
...
这个请求在我尝试过的每台服务器上都运行良好,并且已经运行了好几年。我不知道为什么这种情况突然发生了。
该服务器有自己的 IP,但它托管在一家小型、不知名的 VPS 提供商上。我最初的想法是限制速率,但我添加了日志,没有看到太多请求。我能想到的唯一另一件事是 IP 地址声誉问题,因为地址靠近滥用者?不确定如何/是否可以解决。
关于如何修复/调试此问题,您有什么想法吗?如能提供任何帮助,我们将不胜感激!
答案1
事实证明,Google 阻止了来自我的服务器 IPv 的所有请求6地址。解决方案是将服务器切换到 IPv4默认情况下-这解决了所有问题!
在 Ubuntu 上:
- 编辑
vim /etc/gai.conf
并取消注释“对于优先使用 IPv4 连接的站点”后面的行 - 跑步
systemctl restart systemd-resolved
- 重新启动后端服务器进程