Surge 新手入门:简单易懂的网络代理设置指南
网络代理,对于许多新手来说,可能是一个既神秘又令人却步的概念。但随着网络环境的日益复杂,掌握网络代理的使用方法,特别是像 Surge 这样功能强大的代理工具,对于提升网络体验、保护隐私安全,乃至突破地域限制访问特定内容,都显得越来越重要。
Surge,以其强大的策略路由、灵活的脚本功能和出色的性能表现,在网络代理领域赢得了良好的口碑。然而,对于初学者而言,Surge 的配置过程可能会让人感到有些复杂。本文旨在为 Surge 的新手用户提供一份详尽且易于理解的入门指南,帮助你从零开始,轻松掌握 Surge 的基本配置和使用方法,开启你的网络代理之旅。
一、什么是 Surge?理解 Surge 的核心概念
在深入配置之前,我们需要先了解 Surge 到底是什么,以及它的一些核心概念。
-
Surge 的定义: Surge 是一款基于 macOS 和 iOS 平台的高级网络代理工具。它并非简单的 VPN 或代理软件,而是构建在网络底层,可以拦截所有网络流量,并根据用户预先设定的规则进行处理。
-
Surge 的核心功能:
- 代理转发: Surge 可以将你的网络流量转发到指定的代理服务器,从而实现科学上网、隐藏 IP 地址等目的。
- 规则引擎: Surge 最强大的功能之一是其灵活的规则引擎。你可以根据不同的网站、域名、IP 地址等条件,设置不同的代理策略,实现精细化的流量控制。例如,你可以让国内网站直连,国外网站走代理,从而提高访问速度。
- 脚本支持: Surge 支持 JavaScript 脚本,可以实现各种自定义功能,例如广告拦截、修改 HTTP 请求头、重定向网页等。
- MITM 解密: Surge 可以通过 MITM (Man-in-the-Middle) 技术解密 HTTPS 流量,配合脚本实现更高级的功能,例如修改网页内容、抓包分析等。但需要注意的是,MITM 解密存在一定的安全风险,请谨慎使用。
- 模块化配置: Surge 支持模块化配置,可以将常用的规则和脚本打包成模块,方便共享和管理。
-
关键概念:
- 代理服务器 (Proxy Server): Surge 只是一个客户端,它本身并不提供代理服务。你需要自己购买或搭建代理服务器,例如 Shadowsocks、VMess、Trojan 等协议的服务器。
- 配置文件 (Configuration File): Surge 的所有设置都保存在一个配置文件中。你可以手动编辑配置文件,也可以使用 Surge 提供的界面进行配置。
- 规则 (Rules): 规则是 Surge 的核心组成部分,用于指定哪些流量应该走代理,哪些流量应该直连。
- 策略组 (Policy Group): 策略组是一组代理服务器的集合。你可以根据不同的需求,创建不同的策略组,例如“速度优先”、“稳定优先”等。
- 模块 (Module): 模块是一个包含规则、脚本和其他配置信息的集合。你可以将常用的配置打包成模块,方便管理和共享。
二、准备工作:安装 Surge 和获取代理服务器
在使用 Surge 之前,你需要做好以下准备工作:
- 安装 Surge:
- macOS: 在 Mac App Store 中搜索 “Surge for Mac” 并购买安装。
-
iOS: 在 App Store 中搜索 “Surge” 并购买安装。 由于 App Store 的审核政策,Surge 可能不总是可用,你需要自行寻找安装方法,例如使用美区 Apple ID 下载。
-
获取代理服务器: 你需要购买或搭建一个可以使用的代理服务器。常见的选择包括:
- Shadowsocks (SS): 一种轻量级的代理协议,配置简单,速度快。
- VMess: V2Ray 的核心协议,功能强大,安全性高。
- Trojan: 一种伪装成 HTTPS 流量的代理协议,可以有效避免被墙。
- WireGuard: 一种新型 VPN 协议,速度快,安全性高。
你可以通过以下方式获取代理服务器:
* 购买付费服务: 许多商家提供付费的代理服务,例如机场、VPN 服务商等。
* 自建代理服务器: 你可以使用云服务器 (例如 AWS、Google Cloud、Azure) 搭建自己的代理服务器。这需要一定的技术基础,但可以更好地控制服务器的安全性。
- 获取代理服务器信息: 你需要获取代理服务器的相关信息,包括:
- 协议 (Protocol): 例如 Shadowsocks、VMess、Trojan 等。
- 服务器地址 (Server Address): 服务器的 IP 地址或域名。
- 端口 (Port): 服务器监听的端口号。
- 密码 (Password): 连接服务器的密码。
- 加密方式 (Encryption Method): 例如 aes-256-cfb、chacha20-ietf-poly1305 等。
- 额外参数: 例如 VMess 的 UUID、AlterID,Trojan 的 SNI 等。
三、配置 Surge:手动配置与图形界面配置
Surge 支持两种配置方式:手动编辑配置文件和使用图形界面配置。对于新手来说,建议先从图形界面配置入手,熟悉 Surge 的基本操作,然后再尝试手动编辑配置文件。
1. 图形界面配置:
- 打开 Surge: 安装完成后,打开 Surge 应用。
- 进入配置界面: 在 Surge 的主界面上,点击 “Config” 或类似的按钮,进入配置界面。
- 添加代理服务器: 点击 “+” 按钮,选择相应的代理协议 (例如 Shadowsocks、VMess、Trojan)。
- 填写代理服务器信息: 根据你获取的代理服务器信息,填写服务器地址、端口、密码等信息。
- 设置代理策略: 在 “Policy” 或 “Policy Group” 选项卡中,你可以创建不同的策略组,并将代理服务器添加到策略组中。
- 配置规则: 在 “Rules” 选项卡中,你可以配置规则,指定哪些流量应该走代理,哪些流量应该直连。
- 域名规则 (DOMAIN): 根据域名进行匹配。例如
DOMAIN,google.com,PROXY
表示访问 google.com 走代理。 - 域名后缀规则 (DOMAIN-SUFFIX): 根据域名后缀进行匹配。例如
DOMAIN-SUFFIX,.com,PROXY
表示访问所有 .com 域名走代理。 - 域名关键字规则 (DOMAIN-KEYWORD): 根据域名中包含的关键字进行匹配。例如
DOMAIN-KEYWORD,google,PROXY
表示访问所有包含 “google” 关键字的域名走代理。 - IP 地址规则 (IP-CIDR): 根据 IP 地址范围进行匹配。例如
IP-CIDR,1.1.1.1/32,PROXY
表示访问 1.1.1.1 这个 IP 地址走代理。 - GEOIP 规则 (GEOIP): 根据 IP 地址的地理位置进行匹配。例如
GEOIP,CN,DIRECT
表示访问中国大陆的 IP 地址直连。 - FINAL 规则: 兜底规则,如果前面的规则都不匹配,则使用该规则。通常设置为
FINAL,PROXY
或FINAL,DIRECT
。
- 域名规则 (DOMAIN): 根据域名进行匹配。例如
- 启用 Surge: 配置完成后,点击 “Start” 或类似的按钮,启用 Surge。
2. 手动编辑配置文件:
Surge 的配置文件是一个文本文件,你可以使用任何文本编辑器进行编辑。手动编辑配置文件可以让你更灵活地控制 Surge 的行为,但需要一定的技术基础。
- 找到配置文件: Surge 的配置文件通常位于以下位置:
- macOS:
~/Library/Application Support/Surge/Profiles/default.conf
- iOS: 使用 iMazing 等工具导出 Surge 的配置文件。
- macOS:
- 编辑配置文件: 打开配置文件,你可以看到以下几个主要部分:
- [General]: 通用设置,例如日志级别、DNS 服务器等。
- [Proxy]: 代理服务器配置。
- [Proxy Group]: 策略组配置。
- [Rule]: 规则配置。
- [Script]: 脚本配置。
- [Module]: 模块配置。
- 保存配置文件: 编辑完成后,保存配置文件。
- 重启 Surge: 重启 Surge 应用,使新的配置生效。
一个简单的配置文件示例:
“`
[General]
loglevel = notify
dns-server = 8.8.8.8, 114.114.114.114
[Proxy]
ss = shadowsocks, server, port, password, chacha20-ietf-poly1305
vmess = vmess, server, port, uuid, alterId=64, tls=true
[Proxy Group]
select = Proxy, ss, vmess
[Rule]
DOMAIN-SUFFIX,google.com,Proxy
DOMAIN-SUFFIX,youtube.com,Proxy
GEOIP,CN,DIRECT
FINAL,Proxy
“`
四、Surge 的进阶使用:脚本、模块和 MITM 解密
掌握了 Surge 的基本配置后,你可以进一步学习 Surge 的进阶使用方法,例如使用脚本实现自定义功能,使用模块管理配置,以及使用 MITM 解密实现更高级的功能。
- 脚本 (Script): Surge 支持 JavaScript 脚本,可以实现各种自定义功能,例如:
- 广告拦截: 通过脚本拦截广告域名或 URL。
- 修改 HTTP 请求头: 修改 User-Agent、Referer 等 HTTP 请求头。
- 重定向网页: 将某些网页重定向到其他网页。
- 自定义代理策略: 根据脚本逻辑动态选择代理服务器。
Surge 的脚本语法基于 JavaScript,你可以使用 $request
和 $response
对象来访问和修改 HTTP 请求和响应。
-
模块 (Module): 模块是一个包含规则、脚本和其他配置信息的集合。你可以将常用的配置打包成模块,方便共享和管理。Surge 支持在线安装模块,你可以从 GitHub 等平台上下载模块,也可以自己创建模块。
-
MITM 解密: Surge 可以通过 MITM (Man-in-the-Middle) 技术解密 HTTPS 流量,配合脚本实现更高级的功能,例如修改网页内容、抓包分析等。但需要注意的是,MITM 解密存在一定的安全风险,请谨慎使用。
-
生成证书: 首先需要在 Surge 中生成一个 CA 证书。
- 安装证书: 将生成的证书安装到你的设备上,并信任该证书。
- 启用 MITM: 在 Surge 的配置中启用 MITM 解密。
五、Surge 的最佳实践:优化配置和解决常见问题
- 优化配置:
- 选择合适的代理服务器: 选择速度快、稳定性高的代理服务器。
- 使用策略组: 根据不同的需求,创建不同的策略组,例如“速度优先”、“稳定优先”等。
- 精简规则: 只添加必要的规则,避免规则冲突和性能损耗。
- 定期更新规则: 及时更新规则,以应对新的网络环境。
- 解决常见问题:
- 无法连接代理服务器: 检查代理服务器信息是否填写正确,检查网络连接是否正常。
- 部分网站无法访问: 检查规则是否配置正确,尝试更换代理服务器。
- Surge 占用资源过高: 检查规则和脚本是否过于复杂,尝试减少规则和脚本的数量。
六、总结:掌握 Surge,畅游网络世界
Surge 是一款功能强大的网络代理工具,掌握 Surge 的配置和使用方法,可以帮助你提升网络体验、保护隐私安全,乃至突破地域限制访问特定内容。本文提供了一份详尽且易于理解的入门指南,希望能够帮助你从零开始,轻松掌握 Surge 的基本配置和使用方法。
请记住,实践是最好的老师。多尝试,多学习,你一定能够掌握 Surge,畅游网络世界! 祝你使用愉快!