实例元数据服务是什么
云平台在固定的内网地址上提供实例元数据服务:实例可以通过它查询自身的实例 ID、地域、私网 IP、网卡信息等,部分场景下还能获取绑定角色的临时凭据。以阿里云为例地址是 100.100.100.200。该地址只在实例内部与 VPC 内可达,公网无法访问,也不应该被应用当作普通网络服务使用。
基本信息
| 地址 | 100.100.100.200(阿里云 ECS 实例元数据服务) |
|---|---|
| 可达范围 | 仅实例内部与 VPC 内可达,公网无法访问 |
| 典型用途 | 脚本读取实例信息、应用获取临时凭据 |
| 访问方式 | HTTP 请求,按路径分层获取不同信息 |
| 安全提醒 | Web 应用不要代理用户可控 URL 去访问该地址 |
| 替代方案 | 也可通过实例内的服务与启动脚本注入所需信息 |
典型使用场景
- 启动脚本读取实例 ID、地域与私网 IP,自动完成服务注册
- 应用获取绑定角色的临时凭据访问云服务,避免在配置里写死密钥
- 监控脚本读取实例基础信息并上报到统一平台
- 运维排查时确认当前机器的实例标识与所属网络信息
- 自动化部署中按元数据区分环境,加载对应配置
查询实例元数据
查询实例元数据
curl -s http://100.100.100.200/latest/meta-data/instance-id
curl -s http://100.100.100.200/latest/meta-data/region-id
curl -s http://100.100.100.200/latest/meta-data/private-ipv4
curl -s http://100.100.100.200/latest/meta-data/ # 列出可用条目
# 从本地机房或公网访问同一地址不会有任何响应常见条目与用途
| 条目 | 用途 |
|---|---|
| instance-id | 实例唯一标识,用于注册与对账 |
| region-id | 所属地域,便于选择就近服务端点 |
| private-ipv4 | 私网地址,脚本可据此生成配置 |
| network/interfaces 信息 | 网卡与子网相关数据 |
| 角色临时凭据 | 按平台支持情况获取,替代长期密钥 |
SSRF 类漏洞常借元数据接口窃取临时凭据:应用侧应对请求地址做白名单校验,并对元数据地址做封禁或强制鉴权(平台若支持则需要显式开启)。
元数据地址是平台内部服务地址,只在实例内部有效;把它配置到外部系统或在机房访问都不会有结果,这类「配置了却不生效」的问题通常源于误以为它是通用内网服务。