如何在 Cloudflare 之后安全地查找真实源 IP(以及如何修复泄漏)

发布: (2026年1月17日 GMT+8 07:01)
9 min read
原文: Dev.to

Source: Dev.to

请提供您希望翻译的具体文本内容,我将按照要求保留源链接并进行简体中文翻译。

为什么 Cloudflare 不能隐藏你的 MX IP

  • MX 记录告诉全世界邮件应该投递到哪里。
  • Cloudflare 无法像代理 HTTP/HTTPS 那样代理 SMTP 邮件,所以邮件服务器需要一个 真实、可公开访问的 IP 地址

关键点: 你的 MX IP 并不会自动成为你的网站源 IP,但当你在同一台服务器上托管邮件和网站时,它常常会成为源 IP。

您将在此审计中回答的问题

  1. MX 使用了哪些主机名?
  2. 这些 MX 主机名解析到哪些 IP 地址?(在多个解析器中确认)
  3. 该 IP 属于谁,属于什么类型的网络?(托管、ISP、可疑等)
  4. 该 IP 是否在任何黑名单上?(对邮件投递和风险信号有用)

第一步 – 查找 MX 主机名

  1. 打开 DNS 记录查询工具,例如 NetworkWhois – DNS Records

  2. 输入:

    • 域名: example.com
    • 记录类型: MX
  3. 记录出现的 MX 目标,例如:

    • mail.example.com
    • mx1.provider.tld
    • example-com.mail.protection.outlook.com (Microsoft 365)
    • aspmx.l.google.com (Google Workspace)

检查域名 MX 记录名称

记录准确的 MX 主机名——你将在下一步解析它们。

第 2 步 – 将 MX 主机名解析为 IP(并确认一致性)

  1. 访问 NetworkWhois – DNS Propagation

  2. 对每个 MX 主机名执行以下操作:

    • 输入: MX 主机名(例如 mx.example.com
    • 选择记录类型: A(如果使用 IPv6 也选择 AAAA
    • 运行检查
  3. 查找主要解析器之间的一致性。示例输出:

DNS Server          Status      IP Address   TTL
Google (8.8.8.8)    Propagated  192.0.2.10   3600
Cloudflare (1.1.1.1) Propagated  192.0.2.10   3600
Quad9 (9.9.9.9)     Propagated  192.0.2.10   3600

检查域名 MX 记录 IP

这告诉你: 邮件服务器主机名在所有地方解析到相同的公共 IP —— 这就是 公共邮件 IP

快速“同一服务器”检查

如果你的网页和邮件服务器共用同一台机器,通常会看到以下一种或多种情况:

  • mx.example.com 解析到与你的网站源站相同的 IP。
  • cpanel.example.comwebmail.example.com 也解析到该 IP。
  • 你的根域名(example.com)只有 DNS‑only 记录指向相同的 IP(或你忘记为某个主机名开启代理)。

将你获取的 IP 与你控制的主机名的 IP 进行比较,例如:

  • origin.example.com
  • cpanel.example.com
  • webmail.example.com
  • 任意 “灰云”(仅 DNS)记录

第3步 – 对 IP 进行 WHOIS 查询以识别所有者

  1. 使用您发现的 IP(例如 192.0.2.10)。
  2. 使用 NetworkWhois – WHOIS Lookup

Check IP owner/company

在 WHOIS/Hazard 报告中需要关注的内容:

  • ASN 类型 – 托管提供商(通常用于 VPS/专用服务器)、住宅/移动(常用于生产邮件时不正确)、代理/Tor(高风险)。
  • 声誉标记 – Spamhaus、UCEPROTECT、“已知为邮件服务器”、“托管可能性”、“Bogon”、“不可达”等。

这些信号并非法律证据,但能提供有价值的上下文。干净的托管 ASN 没问题;如果出现“高风险代理、到处被列出”等结果,则表明声誉存在问题或系统可能已被妥协。

第4步 – 检查 IP 是否在黑名单上(邮件投递性与风险)

  1. 访问 NetworkWhois – IP Blacklist Checker
  2. 粘贴相同的 IP 地址。

该工具会查询主要的 DNSBL(Spamhaus、SORBS 等),并显示任何列入的记录。

如果 IP 出现在黑名单上,您需要先解决根本问题(垃圾邮件、开放中继、服务器被入侵等),否则邮件投递性会受到影响。

如果发现不想要的“隐藏”来源该怎么办

  1. 分离服务 – 将邮件迁移到其他服务器或 IP。
  2. 代理仅网页的主机名 – 对所有面向网页的记录使用 Cloudflare(橙云),仅保留指向邮件服务器的 MX 记录。
  3. 更新 DNS – 确保所有暴露来源的“灰云”记录都改为指向代理或其他 IP。
  4. 监控声誉 – 定期重新执行 WHOIS 和黑名单检查,尤其是在任何基础设施变更后。

TL;DR

  • MX 记录会暴露公共 IP,因为 SMTP 无法被代理。
  • 如果网页和邮件托管在同一台服务器上,该 IP 往往会泄露你的网站来源。
  • 使用公共 DNS 工具枚举 MX 主机名,解析它们,执行 WHOIS 并检查黑名单。
  • 如果该 IP 与你的网站来源相同且不想暴露,请将邮件迁移出该服务器或为仅网页的主机名设置代理。

审计愉快! 🚀

Mail server vs. web origin IP

为什么这一步很重要

  • 如果该 IP 是你的邮件服务器 IP,被列入黑名单可以直接解释垃圾邮件文件夹问题和退信。
  • 如果该 IP 也是你的网站来源,被列入黑名单可能表明服务器被滥用、被入侵,或之前被用于发送垃圾邮件。

如果确认 MX IP 与网站源 IP 相同该怎么办

如果您的邮件服务器和网站共享同一个 IP,并且您希望保持源 IP 私密,您只有少数几种实际可行的选项。

选项 1 – 将邮件与网站分离 (最佳、最简便)

将邮件迁移至:

  • 专用邮件服务商(Google Workspace、Microsoft 365、Mailgun 等)
  • 拥有独立 IP 的独立邮件 VPS

结果: MX 只会显示邮件 IP;您的网站源 IP 仍然隐藏在 Cloudflare 后面。

选项 2 – 在同一服务器上保留邮件,但接受源 IP 暴露

这是常见的 cPanel 场景。如果您什么也不做,任何检查 MX 记录的人都能发现您的源 IP。这并不一定“危险”,但您应相应地对服务器进行加固。

加固检查清单

  • 防火墙 只允许 Cloudflare IP 段访问 80/443 端口,阻止其他来源访问源服务器。
  • 锁定管理面板/wp-admin/cpanel/plesk),使用 IP 白名单、多因素认证(MFA)和速率限制。
  • 移除不必要的仅 DNS 主机名,这些主机名指向源服务器(例如 direct.example.comorigin.example.com、旧的子域名)。
  • 禁用未使用的服务,并积极应用补丁。

选项 3 – 使用邮件网关或中继

如果必须保留本地邮箱,但希望拥有更好的声誉和分离度,可使用出站中继。入站邮件仍需要指向可达的 MX,因此这只是部分解决方案。

即使“使用 Cloudflare”也会泄露源站的常见漏洞

  • mail.example.com 直接指向源站,且该站点与同一服务器共享。
  • cpanel.example.comwebmail.example.comdirect.example.com 为仅 DNS 记录,暴露了源站。
  • 你为 www.example.com 设置了代理,但忘记了根域(@)。
  • 旧的子域仍解析到服务器 IP,尚未清理。
  • 服务记录(SRV、TXT 等)无意中泄露了源站主机名。

修复这些问题主要是做好 DNS 卫生和网络加固。

立即尝试 – 5 分钟审计

  1. 查找 MX 主机名
  2. 解析 MX 主机名
  3. 验证所有权

按照清单操作,您就能了解您的 Web 源是否暴露以及接下来需要采取的措施。

Back to Blog

相关文章

阅读更多 »