macOS 系统代理怎么设置?按协议选择、验证与关闭代理
简答:macOS 系统代理通常在“系统设置 → 网络 → 当前网络服务 → 详细信息 → 代理”中设置。先从代理提供方确认服务器地址、端口、账号和密码,再按用途勾选 HTTP、HTTPS、SOCKS 或 PAC;设置后要分别验证浏览器和终端,因为系统代理不一定覆盖所有应用。
定义:macOS 系统代理是针对某个网络服务保存的代理规则,用于让支持系统代理的应用通过指定的 HTTP、HTTPS、SOCKS 或 PAC 配置访问网络。
先看最快设置方法:新版 macOS 的系统代理入口
如果你只想先把代理配置好,可以按下面的最短流程操作。Apple 当前帮助文档给出的路径是:打开苹果菜单,进入“系统设置”,选择“网络”,点选正在使用的网络服务,再点“详细信息”和“代理”。Apple 官方代理设置说明
- 打开“系统设置 → 网络”。
- 选择当前实际联网的服务,例如“Wi-Fi”或“以太网”。
- 点“详细信息 → 代理”。
- 根据代理提供方给出的信息,打开对应协议,填写服务器地址和端口。
- 如果要求认证,再勾选“代理服务器要求密码”,填写用户名和密码。
- 点“好”,重新打开需要使用代理的应用并进行验证。
如果你同时使用 Wi-Fi 和以太网,它们是不同的网络服务,代理设置可能需要分别保存。Apple 将网络服务定义为针对特定网络接口的一组设置,因此不要只配置当前未连接的服务。Apple 官方网络服务说明
按需求选择 HTTP、HTTPS、SOCKS5 还是 PAC
| 选项 | 适合什么情况 | 需要填写什么 | 注意事项 |
|---|---|---|---|
| 网页代理(HTTP) | 代理提供方明确给出 HTTP 代理,或主要处理普通网页请求 | 服务器地址、端口、可选账号密码 | 不要因为名称里有“网页”就默认它能覆盖所有应用 |
| 安全网页代理(HTTPS) | 代理提供方明确要求 HTTPS 代理 | 服务器地址、端口、可选账号密码 | 它与访问 HTTPS 网站不是同一个概念,按提供方参数填写 |
| SOCKS 代理 | 代理提供方给出 SOCKS 或 SOCKS5 参数,或应用明确支持 SOCKS | 服务器地址、端口、可选账号密码 | 部分应用不读取 macOS 的 SOCKS 设置,需要在应用内部单独配置 |
| 自动代理配置 | 你拿到的是 PAC 文件地址 | PAC 文件 URL | 不要把服务器地址和端口误填到 PAC URL 栏 |
| 自动发现代理 | 所在网络管理员要求通过自动发现获取代理 | 通常不需要手填服务器 | 个人网络没有明确要求时,不建议随意打开 |
Apple 的代理设置页面列出了自动发现、PAC、HTTP、HTTPS 和 SOCKS 等选项,并说明手动配置时需要输入服务器地址和端口;是否需要账号密码则取决于代理服务器。Apple 官方代理输入步骤
可以把代理提供方给出的参数整理成下面的格式,避免复制时漏项:服务器地址:proxy.example.com;端口:8080;用户名:user_example;密码:不要直接发布到聊天记录或截图中。以上只是脱敏示例,不代表任何实际服务。
新版 macOS 与旧版 macOS 的入口差异
| 系统界面 | 设置路径 | 操作重点 |
|---|---|---|
| 较新的 macOS | 系统设置 → 网络 → Wi-Fi 或以太网 → 详细信息 → 代理 | 先选实际联网的网络服务,再进入“代理” |
| 较早版本 macOS | 系统偏好设置 → 网络 → 选择服务 → 高级 → 代理 | 旧界面通常通过“高级”进入代理列表 |
如果你在新版界面中找不到“代理”,先确认是否点进了具体网络服务,而不是停留在“网络”总览页。Apple 当前帮助文档把代理入口放在网络服务的“详细信息”内;较早界面和不同系统版本的按钮名称可能不同,应以当前屏幕显示为准。
如果担心改坏原来的网络设置,可以先建立一个新的网络位置,再在新位置中测试代理。Apple 说明,网络位置可以保存不同的 Wi-Fi、以太网和其他网络设置,出现问题时可切回原位置。Apple 官方网络位置说明
忽略主机与域名怎么填
在代理设置中,“忽略这些主机与域的代理设置”用于指定不经过代理的地址。常见的本地或内网目标可以按实际需要添加,例如:
localhost127.0.0.1*.local- 公司内部域名,例如
intranet.example
多个项目通常使用逗号分隔。Apple 的说明支持填写单个域名、带星号的域名以及域名中的特定部分,例如用星号表示该域下的网站。Apple 官方绕过域名说明
不要把“忽略列表”当成加速规则列表。添加后,这些目标会绕过代理;如果某个办公系统原本必须通过代理访问,错误加入忽略列表反而可能导致连接失败。
设置完成后怎么验证:浏览器、curl 和应用分开检查
系统代理设置完成后,不要只看开关是否打开。建议按以下顺序检查:
- 浏览器验证:打开一个平时可访问的网页,再访问一个需要代理的目标。如果浏览器完全打不开,先检查地址、端口、认证信息和代理协议。
- 终端验证:在终端运行
scutil --proxy查看当前系统代理状态。它适合确认系统配置是否存在,但不能证明每个命令行程序都会使用该配置。 - curl 单独验证:如果你有 HTTP 代理,可以使用脱敏参数测试:
curl -I -x http://HOST:PORT https://example.com。不要把真实用户名和密码写入可共享的命令历史或截图。 - 应用验证:分别检查邮件客户端、开发工具、即时通信软件或办公软件。部分应用有自己的代理设置,也有应用不会读取 macOS 系统代理。
系统代理的作用范围取决于应用是否遵循系统网络设置。它不等于所有流量都会自动经过代理,也不等于 TUN 模式。若某个客户端已经启用了 TUN、网络扩展或独立代理,可能需要按照该客户端的说明确认是否与系统代理重复。
终端配置与 networksetup:适合查询和批量处理的用户
普通用户优先使用图形界面。需要脚本化或排查时,可以先在终端查看本机帮助:
man networksetup
networksetup -help
networksetup -listallnetworkservices
scutil --proxynetworksetup 的命令参数会随系统版本和网络服务名称变化,执行修改前应先用 -listallnetworkservices 确认服务名称;如果服务名称含空格,要用引号包起来。修改网络设置通常需要管理员权限,建议先记录当前状态,再进行单项修改。
一个更稳妥的命令行流程是:
- 列出网络服务,确认实际使用的是“Wi-Fi”还是“以太网”。
- 用本机
networksetup帮助确认对应的查询、启用和关闭参数。 - 只修改一种代理协议,避免同时启用互相冲突的设置。
- 用
scutil --proxy复查状态。 - 用浏览器和明确指定代理的
curl分别验证。
如果你只是想让当前终端会话使用代理,也可以在终端程序或工具自身的配置中设置环境变量;这与 macOS 图形界面的系统代理不是同一层级,关闭终端变量不会自动清除系统代理。
macOS 系统代理不生效:按症状分流
| 现象 | 优先检查 | 回退方法 |
|---|---|---|
| 设置后完全无法联网 | 地址、端口、协议是否匹配;账号密码是否正确 | 关闭刚启用的代理,只保留一个协议后重新测试 |
| 浏览器能用,终端不能用 | 终端工具是否读取系统代理 | 使用工具自身的代理参数或环境变量单独验证 |
| 终端能用,某个应用不能用 | 应用是否有独立代理设置,是否支持 SOCKS 或 PAC | 在该应用内部配置,或查阅应用当前版本帮助 |
| 只有 Wi-Fi 能用,以太网不能用 | 是否只给一个网络服务设置了代理 | 切换到以太网服务,重新进入“详细信息 → 代理” |
| 反复出现代理冲突 | 是否同时运行独立代理客户端、VPN、网络过滤软件或 TUN | 暂时关闭其中一项,逐个恢复并记录变化 |
| 切换网络后配置失效 | 当前连接是否换了服务或网络位置 | 确认当前服务名称,必要时建立独立网络位置 |
如果系统提示网络设置与某些隐私或过滤功能不兼容,可以检查已安装的 VPN、网络过滤软件或其他网络扩展。Apple 也提醒,第三方 App 安装的扩展或数据包过滤规则可能影响相关网络功能。Apple 官方网络兼容性排查说明
如何关闭代理并恢复直连
- 打开“系统设置 → 网络”。
- 选择当前使用的 Wi-Fi 或以太网服务。
- 进入“详细信息 → 代理”。
- 关闭已经勾选的 HTTP、HTTPS、SOCKS、自动代理配置或自动发现代理。
- 点“好”,重新打开浏览器或相关应用。
如果关闭图形界面代理后终端仍表现异常,再检查终端环境变量、应用自身代理、网络扩展和 TUN 设置。不要只删除账号密码,因为协议开关仍可能保持启用状态。
安全提醒:代理参数、PAC 和证书不要随意安装
- 不要公开包含服务器地址、用户名和密码的截图或完整配置文件。
- 不明来源的 PAC 文件可能改变不同网站的连接路径,使用前先确认来源。
- 不要因为“代理认证失败”就反复发送密码;先核对协议、端口和账号是否属于同一组参数。
- 如果某个客户端要求安装根证书或网络扩展,应先确认用途、发布者和系统提示,再决定是否授权。
- 连接问题应先做最小化测试:关闭多余代理、只保留一种协议、使用一个网络服务验证。
常见问题
macOS 系统代理在哪里设置?
新版 macOS 通常进入“系统设置 → 网络 → Wi-Fi 或以太网 → 详细信息 → 代理”。较早版本通常是“系统偏好设置 → 网络 → 选择服务 → 高级 → 代理”。具体按钮名称以当前系统界面为准。
HTTP、HTTPS 和 SOCKS5 应该选哪个?
优先按照代理提供方给出的协议选择。给出 HTTP 参数就填网页代理,给出 HTTPS 参数就填安全网页代理,给出 SOCKS 或 SOCKS5 参数就填 SOCKS;不要因为网站使用 HTTPS 就自行把 HTTP 参数改成 HTTPS。
为什么浏览器能用,但终端或某个应用不能用?
系统代理不保证覆盖所有程序。终端工具和独立应用可能使用自己的代理设置、环境变量、网络扩展或 TUN。可以用 scutil --proxy 查看系统配置,再用 curl 的显式代理参数进行对照测试。
Wi-Fi 和以太网需要分别设置代理吗?
通常应分别确认。macOS 会为不同网络接口保存网络服务设置;如果你切换到以太网后代理失效,应进入以太网服务的“详细信息 → 代理”重新检查。
macOS 代理设置错了,怎样恢复直连?
进入当前网络服务的“代理”页面,关闭 HTTP、HTTPS、SOCKS、自动代理配置和自动发现中已经启用的项目,然后点“好”。如果仍异常,再检查终端环境变量和应用内部代理。
PAC 文件和手动代理有什么区别?
手动代理通常把服务器地址和端口直接应用到对应协议;PAC 是一个自动配置文件,由规则决定哪些目标走代理、哪些目标直连。PAC 地址应填写在“自动代理配置”的 URL 栏中。
相关阅读
- 继续看 macOS 客户端安装、订阅导入与连接验证
- 如果代理连接后打不开网页,查看 DNS 排查步骤
- 连接成功但网页打不开时,按现象逐项定位
- 从 Windows 换到 macOS 时,查看设置迁移与权限确认方法