目录
1. 什么是Surfboard配置文件
Surfboard是一款功能强大的网络代理工具,它支持多种代理协议,并提供了丰富的配置选项。Surfboard的配置文件采用YAML格式,通过对配置文件的编辑可以实现对Surfboard的各项功能的定制和控制。
2. 客户端配置
2.1 基本配置
客户端基本配置包括:
port
: 客户端监听端口socks-port
: SOCKS5代理端口redir-port
: 透明代理端口mixed-port
: 混合代理端口allow-lan
: 是否允许局域网连接mode
: 运行模式,可选值有rule
、global
和direct
log-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重写等。