住宅代理

如何为住宅代理设置IP白名单

简短回答:住宅网关不使用IP白名单,而是使用凭据认证。以下是原因、白名单适用的场景,以及如何在那里进行设置。

Matt Brown

Matt Brown

2026年8月25日 · 1 分钟阅读

如果你以前用过代理,IP 白名单这个概念应该不陌生:你把服务器的地址注册到服务商那里,之后从这个地址发出的任何连接都会被放行,无需凭证。这是一种常见模式,从其他产品迁移过来的用户经常会去找这个设置项。

对住宅网关来说,直接的答案是:没有 IP 白名单这回事。每次请求都通过用户名和密码进行认证,凭证是唯一的认证机制。这是刻意的设计选择,而不是功能缺失,值得理解其中的原因,因为这会改变你保护访问权限的方式。白名单在产品线的其他地方确实存在,比如 ISP 代理和旧版按端口计费的套餐,本文会介绍如何在那里设置白名单。

为什么住宅网关使用凭证认证而非白名单

住宅产品是单一端点 p.shifter.io:443,所有的定向参数都包含在用户名内。请求一个带粘性会话的美国出口节点,和请求一个轮换的德国出口节点,用的是相同的主机和端口,只有用户名字符串不同。这种设计对认证方式有一个必然结果:凭证本身已经承载了每次请求的具体信息,所以无论如何它都必须出现在每一次请求中。

凭证认证还有一个明显更强的优势,就是可移植性,这一点比表面看起来更重要。白名单把访问权限绑定在固定的出口地址上,而现代基础设施中很大一部分根本没有固定地址。容器在重新调度时会获得新地址,自动伸缩组会不断增删节点,无服务器函数通过共享地址段出站且随时可能变化而不预先通知,CI 运行器是短暂存在的,笔记本电脑或家庭网络的用户地址是动态的,第二天就可能变了。在白名单模式下,上述每一种情况都会变成一张工单。而用凭证保存在密钥管理系统中,同一套配置可以在笔记本电脑、容器、CI 任务和生产集群中通用,不需要任何人去注册什么。

所以,如果你是来找住宅代理的白名单设置的,真正该配置的其实是凭证管理,下文会详细介绍。

白名单适用的场景

有两类产品使用源 IP 认证,如果白名单对你来说是硬性需求,可以关注这两类。

ISP 代理支持两种认证模式,你可以在面板中按套餐选择其中一种。在授权源 IP 模式下,你注册服务器的地址,然后用固定分配的 IP 连接端口 1337,完全不需要凭证。在用户名密码模式下,你可以从任何地方连接,只需凭证,每个 IP 对应一行配置。这里的取舍和前面说的完全一样:白名单让凭证完全不出现在代码里,代价是只能从已注册的地址访问。ISP 代理和轮换住宅代理是不同的产品,前者是固定分配的静态地址,而非轮换池,如果你在两者之间做选择,可以参考 ISP 代理与住宅代理对比什么是静态住宅代理

旧版端口列表套餐仅通过源 IP 认证。分配给你的每个端口都有各自的子域名,你需要在面板中把服务器地址加入白名单,或者通过旧版管理 API 管理这个列表,然后就可以连接列表中的任意端口。如果你用的是这类套餐,白名单不是可选项,而是唯一的认证方式。关于行业为什么放弃这种模式的背景,可以参考为什么按端口计费的时代已经结束

在 ISP 代理上设置白名单

具体操作很直接,但有两个细节最容易出问题。

首先,要注册你的出口地址,而不是本地地址。真正重要的地址是你的流量对外呈现的公网地址,这不是你的局域网地址,不是容器的内部地址,也不是在机器上运行 ifconfig 打印出来的地址。要在实际发起请求的机器上确认这个地址:

# run this ON the server that will connect to the proxies
curl -s https://ipinfo.io/ip

如果你的基础设施通过 NAT 网关或负载均衡器出站,那么需要注册的是这个共享地址,而且最好确认它是稳定的,而不是动态分配的。

其次,要在面板的 ISP Proxies 界面中审慎地选择认证模式,因为这两种模式是互斥的替代方案,而不是叠加使用的系统。一旦进入授权源 IP 模式,连接时就不需要任何凭证:

# authorized source IP mode: no username or password
curl -x 185.199.108.153:1337 https://ipinfo.io/json

如果返回错误,而你确信地址已经注册,常见原因包括:出口地址发生了变化;注册的是 IPv4 地址但流量实际通过 IPv6 出站(或反过来);又或者请求来自与你测试时不同的节点。

明确说明这里的取舍

白名单把密钥从代码和配置中彻底移除,这确实很有价值:仓库里没有可泄露的东西,不需要轮换,也不会出现在日志里。它的弱点是一旦你的出口地址发生变化就会失效,而且无法支持从没有固定地址的任何地方访问。

凭证认证具备可移植性,能在任何环境下使用,但凭证本身就是你需要自行保管的密钥,这意味着它应该放在密钥管理系统里而不是源码中,并且需要一套轮换方案。

两者本质上并无孰优孰劣之分,只是失效方式不同,正确的选择取决于你的基础设施是否具有稳定的出口地址。

保护住宅代理凭证的方法,因为这里没有白名单

如果你用的是住宅网关,这一节就是替代白名单的方案。

把凭证排除在源码控制和容器镜像之外,通过环境变量从密钥管理系统中加载。尽可能为每个环境使用独立的凭证,这样开发环境凭证泄露不会波及生产环境。把轮换当作一次部署来对待,而不是面板上点一下的操作:先更新密钥存储,再滚动更新客户端,最后再让旧值失效,因为任何仍持有旧密码的客户端一旦凭证失效就会开始返回 407,这是修复 407 及凭证错误一文中提到的最常见的自造问题。

然后再控制另一端。即使没有服务商侧的白名单,你仍然可以用普通的出站规则、网络策略或安全组来限制自己系统中哪些部分能够访问网关,这样即使凭证泄露,从你基础设施之外也难以利用。同时监控带宽用量,因为异常的消耗正是凭证已经泄露的信号,如果你已经有了自己的流水线监控基线,这个信号会更容易察觉。

常见错误

注册像 10.x192.168.x 这样的私有地址,这类地址永远不可能匹配,因为服务商只能看到公网出口地址。把笔记本电脑或家庭网络加入白名单,结果路由器重启导致地址重新分配后就无法使用了,这种情况让人措手不及。忘记自动伸缩会带来使用不同地址的新节点。注册了 IPv4 地址,而流量实际是通过 IPv6 出站的。以及误以为某个产品上的白名单条目对另一个产品同样有效:ISP 代理的白名单对住宅网关没有任何作用,住宅网关仍然会要求提供凭证。

总结

住宅网关没有 IP 白名单,这是设计使然:定向参数存在于用户名中,所以凭证无论如何都会出现在每次请求里,而凭证认证能在容器、自动伸缩、CI 以及动态连接等白名单会失效的场景中持续正常工作。如果你确实需要源 IP 认证,ISP 代理提供了两种可选模式中的一种,旧版端口列表套餐则完全依赖这一种,无论哪种情况,需要注册的都是你的公网出口地址,而非任何本地地址。在住宅代理上,用严谨的凭证管理来取代白名单:使用密钥管理系统、按环境区分凭证值、制定先更新客户端再让旧密码失效的轮换流程,再加上你自己这一端的出站控制和用量监控。

所有产品完整的认证参考文档在认证文档中,网关相关的具体细节在网关与认证中。产品本身是住宅代理,一个端点、一对凭证即可覆盖所有国家和会话模式,并采用按 GB 计费

准备好开始了吗?

试用 Shifter 住宅代理,205M+ 个 IP,195+ 个国家,低至 $0.75/GB。

立即开始