年度优惠 买 1 个月,送 1 个月 适用于所有 VPS 与独立服务器,任意时长——付 12 个月,用 24 个月。 立即翻倍
首页 / 隐私托管指南 / 隐藏源站 IP:CDN、反向代理与仍会泄露的部分
隐私与支付

隐藏源站 IP

扛住攻击和保持不被找到是两个不同的问题,解决其中一个的安排可能悄悄毁掉另一个。网络层过滤能覆盖什么、CDN 额外带来什么代价、源站实际上是如何被找到的——以及如何自查你自己的服务器。

无需KYC
仅限加密货币
零日志
忽略 DMCA
完整Root权限
NVMe固态硬盘

"要不要在前面挂一个 CDN?"是大多数人买下离岸服务器之后问的第一个问题,而它没有单一的答案,因为这其实是披着一件外套的两个问题。扛住攻击和保持不被找到,是两个有着不同解法的不同问题,解决其中一个的安排,往往会悄悄地毁掉另一个。

这种混淆两个方向都很昂贵。有人把一个庞大的美国 CDN 挂在自己特意选择忽略 DMCA 的主机服务来存放的内容前面,结果把投诉窗口又交还给了自己本想避开的那类中间方。也有人干脆什么都不做,被网络层过滤从设计上就看不到的应用层洪水打垮,然后断定 DDoS 防护是骗人的。本指南把这两个问题分开来谈,说明每一层真正能做到什么,并把大部分篇幅留给决定结果的那部分:即便其他一切都配置正确,源站地址依然会泄露的六种方式。

看似一个问题的两个问题

你放在服务器前面的任何东西,做的都是两件事之一:挡住攻击,或者不让它的地址被人知道。这两件事重叠得足以让人混淆,又区别得足以让你在解决错了那个问题时白花钱。

你担心的是什么真正能解决它的是什么解决不了它的是什么
填满你带宽管道的流量型洪水(三层和四层)主机侧的网络边缘过滤,这里的每个套餐都自带你在服务器上安装的任何东西——等它生效时,管道早就满了
看起来像真实请求的应用层洪水(七层)CDN 或 WAF、缓存、限速、更便宜的接口包过滤——它只会看到合法的 HTTP 并放行
不应该有人能直接连到这台机器一个前端(CDN 或你自己的节点)加上一道只放行它的防火墙只有 CDN,而源站仍然回应整个互联网
不应该有人知道是谁在运营它无需 KYC 的注册、支付隐私、账户纪律再多的基础设施也无济于事——这是一个身份问题
内容必须扛得住投诉司法辖区,以及一个不会对投诉采取行动的主机商CDN——它增加的是一条投诉渠道,而不是移除一条

最后一行值得读两遍,因为它正是让人栽跟头的地方。这个页面上其他的一切都是工程问题,唯独这一行不是。

隐藏源站 IP
挡在你服务器前面的任何东西,同时也挡在你和投诉者之间——这在一个方向上是防护,在另一个方向上则是一个新的投诉收件地址。

你的主机商已经做了什么,又止步于何处

三层和四层过滤是我们所有套餐都自带的,不额外收费,而且运行在网络边缘,而不是你的服务器上——这也是它唯一能生效的地方,因为一条已经被打满的上行链路,不是运行在它后面的任何东西能修好的。带宽不限量计费,所以一次攻击不会变成一张账单。对大多数人口中的"DDoS"来说,这就是全部故事。

它看不到的是另一种攻击。四万个住宅地址,每秒对一个搜索接口发起五百次请求,这不是畸形流量,这就是流量。Slowloris 连接每隔几秒才慢悠悠发一个请求头,单独看每一个都很"礼貌"。用真实的 POST 请求体狂轰一个登录表单,在数据包这一层和一个繁忙的周一没有任何区别。没有任何包过滤能帮上忙,因为这些数据包本身没有任何问题。

判断你是否需要网络过滤之外更多防护的测试方法:一次格式完全正常的请求,能不能让你的服务器付出一次数据库扫描、一次图片缩放或一次密码哈希的代价?如果能,你就有一个七层的攻击面,解决办法是缓存、限速和更便宜的接口——不管前面有没有挂 CDN。

有一个方向的流量,我们确实会采取行动,这一点值得说清楚:源自我们网络的攻击和大规模垃圾邮件,可能会被空路由掉,以维持基础设施其他部分的健康运行。这是一项运维层面的措施,而不是内容层面的——我们的忽略 DMCA 主机指南更详细地讲了这个区别。

CDN 能隐藏什么,以及你因此继承来的投诉窗口

这套机制很简单,而且确实有效。你的域名解析到服务商的地址,客户端连接到那里,再由服务商回源到你的源站抓取内容。真实地址从不出现在客户端的连接里,所以只知道域名的人无法攻击到它。同样的手法也是 CDN 前置能用于抗审查代理的原因:审查方看到的是一个它承受不起封锁代价的地址。

随之而来的还有三件事,没有一件是藏在小字条款里的:

  • 边缘节点会终止你的 TLS。按设计,流量在服务商网络内部是明文的——缓存和过滤正是靠这一点才能工作。你的用户输入的任何内容,都会先到达一个第三方,然后才到达你。
  • 一条原本不存在的投诉渠道。投诉可以直接针对 CDN 提出,而 CDN 会回应这些投诉:转发给你、指认出你的主机商,或者终止对你的服务。如果你选择离岸的理由就是让投诉无处可去,那么在前面放一个美国中间方,就重新接上了你花钱打断的那条链条。
  • 一个账户。邮箱地址、支付方式,往往还有电话号码,与你的域名绑定,并被无限期保留。下文会详细说这一点,因为它通常是整套安排里最薄弱的一环。

这些都不代表 CDN 是错误的选择。它只是一个有两面的决定:对于有真实用户、真实七层压力的商店或应用来说,CDN 非常出色;而对于会招来下架通知的发布行为来说,它反而适得其反。我们在忽略 DMCA 的主机页面上对这个问题一贯的回答,就是这句话的简版:要扛下架,用你已经有的网络过滤,跳过 CDN。

源站地址依然会泄露的六种方式

这一节才是真正重要的部分,因为隐藏不是一件你能买到的产品——它是一种你要么维持、要么失去的属性,而失去它通常只需要几天,原因就在下面六件事之中。每天都有源站在配置完全正确的 CDN 背后被找了出来。

  • 证书透明度日志。为你的域名签发的每一张公开信任证书,都会在几分钟内被发布到公开、永久、可搜索的日志里。它们发布的不是你的地址,而是你的主机名——stagingmailvpn,还有你 2024 年随手建过一次的那个子域名。每一个都是一个待解析的候选项,只要其中一条记录没有指向前端,这场游戏就结束了。
  • DNS 历史记录。被动 DNS 服务会存档你的域名曾经解析过的每一个地址。事后再搬到 CDN 后面,并不会让已经记录下来的内容撤销发布——隐藏必须在域名第一次解析之前就开始,否则你需要的是一个新地址,而不是一个新前端。
  • 无法被代理的记录,以及你忘掉的那些记录。邮件交换记录必须指向一个可达的地方。只代理了 IPv4 时遗留下来的 AAAA 记录也是如此,还有旧的 FTP 或面板主机名、一个泛域名,或者那个已经存在三年、名义上还叫"临时"的开发主机。
  • 服务器发出的任何东西。源站发出的邮件会在 Received 邮件头里带上它的地址——一封密码重置邮件就是一次自助式的信息泄露。Webhook、出站的图片抓取、链接预览、pingback、更新检查和崩溃报告,全都会从真实地址主动发出连接,任何能让你的应用连接到自己控制的主机的人,都能借此获知这个地址。
  • 全网扫描。每一个 IPv4 地址都在被公开服务持续扫描和索引,结果几秒钟内就能查到。如果你的源站在 443 端口用你的证书应答,或者对任意 Host 头都返回你的首页,那么靠内容哈希、证书指纹或 favicon 哈希做一次匹配查询就够了。多数源站正是这样被找到的,而且查找者不需要付出任何成本。
  • 应用自己泄的底。包含原始地址的绝对 URL 和重定向、被遗漏开放的状态或指标接口、点名内部主机的详细堆栈跟踪、暴露后端信息的响应头,以及那个只要有人按地址访问就乐呵呵地把你的网站奉上的默认虚拟主机。
这六条里有五条是配置问题,不是密码学问题。清单里没有一条能靠升级到更贵的 CDN 套餐来解决,也没有一条是什么冷门手法——这就是任何人排查时最先按顺序检查的六件事。

锁死源站,只让前端能连到它

一种全靠没人猜中地址才能维持的隐藏,根本不是隐藏。只有当源站拒绝回应除前端之外的任何人时,这套安排才真正站得住脚——这样,一个泄露出去的地址顶多是个麻烦,而不会酿成事故。

  • 先默认拒绝,再放行前端。80 和 443 端口只接受服务商公布的地址段,并且自动刷新这份名单——这些地址段会变,一份过期的名单要么在最要命的时刻误放行,要么误拦截。其他所有东西,包括 SSH,都应该放在隧道或管理地址上,就像我们的首小时加固清单里说的那样。
  • 对前端做身份验证。CDN 和你源站之间的客户端证书——通常叫做经过身份验证的源站拉取——意味着即便有正确的地址加正确的 Host 头,没有证书也什么都拿不到。
  • 更好的做法:完全不开放任何入站端口。从源站到边缘的纯出站隧道,不管是 CDN 自带的连接器,还是连到你自己运行的节点的 WireGuard,都能让源站永远不监听任何公网接口。扫描找不到一个不会应答的东西,这是这套安排里最强的一个版本。
  • 一个虚拟主机,一个 Host 头。默认服务器应该什么有用的东西都不返回。如果你的网站靠地址就能加载出来,一周之内就会被扫描器匹配上。
  • 把邮件从网站源站上挪走。邮件必须可达,而且必须表明自己的身份;把它放在单独的一台机器上,正如邮件服务器指南所假设的那样。
  • 从外部验证。这份清单里的每一项检查,在服务器自己身上跑都毫无意义。要从一个不属于你的网络去测试。

用自己的前置节点代替 CDN

第三种选择常常被忽略,因为它没有营销预算:一台小型 VPS 作为对外的门面,一条加密隧道通向存放数据的那台机器,中间由 nginx 或 HAProxy 负责转发流量。从外面看,它和任何一台网站服务器没有区别。真正的那台在别处,完全不开放任何入站端口。

你得到的是不涉及任何第三方的隐藏——没有第三方账户,没有外部投诉窗口,没有陌生人替你终止 TLS。你还能得到一种原本很难买到的司法辖区拆分:前端放在用户所在的地方,数据放在对你有利的法律辖区,可以从我们的七个节点位置中选择。而且因为注册时没有绑定任何身份,前端是可以随意丢弃的——一个被烧掉的地址几分钟就能换掉,而不需要和谁谈判。

你得不到的是 anycast 那种容量。一个节点只有一个节点的容量,虽然我们的网络过滤会像保护其他任何服务器一样保护它,但一场真正大规模的流量型攻击,拼的是带宽,而这场比拼是全球网络才能赢的。诚实的定位是:前置节点是隐藏一个笨重或昂贵后端——存储阵列、GPU 主机、邮件服务器、数据库——以及拆分司法辖区的正确答案。它不能替代持续七层压力下的 CDN。

一张表说清楚怎么选

你的情况安排理由
会招来下架通知的发布行为直连,不用 CDN,在特意选定的司法辖区CDN 会增加一个投诉窗口,而你的主机商刻意不设这个窗口
有真实用户和七层压力的商店或 SaaS前面挂 CDN,源站只对其地址段放行七层正是 CDN 真正为之设计的问题
身处审查国家的翻墙接入点CDN 前置审查方看到的是一个它承受不起封锁代价的地址
大量静态或媒体流量用 CDN 分流缓存重点是带宽和延迟;隐藏只是附带效果
匿名是首要需求自己的前置节点,或者前面什么都不放第三方账户是一份你原本不会留下的身份记录
值得隐藏的笨重后端前置节点加纯出站隧道这台昂贵的机器永远不会出现在公网上

账户通常才是最薄弱的一环

想一想,当基础设施做到完美、而手续没做到位时会发生什么。服务器用门罗币支付,没有身份证件,没有邮箱地址——这正是我们无 KYC 主机页面描述的那种安排。然后,有人用一张信用卡、一个私人地址和一个电话号码开了一个 CDN 账户,并在里面登记了它所保护的那个域名。这个账户比服务器上的任何东西都是更有力、更持久的身份记录,掌握在一家会配合传票的公司手里,它把支付隐私彻底毁掉了。

解决办法并不复杂,只是很容易被忘记:如果目标是匿名,那么前端要么归你自己所有,要么它前面的那个账户,要做到和它身后的服务器一样用完即弃、无法追溯身份。服务器 OpSec一文详细讲了这套纪律,我们对离岸主机匿名性的坦率回答也直言不讳地说明了这条链条里通常最先断裂的是哪一环。几乎从来都不是技术层面的那一环。

用十分钟自查你自己的暴露面

下面每一项,都是一个感兴趣的人在最初几分钟内就会去查的东西。在你需要这些答案之前,先自己动手,从一台不是这台服务器的机器上跑一遍。

  • 列出你签发过的每一个主机名。在证书透明度搜索引擎里搜索你的顶级域名,把每一个结果都解析一遍。任何没有指向前端的结果都是一处泄露,包括你已经不再使用的主机。
  • 读一读自己的 DNS 历史。一次被动 DNS 查询会显示你的域名在接入 CDN 之前解析到过的地址。如果昨天的源站还是今天的源站,那这份隐藏就从来没有真正生效过。
  • 直接问一问源站。curl -sI --resolve example.com:443:198.51.100.10 https://example.com/——如果网站应答了,说明你的防火墙没有限制只让前端连接,任何有候选地址的人,一次请求就能确认这一点。
  • 粗暴地问一问它。curl -skI https://198.51.100.10/ 应该什么可辨认的内容都不返回。用默认虚拟主机把你的首页奉送出去,是这个页面里最常见的单一错误。
  • 检查每一种记录类型,不只是 A 记录。dig +short AAAA example.comdig +short MX example.com,以及透明度日志暴露出的每一个子域名的同样查询。没被代理的 IPv6 是个经典失误。
  • 从应用给自己发一封邮件。触发一次密码重置,读一读完整的 Received 链条。如果源站地址出现在里面,那么它也出现在你发送过的每一封邮件里。
  • 确认端口已经关闭。从一个无关的网络,nmap -Pn -p80,443 198.51.100.10 应该显示为过滤状态,而不是开放。
  • 去扫描索引里搜一搜。在一个公开的全网扫描索引里查一查你的证书指纹和首页的 favicon 哈希。如果你的源站已经被收录,这就是它会被找到的方式。

当地址已经被烧掉之后

要假设它会一直被烧着。一个已经出现在被动 DNS 和扫描索引里的地址,就成了永久性的公开记录,任何配置改动都撤不回来。应对方式是机械化的,而不是靠什么聪明的技巧。

  • 先堵住泄露点。不先堵上漏洞就换一个新地址,几天之内就会重现同样的局面,你等于白折腾了一次迁移,什么都没学到。
  • 然后再轮换。部署一台替代机器——如果原因是法律层面而不是技术层面,就换一个不同的司法辖区——恢复数据,再完成切换。因为第一台服务器从未绑定过任何身份,这是一次重新开始,而不是一场谈判,这正是购买没有账户历史的服务器所带来的实际的、不那么光鲜的好处。
  • 在紧急情况发生之前就准备好切换方案。短 DNS TTL、能从代码仓库重新部署的配置,以及一次经过测试的恢复流程,能把一个糟糕的下午变成二十分钟。没有人会在攻击进行中才来安排这些。
  • 妥善地退役旧地址。不要把旧服务器留在旧地址上、继续提供同样的内容;那等于给任何在盯着的人一次现场确认,还会让这条记录一直保持新鲜。

简版结论

网络层过滤处理流量型攻击,随服务器附带,不额外收费。CDN 处理应用层攻击并隐藏源站,代价是多出一个终止你 TLS、回应投诉、知道你是谁的中间方。你自己的前置节点能买到不带中间方的隐藏,但换不来全球容量。法律问题由司法辖区决定,这三种安排都碰不到它。而这一切,都可能被一条没被代理的记录、一封来自源站的邮件,或一个默认虚拟主机毁掉。

依据目标做决定,而不是依据习惯,然后花十分钟做一次自查——它找出的真实暴露面,比任何一次升级都多。如果你想要这套架构、又不想要那个第三方,一台小型 VPS 作为前端、真正的工作放在它身后的独立硬件上,是我们在已经被人找到过一次的用户身上最常见到的安排。

常见问题

源站 IP 与 DDoS——常见问题

01 CDN 能隐藏我服务器的真实 IP 地址吗?

它能让客户端看不到,这是主要的好处所在:访问者连接到的是 CDN,永远看不到你的地址。但它藏不住已经存在的公开记录,藏不住你服务器主动发出的任何东西,也藏不住能靠证书或首页内容匹配出你源站的全网扫描器。而且它只有在你的防火墙不让源站回应 CDN 以外任何人时才有效——否则,只要有一次确认成功的请求,这个地址就又能被利用了。

02 在前面挂上 Cloudflare 或其他 CDN,会不会让忽略 DMCA 的主机服务失去意义?

在实践中,会。CDN 是你服务链条中的一方,有自己的一套投诉处理流程:投诉可以直接针对它提出,而它通常会转发给你、指认出你的主机商,或者干脆终止对你的服务。这就重新接上了离岸主机原本要打断的下架链条。对于会招来投诉的内容,更好的安排是在特意选定的司法辖区做直连主机,配合服务器自带的网络层 DDoS 过滤。

03 仅靠三层/四层 DDoS 防护够用吗?

对于填满你上行带宽的流量型攻击来说,够用,而且这是唯一能在这个层面帮上忙的一层,因为它在流量到达你之前就已经生效。它随每个套餐附带,配合不限流量带宽,所以攻击也不会带来额外账单。它解决不了的,是由格式完全正常的请求组成的七层洪水。如果一次对你应用的请求就能触发一次数据库扫描或一次图片缩放,风险就出在这里,答案是缓存、限速和 WAF,而不是包过滤。

04 别人是怎么找到 CDN 背后的源站 IP 的?

几乎全部情况都逃不出六条路径:证书透明度日志暴露出没有被代理的子域名,被动 DNS 存档保留着这个域名迁移之前用过的地址,像邮件交换记录这类无法被代理的记录,服务器自身发出的出站连接(包括它自己的邮件头),靠证书或页面内容匹配源站的全网扫描,以及应用自己通过重定向、状态接口或默认虚拟主机泄露出自己的地址。这些方法都不需要任何技术门槛。

05 用了 CDN 还能保持匿名吗?

只有当这个账户和服务器一样匿名时才行,而这种情况很少见。CDN 账户会绑定一个邮箱地址、一种支付方式,往往还有一个电话号码,与你的域名关联在一起,被一家会配合法律程序的公司无限期保留。如果你用门罗币支付服务器费用、没有提供任何身份证件,随后却用个人信用卡开了一个 CDN 账户,那么现在这个账户就是整套安排里最有力的身份记录。要么把前端掌握在自己手里,要么让这个账户和其他一切一样,做到用完即弃。

06 小型网站需要做这些吗?

通常不需要。一个小型网站,放在一台自带网络层过滤、默认拒绝的防火墙、且不运行任何不必要服务的服务器上,就是一种再普通不过、也相当稳健的安排。只有当有具体理由需要隐藏这台机器时——比如受众里包含可能攻击它的人、后端的价值远高于前端,或者内容的主机安排本身就不想被张扬——源站的问题才会变得真实起来。

07 邮件服务器应该和网站用同一个 IP 吗?

不应该,而这正是源站最常见的暴露方式之一。邮件必须在一个无法被代理的地址上保持可达,而它发出的每一封邮件都会在邮件头里带上这个地址。把邮件放在单独的一台机器上,能让网站的源站不出现在你发出的任何一封邮件里,也不出现在任何人都能查询到的 DNS 记录里。这样做也能避免邮件信誉问题演变成网站问题。

08 我的源站 IP 已经泄露了,该怎么办?

把这个地址当作已经永久公开的信息来对待,因为被动 DNS 和扫描存档会一直保留它。先堵住泄露点,不管是一条没有被代理的记录、一条邮件路径,还是一个默认虚拟主机,然后换到新地址,用提前准备好的短 DNS TTL 完成切换。不要让旧服务器继续在旧地址上用同样的内容作答。既然最初这台服务器从未与任何身份绑定,替换它就只是一次普通的部署,而不必和任何人谈判。

把合适的那一层,挂在合适的服务器前面

每个套餐都自带网络层 DDoS 过滤和不限流量带宽,覆盖七个离岸司法辖区。每月几美元就能运行一个前置节点,把真正的工作放在它身后——无需 KYC,仅收加密货币。

查看VPS方案 忽略 DMCA 离岸托管