目录
1. 什么是Surfboard配置文件
Surfboard是一款功能强大的网络代理工具,它支持多种代理协议,并提供了丰富的配置选项。Surfboard的配置文件采用YAML格式,通过对配置文件的编辑可以实现对Surfboard的各项功能的定制和控制。
2. 客户端配置
2.1 基本配置
客户端基本配置包括:
port: 客户端监听端口socks-port: SOCKS5代理端口redir-port: 透明代理端口mixed-port: 混合代理端口allow-lan: 是否允许局域网连接mode: 运行模式,可选值有rule、global和directlog-level: 日志级别,可选值有info、warning、error
2.2 代理设置
客户端代理设置包括:
proxies: 代理服务器列表,每个代理服务器包含以下信息:name: 代理名称type: 代理类型,如ss、ssr、vmess等server: 服务器地址port: 服务器端口password: 密码(某些代理类型需要)cipher: 加密方式(某些代理类型需要)udp: 是否开启UDP转发
2.3 规则配置
客户端规则配置包括:
rules: 代理规则列表,每条规则包含以下信息:type: 规则类型,如domain、ipcidr、geolocation等payload: 规则内容,如域名、IP网段、国家代码等proxy: 应用该规则的代理名称
3. 服务端配置
3.1 基本设置
服务端基本设置包括:
port: 服务端监听端口socks-port: SOCKS5代理端口redir-port: 透明代理端口allow-lan: 是否允许局域网连接log-level: 日志级别external-controller: 远程控制端口
3.2 安全设置
服务端安全设置包括:
secret: 远程控制密钥tls:enable: 是否开启TLScert: TLS证书文件路径key: TLS私钥文件路径
3.3 日志设置
服务端日志设置包括:
interface-name: 监听的网络接口名称dns-server: 自定义DNS服务器stdout: 是否输出日志到标准输出
4. 其他设置
4.1 环境变量
Surfboard支持通过环境变量来设置一些参数,如:
CLASH_CONFIG: 指定配置文件路径CLASH_FIELD_NAME_CASE_SENSITIVE: 是否区分大小写
4.2 扩展插件
Surfboard支持通过插件来扩展功能,可以在配置文件中添加插件配置,如:
yaml experimental: plugins: – path: /path/to/plugin.so name: example-plugin config: key: value
5. 常见问题解答
Q: Surfboard客户端和服务端的配置有什么区别? A: 客户端配置主要用于定义代理规则和连接远程代理服务器,而服务端配置主要用于设置服务端自身的监听端口、安全选项和日志输出等。
Q: Surfboard支持哪些代理协议? A: Surfboard支持多种代理协议,包括Shadowsocks、ShadowsocksR、VMess、Trojan等。在代理服务器配置中可以选择不同的类型。
Q: 如何设置Surfboard的日志级别? A: 在客户端和服务端配置中均有log-level参数,可以设置为info、warning或error三种级别。
Q: Surfboard如何实现跨平台使用? A: Surfboard是跨平台的,支持Windows、macOS和Linux等主流操作系统。只需要下载对应平台的Surfboard程序并配置好即可。
Q: Surfboard有哪些扩展插件可以使用? A: Surfboard支持通过插件来扩展功能,用户可以自行开发插件或使用第三方提供的插件。常见的插件有流量统计、URL重写等。

