AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1079389
Accepted
glowka
glowka
Asked: 2021-10-03 15:15:15 +0800 CST2021-10-03 15:15:15 +0800 CST 2021-10-03 15:15:15 +0800 CST

我在 AWS 上的网关 API 不断收到奇怪的请求

  • 772

我有一个使用 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.144EC2 实例,所以它是us-east-1AWS 区域(我的是 eu-central-1)。还有那个代理python-requests/2.26.0。它看起来像 AWS 服务。特别是我已经尝试过更改子域,这不会改变最终结果,因为在使用不同的子域再次设置我的服务后请求立即开始出现。量约为每 1 小时 3000 个请求。

我已经花了几个小时在谷歌上搜索和检查我想到的任何东西,但即使很艰难,我也经常使用基础设施工作,我真的很无助。

这些请求到底是什么责任?!

各种想法和建议高度赞赏。

编辑:

我使用全新的根域进行了测试,以确保它来自 AWS。查询在中断期间停止(显然),但在服务再次可访问后立即返回(如几秒钟)。terraform apply9点52分开始,9点59分结束。新域在 9:59 之前附加了一点(一些不相关的修改等待了几分钟),因此请求开始出现。据我所知,没有任何东西可以这么快地检测到新的根域,所以它一定与 AWS 本身有关。 在此处输入图像描述

amazon-web-services amazon-api-gateway amazon-route53
  • 2 2 个回答
  • 254 Views

2 个回答

  • Voted
  1. Best Answer
    glowka
    2021-10-04T14:42:11+08:002021-10-04T14:42:11+08:00

    好的,事实证明这是与 Route 53 路由或证书管理器相关的问题。

    当我应用我的 terraform 定义的资源时,一定已经发生了某种竞争条件,并导致某种初始化探测永远持续,而不是在资源创建后立即停止。所以我的结论是,当同时创建 API 网关、DNS 路由和证书时,Route53 或 CM 往往会处于某种奇怪的状态。使用 terraform 创建所有服务,然后删除路由,然后重新创建解决了该问题。

    • 1
  2. Alex
    2021-10-03T20:37:14+08:002021-10-03T20:37:14+08:00

    请问您为什么认为这是由 AWS 服务本身生成的?我对 AWS 了解不多,但是当我看到“python-requests/2.26.0”作为 UA 的那一刻,我立即想象有人出于某些原因编写了一个脚本来利用/探测 API。对这些请求的实际答复是什么?是否可以从中解析出任何业务信息,例如价格/费率等?如果是,那么您可能只是有人在 AWS 中租用服务器并编写脚本来解析您的数据。否则,他们可能正在为所有可能的域探测所有可能的主机。发生在互联网上)

    此外,您似乎不是第一个询问或报告该 IP 地址的人: https ://www.abuseipdb.com/check/3.85.226.144 https://github.com/photoprism/photoprism/issues/1458

    • 0

相关问题

  • 与 AWS 中的其他系统相比,CentOS 报告的总内存较低

  • 如何在 Amazon Linux 服务器上升级到 Java 1.8?

  • 了解 Amazon AWS 使用数据

  • 亚马逊提供的负载均衡服务体验如何?

  • ELB 中现有节点的 AWS 自动缩放问题

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve