要配置Clash(Clash是用于管理网络流量的开源工具)的规则文件,以下是一步一步的指南
菜大胆Astrill加速器2026-09-09240
安装Clash: 如果尚未安装Clash,可以先安装它,在Ubuntu上,可以使用以下命令:sudo apt-get install clash 生成初始配置文件: Clash会自动生成一个默认的clash.json配置文件,使用以下命令生成它:clash new 这会创建一个新的配置文件clash.json,位于当前目录。 编辑配置文件: 打开clash.json文件进行编辑。 使用文本编辑器(如nano或vim)打开文件。 添加规则: 配置文件中的主要节点是rules,它包含多个规则,每个规则由一个match和一个action组成。 示例规则:{ "rules": [ { "match": { "ip": "...", "port": "1-65535" }, "action": "block" }, { "match": { "ip": "8.8.8.8", "port": "80" }, "action": "reply" } ] } 在rules数组中添加多个规则对象,每个规则定义了匹配的条件和对应的动作。 默认规则: Clash提供了一些默认的规则,可以直接在rules数组中使用。 rule_: 允许所有连接。 rule_512: 封锁多个恶意网站。 rule_255: 封锁所有连接。{ "rules": [ { "match": { "ip": "...", "port"...
-
安装Clash:
- 如果尚未安装Clash,可以先安装它,在Ubuntu上,可以使用以下命令:
sudo apt-get install clash
- 如果尚未安装Clash,可以先安装它,在Ubuntu上,可以使用以下命令:
-
生成初始配置文件:
- Clash会自动生成一个默认的
clash.json配置文件,使用以下命令生成它:clash new
- 这会创建一个新的配置文件
clash.json,位于当前目录。
- Clash会自动生成一个默认的
-
编辑配置文件:
- 打开
clash.json文件进行编辑。 - 使用文本编辑器(如
nano或vim)打开文件。
- 打开
-
添加规则:
- 配置文件中的主要节点是
rules,它包含多个规则,每个规则由一个match和一个action组成。 - 示例规则:
{ "rules": [ { "match": { "ip": "...", "port": "1-65535" }, "action": "block" }, { "match": { "ip": "8.8.8.8", "port": "80" }, "action": "reply" } ] } - 在
rules数组中添加多个规则对象,每个规则定义了匹配的条件和对应的动作。
- 配置文件中的主要节点是
-
默认规则:
- Clash提供了一些默认的规则,可以直接在
rules数组中使用。rule_: 允许所有连接。rule_512: 封锁多个恶意网站。rule_255: 封锁所有连接。{ "rules": [ { "match": { "ip": "...", "port": "-65535" }, "action": "block" }, { "match": { "ip": "8.8.8.8", "port": "80" }, "action": "reply" }, { "match": { "ip": "1.2.3.4", "port": "443" }, "action": "redirect" } ] }
- 复制这些规则到
rules数组中。
- Clash提供了一些默认的规则,可以直接在
-
自定义规则:
- 根据需要添加自定义规则,封锁特定网站:
{ "rules": [ { "match": { "ip": "...", "port": "80" }, "action": "block" } ] } - 通过修改
match和action字段来调整规则。
- 根据需要添加自定义规则,封锁特定网站:
-
应用默认规则:
- Clash自带的规则可以直接使用。
rule_512封锁了许多恶意网站。{ "rules": [ { "match": { "rule": "rule_512" }, "action": "block" } ] } - 这样可以直接应用Clash预设的规则。
- Clash自带的规则可以直接使用。
-
特殊规则:
rule_允许所有IP和端口。{ "match": { "rule": "rule_" }, "action": "allow" }rule_255封锁所有IP和端口。{ "match": { "rule": "rule_255" }, "action": "block" }- 可以用来精确控制允许或封锁的流量。
-
调整规则顺序:
- 规则的顺序很重要,先应用的规则优先。
- 尽量将封锁规则放在前面,允许规则放在后面。
-
保存并应用规则:
- 确保编辑好的
clash.json文件中没有语法错误,可以使用jsonlint进行验证。jsonlint clash.json
- 如果有错误,修正后重新保存。
- 应用配置文件,重启Clash服务:
sudo systemctl restart clash
- 确保编辑好的
-
验证规则:
- 使用Clash的
--dump选项查看当前规则:clash --dump
- 检查输出结果,确保规则生效。
- 使用Clash的
-
示例完整配置:
{ "rules": [ { "match": { "ip": "...", "port": "-65535" }, "action": "block" }, { "match": { "ip": "8.8.8.8", "port": "80" }, "action": "reply" }, { "match": { "ip": "1.2.3.4", "port": "443" }, "action": "redirect" }, { "match": { "rule": "rule_512" }, "action": "block" } ] }- 这个配置封锁了所有连接,回复了HTTP流量,重定向了HTTPS流量,并封锁了
rule_512中的恶意网站。
- 这个配置封锁了所有连接,回复了HTTP流量,重定向了HTTPS流量,并封锁了
-
默认允许规则:
- 如果需要允许所有流量,可以在
rules中添加一个允许的规则。{ "rules": [ { "match": { "rule": "rule_" }, "action": "allow" } ] } - 同样,可以使用
rule_255来封锁所有连接。
- 如果需要允许所有流量,可以在
-
使用
rule_102:{ "rules": [ { "match": { "rule": "rule_102" }, "action": "block" } ] }这个规则处理HTTP和HTTPS转换,可以让Clash作为中间代理。
-
高级规则配置:
- 使用
match字段的更多选项,如tcp和udp,可以精确匹配流量类型。{ "rules": [ { "match": { "ip": "...", "tcp": true, "udp": false }, "action": "block" } ] } - 这将只封锁TCP流量。
- 使用
-
测试规则:
- 在局域网内部测试规则,确保没有误封锁或误允许的流量。
- 使用
clash -t启动测试模式,查看规则的效果。
-
备份配置文件:
- 定期备份
clash.json以防配置文件丢失或损坏。
- 定期备份
通过以上步骤,你可以根据需求配置Clash的规则文件,灵活管理网络流量。

相关文章








