主流的 Chromium 内核浏览器都从系统读取代理,只有 Firefox 可以单独设置。本文逐一说明各浏览器的代理设置入口、 哪些扩展在 Manifest V3 之后仍然可用,以及为什么在 Chrome 中带密码的代理应按 HTTP 而不是 SOCKS5 接入。
浏览器获取代理有三种途径:从操作系统的系统设置读取,从浏览器自身的设置读取,或由扩展通过浏览器 API 控制。这决定了代理是否会影响其他程序、能否在不同配置文件中使用不同 IP,以及认证能否正常工作。
Chrome、Edge 和 Opera 都基于 Chromium,默认从操作系统读取代理设置。在 Windows 和 macOS 上,这些浏览器没有单独的代理窗口,设置里的对应选项只是打开系统设置。
Firefox 不同。它有自己的“连接设置”对话框,可以选择“不使用代理服务器”、“使用系统代理设置”、自动检测、“手动配置代理”或“自动代理配置的 URL(PAC)”。Firefox 默认同样使用系统设置,但手动配置只对 Firefox 自己生效。
第三种途径是扩展。扩展通过浏览器的 proxy API 工作,只改变它所在配置文件的代理。正因如此,对于“一个配置文件对应一个 IP”这类需求,扩展比系统代理更方便。需要注意:在 Chrome 中,同一时间只能有一个扩展控制代理,生效的是最后安装的那个扩展的设置,所以两个代理管理扩展无法同时工作。
一句话总结:系统代理作用于整台电脑,Firefox 设置只作用于 Firefox,扩展只作用于它所在的浏览器配置文件。要在不同配置文件中使用不同 IP,需要第三种方式。
在 Chrome 中打开 设置 → 系统 → “打开您计算机的代理设置”。Windows 上会打开系统设置中的“代理”页面,macOS 上会打开网络设置。Edge 的路径类似:设置 → 系统和性能 → 打开计算机的代理设置。在这里设置的内容不仅对浏览器生效,也对其他遵循系统代理的程序生效。
Chromium 文档中有一个重要细节:即使在系统设置中填写了用户名和密码,Chrome 也不会使用它们,而是按常规方式索取,也就是在代理要求密码时弹出认证窗口。对于 HTTP 代理,Chrome 支持与网站相同的认证方案:Basic、Digest、NTLM 和 Negotiate。
SOCKS 的情况要差一些。Chromium 支持 SOCKS4 和 SOCKS5,但文档明确写明:Chrome 中的 SOCKSv5 不支持任何认证方式。此外,使用 SOCKS5 时,Chrome 总是把域名解析(DNS)交给代理服务器完成,且无法更改。实际操作中的规则很简单:带用户名和密码的代理,在 Chromium 内核浏览器中按 HTTP 或 HTTPS 接入,而不是 SOCKS5。
对于开发和测试人员,还有一种不用扩展的方法:用 --proxy-server 参数启动 Chrome,例如 --proxy-server="http://host:port",同时通过 --user-data-dir 指定独立的配置文件目录。这样就能同时运行多个使用不同代理的 Chrome 实例。用户名无法写进参数,Chrome 会在认证窗口中询问。
系统级代理更适合用客户端来设置,参见 Windows 代理客户端 和 Mac 代理设置指南。
其他基于 Chromium 的浏览器,逻辑与 Chrome 相同:没有自己的代理输入框,设置中的代理入口打开的是操作系统的代理设置,因此在那里的修改会作用于整个系统,而不只是浏览器。如果只想让浏览器单独走代理,就安装代理扩展,前提是该浏览器支持安装 Chrome 应用商店的扩展。企业环境中,同样可以通过策略或启动参数(--proxy-server、--proxy-pac-url、--no-proxy-server、--proxy-auto-detect)配置代理,这是 Chromium 的通用机制。
Firefox 的代理在浏览器内部设置,不影响系统。打开 Firefox 设置,找到“代理设置”部分,点击“配置代理”按钮(最快的方法是在设置页的搜索框输入“代理”)。在旧版设置界面中,这部分叫“网络设置”,位于“常规”面板底部,按钮为“设置…”。点击后会打开“连接设置”对话框。
对话框中的模式包括:“不使用代理服务器”、“使用系统的代理自动发现”(并非所有系统都有)、“自动检测此网络的代理设置”、“使用系统代理设置”(默认选中)、“手动配置代理”和“自动代理配置的 URL(PAC)”。手动模式下有 HTTP 代理及端口字段、“也将此代理用于 HTTPS”复选框、单独的 HTTPS 代理、可选 SOCKS v4 或 SOCKS v5 的“SOCKS 主机”字段,以及“不使用代理”的例外列表。对 localhost、127.0.0.1/8 和 ::1 的连接始终不经过代理。
另外还有一个复选框“使用 SOCKS v5 时代理 DNS 查询”。如果不勾选,浏览器会自己通过网络服务商的 DNS 解析域名,即使 IP 已经换了,你的真实地区仍会通过 DNS 暴露。新版 Firefox 中这项设置(network.proxy.socks5_remote_dns)默认开启,但导入旧配置文件后建议检查一下。
限制与所有内置窗口相同:这里没有 SOCKS 5 的用户名和密码字段。带密码的 HTTP 代理,Firefox 会弹窗询问;带认证的 SOCKS5 则需通过扩展传递。Firefox 的代理 API 可以为 SOCKS 传递 username 和 password,所以 FoxyProxy 在 Firefox 中能使用这类代理,在 Chrome 中则不行。
Opera 中真正的代理设置方式与 Chrome 相同:设置 → 高级 → 浏览器 → “系统”部分 → “打开计算机的代理设置”。在打开的系统设置中填写服务器地址和端口,也可以排除本地地址。代理设置在系统层面,而不是浏览器内。
Opera 内置 VPN 则是另一回事。根据官方帮助,它是免费、不限流量、不记录日志的服务:在地址栏旁的按钮开启,并从欧洲、亚洲或美洲中选择一个地区。如果不选择地区,浏览器会自动分配最佳地区。它只改变浏览器自身流量的可见位置。
对于人们搜索“Opera 代理”时通常想完成的任务来说,这远远不够。无法选择城市、运营商或具体 IP,也无法通过 VPN 按钮接入自己的代理,而且地址由大量用户共享。要在 Opera 中使用自己的代理,请使用系统设置,或从 Opera Add-ons 安装代理管理扩展。
旧教程里最常见的推荐是 Proxy SwitchyOmega。原版扩展基于 Manifest V2,而 Google 已分阶段停用这类扩展:从 2024 年 10 月起开始在稳定版 Chrome 中停用,从 2025 年 7 月 24 日起(Chrome 138 开始),Manifest V2 对所有用户停用,且无法重新启用。在 Chrome 上,原版 SwitchyOmega 已不再可用。
ZeroOmega 是迁移到 Manifest V3 的 SwitchyOmega 分支。在 Chrome 应用商店中的名称为“Proxy SwitchyOmega 3 (ZeroOmega)”,同时上架了 Microsoft Edge Add-ons 和 addons.mozilla.org,在后者被标注为兼容 Firefox for Android。扩展免费,采用 GPL v3 许可,代码在 GitHub 开源。用法和以前一样:代理情景模式、快速切换、按规则自动切换,以及 PAC 脚本生成器。作者强调,该项目是独立的,与任何代理或 VPN 服务商无关。
FoxyProxy 自 2006 年起由同一团队开发,也已迁移到 Manifest V3。支持 Firefox、Chrome、Edge 及其他 Chromium 内核浏览器,免费开源。支持 HTTP、HTTPS、SOCKS4 和 SOCKS5,可按 URL 模式切换(通配符和正则表达式),内置模式测试器,支持按标签页、按容器以及为隐私窗口分配代理(这些模式仅在 Firefox 中可用),还能限制 WebRTC。FoxyProxy 的帮助文档特别说明:SOCKS5 的用户名和密码仅在 Firefox 中受支持,Chrome 中没有这项功能。
由此可以得出适用于所有 Chromium 内核浏览器的结论。代理有用户名和密码,就按 HTTP 添加到扩展里,认证由浏览器自己处理。只需要不带密码的 SOCKS5,就请服务商把访问权限绑定到你的 IP(白名单)。需要在浏览器中使用带密码的 SOCKS5,就用 Firefox + FoxyProxy。进阶用户的另一个方案是本地客户端:它接收带密码的 SOCKS5,再向浏览器提供一个无需认证的本地端口。这类软件我们在 Windows 代理客户端和 Proxifier 替代方案两篇文章中有详细介绍。
Chromium 内核浏览器通用规则:带用户名和密码的代理,在扩展中按 HTTP 添加。无论装哪个扩展,带密码的 SOCKS5 在 Chrome 中都无法完成认证;基于同一 Chromium 网络栈的 Edge 和 Opera 也未声明支持。本地客户端的详细介绍见 Proxifier 替代方案 和 Windows 代理客户端。
搜索“免费 Chrome 代理扩展”,结果几乎都是既提供软件又提供自家服务器的扩展。这些服务总要靠某种方式赚钱,而拥有全部网站访问权限的扩展,在技术上能看到你打开的每一个页面。Chrome 自己也会提示:控制代理的扩展可以监视、修改和中断你的流量。
这不是理论上的风险。2025 年 12 月,Koi Security 的研究人员披露,一款热门的免费 Chrome VPN 扩展在当年夏天更新后,开始收集用户与 AI 助手的对话:提问、回答和时间戳。据他们统计,同一发布者在 Chrome 和 Edge 上的另外七款扩展也存在同样行为。不卸载扩展就无法关闭这种收集。
第二个问题是 IP 本身。免费服务的地址由大量用户共享,社媒、电商平台和搜索引擎都很熟悉,验证码、反复验证和封禁是常态。做账号运营时,这样的 IP 往往还不如你自己家里的网络。
合理的方案是:用开源的免费扩展做切换器(ZeroOmega 和 FoxyProxy 不出售流量,也不提供自家服务器),再加上你自己付费、清楚 IP 归属的代理。
Android 上的普通 Chrome 不支持扩展。系统层面的办法是 Wi-Fi 网络设置中的代理:只支持 HTTP,只对该网络生效。Android 在这个字段下方就写着:HTTP 代理由浏览器使用,但其他应用可能不会使用。SOCKS5 和移动数据都覆盖不到。
要在手机浏览器里获得带切换功能的代理,最简单的是 Firefox for Android。自 2023 年 12 月起,Mozilla 为它开放了完整的扩展目录,ZeroOmega 和 FoxyProxy 都可以安装。要让整部手机走代理,需要隧道类应用,我们在安卓代理 App 指南中做了详细介绍。
iPhone 和 iPad 的情况类似:Wi-Fi 设置中的自带代理只支持 HTTP,不作用于蜂窝网络,并且要按网络逐个配置。SOCKS5 和蜂窝流量需要借助 Shadowrocket 这类客户端,详见专门的文章。
详细阅读: 安卓代理 App 指南 和 Shadowrocket 与 iOS 代理设置。
| 浏览器 | 代理设置位置 | SOCKS5 | 带密码的 SOCKS5 | 扩展来源 |
|---|---|---|---|---|
| Google Chrome | 设置 → 系统 → “打开您计算机的代理设置”(打开操作系统的代理设置) | 支持,需通过扩展、启动参数或策略(Windows 系统代理窗口中的 SOCKS 字段会被 Chromium 当作 SOCKS4) | 不支持 | Chrome 应用商店 |
| Microsoft Edge | 设置 → 系统和性能 → 打开计算机的代理设置(操作系统设置) | 支持,需通过扩展、启动参数或策略(Windows 系统代理窗口中的 SOCKS 字段会被 Chromium 当作 SOCKS4) | 不支持(Chromium 网络栈,未声明支持) | Edge Add-ons、Chrome 应用商店 |
| Opera | 设置 → 高级 → 浏览器 → 系统 → “打开计算机的代理设置” | 支持,需通过扩展、启动参数或策略(Windows 系统代理窗口中的 SOCKS 字段会被 Chromium 当作 SOCKS4) | 不支持(Chromium 网络栈,未声明支持) | Opera Add-ons |
| Mozilla Firefox | 设置 → “代理设置”部分 → “配置代理”(浏览器自己的对话框;旧版为 常规 → 网络设置 → 设置…) | 支持 SOCKS 4 和 SOCKS 5 | 通过扩展(FoxyProxy) | addons.mozilla.org |
| 工具 | 支持的浏览器 | 价格 | 备注 |
|---|---|---|---|
| ZeroOmega(Proxy SwitchyOmega 3) | Chrome、Edge、Firefox(含 Firefox for Android) | 免费,GPL v3 | Proxy SwitchyOmega 的 Manifest V3 分支。情景模式、按规则自动切换、生成 PAC。 |
| FoxyProxy | Chrome、Edge、Firefox 及其他 Chromium 内核浏览器 | 免费,开源 | HTTP、HTTPS、SOCKS4、SOCKS5;URL 模式匹配。按标签页和容器分配代理,以及带用户名和密码的 SOCKS5,仅限 Firefox。 |
| Opera 内置 VPN | 仅 Opera | 免费 | 不是扩展,而是 Opera 的服务。可选地区(欧洲、亚洲、美洲),不能接入自己的代理。 |
菜单名称可能因浏览器版本和操作系统而略有不同。官方页面: Chrome 应用商店中的 ZeroOmega、 FoxyProxy for Firefox、 Chromium 代理文档。
本教程适用于 Chrome、Edge、Opera 和 Firefox,不改动系统设置:代理只在安装了扩展的那个配置文件中生效。
先确定协议。在 Chrome、Edge 和 Opera 中,带用户名和密码的代理请按 HTTP 类型添加。在 Firefox 中配合 FoxyProxy 可以使用带用户名和密码的 SOCKS5。
安装 FoxyProxy 或 ZeroOmega。Chrome 从 Chrome 应用商店安装,Edge 可从 Edge Add-ons 或 Chrome 应用商店安装,Firefox 从 addons.mozilla.org 安装。
打开扩展设置,新建一个代理(FoxyProxy 在 Proxies 标签页中添加,ZeroOmega 中新建一个代理情景模式)。
选择类型(HTTP 或 SOCKS5),填入代理的主机和端口。Coronium 的 host:port:login:pass 格式对应四个字段:服务器、端口、用户名、密码。
在该代理条目的认证字段中填写用户名和密码。如果扩展不接受这些字段,可以留空:使用 HTTP 代理时,浏览器会在首次连接时弹窗要求输入。
保存配置,并在扩展菜单中启用:可以让全部流量走代理,也可以按 URL 模式只让指定网站走代理。
如果浏览器弹出输入用户名和密码的窗口,填入同样的信息即可。对 HTTP 代理而言,这是 Chromium 正常的认证机制。
在任意 IP 查询页面检查结果:应显示代理的 IP 和所在国家。然后检查 WebRTC 泄漏,FoxyProxy 为此提供了限制 WebRTC 的选项。
多账号场景下,为每个账号单独创建一个浏览器配置文件,并在每个配置文件中启用各自的代理。
IP 已经换了,网站还是能“认出”你?请检查 WebRTC 泄漏和时区:代理只改变地址,浏览器仍在发送自己的指纹。详细内容见 浏览器指纹暴露的 47 个数据点 和 User-Agent 与代理管理(英文)。
管理多个账号的基本方案很简单:每个账号一个独立的浏览器配置文件,每个配置文件装自己的切换扩展、用自己的代理。 这样 Cookie、会话和 IP 互不交叉。但这个方案有上限:同一台电脑上同一个 Chrome 的多个配置文件,发出的指纹是相同的, 包括显卡、字体、Canvas、WebGL 和时区。两三个账号这样就够了,而在风控严格的平台上运营几十个账号,更适合使用 指纹浏览器, 每个配置文件都有独立的指纹和代理。
无论哪种方式,扩展或指纹浏览器都只是传输工具,平台如何看待你,取决于出口 IP。数据中心地址和免费服务的 IP 很容易被平台识别, 而移动运营商的 IP 位于 CGNAT 之后,由大量真实用户共享,因此平台对它们通常更宽松。
Coronium 移动代理以 host:port:login:pass 格式提供,支持 HTTP 和 SOCKS5。 在 Chrome、Edge 和 Opera 中,请在 ZeroOmega 或 FoxyProxy 里按带用户名和密码的 HTTP 类型添加;在 Firefox 中配合 FoxyProxy, 可以使用带用户名和密码的 SOCKS5。出口显示的是真实 4G/5G 运营商的 IP。
为整个系统和单个程序设置代理。
通俗讲解协议,SOCKS5 与 HTTP 的区别,socks5h。
macOS 系统设置与代理客户端。
带认证的 SOCKS5 该用什么替代 Proxifier。
让整部手机走代理,而不只是浏览器。
iPhone 和 iPad 上的 SOCKS5 代理。
桌面与服务器端的 Linux 代理配置。
除了 IP,浏览器还暴露了哪些信息。
多账号运营常用的反检测浏览器对比。