我有一个使用 AWS lambda 和 API 网关构建的简单 HTTP 服务。指向网关的域由 Route53 托管,网关使用来自证书管理器的证书。索引页面上唯一的“服务正在运行”文本绝对是新鲜的。相当标准的设置。所有这些都使用 Terraform 巧妙地连接起来,就像一个魅力......除了每隔几秒 (!) 就会向 API 发出奇怪的请求。我检查了 AWS 上所有可能的探测和健康检查——一切都被禁用了,但请求不断出现。
转储来自 lambda 的请求:
{
...
"headers": {
"accept": "*/*", "accept-encoding": "gzip, deflate", "content-length": "0",
"host": "sub-b.sub-a.my-domain.com",
"user-agent": "python-requests/2.26.0",
"x-amzn-trace-id": "Root=1-6158e0d5-0d266e5d0a84add227005a79",
"x-forwarded-for": "3.85.226.144", "x-forwarded-port": "443",
"x-forwarded-proto": "https"
},
...
"http": {
"method": "GET", "path": "/", "protocol": "HTTP/1.1",
"sourceIp": "3.85.226.144", "userAgent": "python-requests/2.26.0"
},
"requestId": "GmgRbgATFiAEMtQ=",
"routeKey": "$default",
"stage": "$default",
"time": "02/Oct/2021:22:44:37 +0000"
...
}
IP 是北弗吉尼亚州的3.85.226.144
EC2 实例,所以它是us-east-1
AWS 区域(我的是 eu-central-1)。还有那个代理python-requests/2.26.0
。它看起来像 AWS 服务。特别是我已经尝试过更改子域,这不会改变最终结果,因为在使用不同的子域再次设置我的服务后请求立即开始出现。量约为每 1 小时 3000 个请求。
我已经花了几个小时在谷歌上搜索和检查我想到的任何东西,但即使很艰难,我也经常使用基础设施工作,我真的很无助。
这些请求到底是什么责任?!
各种想法和建议高度赞赏。
编辑:
我使用全新的根域进行了测试,以确保它来自 AWS。查询在中断期间停止(显然),但在服务再次可访问后立即返回(如几秒钟)。terraform apply
9点52分开始,9点59分结束。新域在 9:59 之前附加了一点(一些不相关的修改等待了几分钟),因此请求开始出现。据我所知,没有任何东西可以这么快地检测到新的根域,所以它一定与 AWS 本身有关。