全局配置
全局配置定义了 代理端口、允许局域网、运行模式、日志级别、外部控制器、外部用户界面、身份验证和实验性功能等
代理端口
端口是计算机或路由交换机内部的一部分,计算机按照 INTERNET 传输层 TCP/IP 协议进行通信,不同的协议对应不同的端口
http(s)代理端口
socks4/4a/5 代理端口
混合代理端口 http(s)+socks
redirect 透明代理端口,仅能代理TCP流量
tproxy 透明代理端口,可以代理TCP以及UDP流量
允许局域网
允许其他设备经过clash的代理端口访问互联网
可选值 true/false
绑定IP,仅允许某个IP访问代理端口
"*" 绑定所有IP地址,默认值,不填写此项则绑定全部
192.168.31.31: 绑定单个IPV4地址
"[aaaa::a8aa:ff:fe09:57d8]": 绑定单个IPV6地址
http(s) 和 socks 代理的用户验证
authentication:
- "user1:pass1"
- "user2:pass2"
运行模式
rule(规则) / global(全局) / direct(直连)
此项拥有默认值,默认为规则模式
日志级别
clash内核输出日志的等级,仅在控制台和控制页面输出
silent
静默,不输出
error
仅输出发生错误至无法使用的日志
warning
输出发生错误但不影响运行的日志,以及error级别内容
info
输出一般运行的内容,以及error和warning级别的日志
debug
尽可能的输出运行中所有的信息
IPV6
是否允许内核接受ipv6流量
可选值 true/false,
默认为false
进程匹配模式
控制是否让clash去匹配进程
always
开启,强制匹配所有进程
strict
默认,由 clash 判断是否开启
off
不匹配进程,推荐在路由器上使用此模式
find-process-mode: strict
外部控制(API)
外部控制器,可以使用 RESTful API 来控制你的 clash 内核
API 监听地址,你可以将127.0.0.1修改为0.0.0.0来监听所有IP
external-controller: 127.0.0.1:9090
HTTPS-API 监听地址,需要配置 tls 部分配置文件
external-controller-tls: 127.0.0.1:9443
API 的访问密钥
外部用户界面
可以将静态网页资源(比如clash-dashboard)运行在 clash API,路径为 API地址/ui
可以为绝对路径,或者clash工作目录的相对路径
缓存
在clash官方中,profile应为扩展配置,但在clash.meta,仅作为缓存项使用
profile:
store-selected: true
# 储存 API 对策略组的选择,以供下次启动时使用
store-fake-ip: true
# 储存fakeip映射表,域名再次发生连接时,使用原有映射地址
出站接口
clash的流量出站接口
路由标记
为Linux下的出站连接提供默认流量标记
TLS
目前仅用于API的https
tls:
certificate: string # 证书 PEM 格式,或者 证书的路径
private-key: string # 证书对应的私钥 PEM 格式,或者私钥路径
全局客户端指纹
全局 TLS 指纹,优先低于 proxy 内的 client-fingerprint。
目前支持开启 TLS 传输的 TCP/grpc/WS/HTTP ,支持协议有 VLESS,Vmess 和 trojan.
global-client-fingerprint: chrome
自定GEO下载地址
geox-url:
geoip: "https://testingcf.jsdelivr.net/gh/MetaCubeX/meta-rules-dat@release/geoip.dat"
geosite: "https://testingcf.jsdelivr.net/gh/MetaCubeX/meta-rules-dat@release/geosite.dat"
mmdb: "https://testingcf.jsdelivr.net/gh/MetaCubeX/meta-rules-dat@release/country.mmdb"
实验性
完整示例
# port: 7890
# socks-port: 7891
mixed-port: 10801
# redir-port: 7892
# tproxy-port: 7893
allow-lan: true
bind-address: "*"
find-process-mode: strict
global-client-fingerprint: chrome
# routing-mark:6666
ipv6: true
mode: rule
log-level: debug
# interface-name: en0
external-controller: 0.0.0.0:9093
external-controller-tls: 0.0.0.0:9443
# external-ui: dashboard
geox-url:
geoip: "https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geoip.dat"
geosite: "https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geosite.dat"
mmdb: "https://cdn.jsdelivr.net/gh/Loyalsoldier/geoip@release/Country.mmdb"
tls:
certificate: string # 证书 PEM 格式,或者 证书的路径
private-key: string # 证书对应的私钥 PEM 格式,或者私钥路径
custom-certifactes:
- |
-----BEGIN CERTIFICATE-----
format/pem...
-----END CERTIFICATE-----
experimental:
profile:
store-selected: false
store-fake-ip: true