Linux Clash 翻墙教程 — GUI 桌面版与服务器版
在 Linux 上使用 Clash Verge Rev 或命令行版 Clash 实现科学上网
1. 方案概述
Clash Verge Rev for Linux 与 Windows、macOS 版本功能一致,提供图形化界面,支持订阅管理、规则分流、TUN 模式等。
支持发行版:Debian、Ubuntu、Fedora、Arch Linux 等主流桌面发行版。
2. 下载安装
从 GitHub 发布页下载对应格式:
- AppImage — 通用格式,赋予执行权限后直接运行
- deb — Debian/Ubuntu:
sudo dpkg -i clash-verge-rev_*.deb - rpm — Fedora/RHEL:
sudo rpm -i clash-verge-rev_*.rpm - Arch:
yay -S clash-verge-rev或pacman -S clash-verge-rev
3. 导入订阅
与 Windows 操作相同:
- 打开 Clash Verge Rev
- 点击 Profiles(配置)
- 在输入框粘贴订阅链接
- 点击 Import 导入
4. 启动代理
系统代理(System Proxy):打开主界面的 System Proxy 开关,系统代理将指向 Clash(默认 127.0.0.1:7897)。
TUN 模式:开启 TUN 开关可实现全局代理,首次使用可能需安装依赖或授予权限。
5. 桌面环境代理
若系统代理未自动生效,可手动配置:
- GNOME:设置 → 网络 → 网络代理 → 手动,填入
127.0.0.1和端口7897 - KDE:系统设置 → 网络 → 代理,配置 HTTP/SOCKS 代理
6. 方案概述
适用于无图形界面的 Linux 服务器,如 Ubuntu Server、CentOS、Debian 等。通过命令行安装 Clash 二进制,配合 systemd 服务与配置文件实现代理。
7. 下载安装
根据架构下载 Clash 二进制:
# 检测架构
uname -m
# 下载(以 amd64 为例)
wget https://github.com/Dreamacro/clash/releases/download/v1.18.0/clash-linux-amd64-v1.18.0.gz
gunzip clash-linux-amd64-v1.18.0.gz
chmod +x clash-linux-amd64-v1.18.0
sudo mv clash-linux-amd64-v1.18.0 /usr/local/bin/clash
# 验证
clash -v
架构对应:x86_64→amd64,aarch64→arm64,armv7l→armv7。
8. 配置文件
配置文件路径:~/.config/clash/config.yaml
关键字段说明:
port: 7890 # HTTP 代理端口
socks-port: 7891 # SOCKS5 端口
allow-lan: false # 是否允许局域网连接
mode: rule # 规则模式
external-controller: 127.0.0.1:9090 # REST API 端口
dns:
enable: true
enhanced-mode: fake-ip
nameserver: [223.5.5.5, 119.29.29.29]
fallback: [8.8.8.8, 1.1.1.1]
proxies: [...] # 代理节点
proxy-groups: [...] # 代理组
rules: [...] # 分流规则
可使用订阅链接下载配置:curl -L "订阅URL" -o ~/.config/clash/config.yaml
9. systemd 服务
创建 /etc/systemd/system/clash.service:
[Unit]
Description=Clash daemon
After=network-online.target
[Service]
Type=simple
Restart=on-failure
RestartSec=5
User=你的用户名
ExecStart=/usr/local/bin/clash -d /home/你的用户名/.config/clash
[Install]
WantedBy=multi-user.target
启动与管理:
sudo systemctl daemon-reload
sudo systemctl start clash
sudo systemctl enable clash
sudo systemctl status clash
10. 环境变量代理
临时设置(当前会话):
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export all_proxy=socks5://127.0.0.1:7891
export no_proxy=localhost,127.0.0.1,::1
永久设置:将上述内容追加到 ~/.bashrc 或 /etc/environment,然后执行 source ~/.bashrc。
11. REST API
Clash 提供 External Controller,默认 127.0.0.1:9090,可用 curl 管理:
# 获取当前配置
curl http://127.0.0.1:9090/configs
# 获取代理列表
curl http://127.0.0.1:9090/proxies
# 切换节点(需替换 proxy-name 和 selector-name)
curl -X PUT http://127.0.0.1:9090/proxies/selector-name \
-H "Content-Type: application/json" \
-d '{"name":"proxy-name"}'
12. 一键安装脚本
项目提供一键安装脚本,可自动完成下载、安装、配置目录创建、systemd 服务等步骤:
# 使用项目内脚本
./scripts/install-clash-headless.sh
脚本路径:scripts/install-clash-headless.sh
13. 常见问题
Permission denied — 确保 clash 二进制有执行权限:chmod +x /usr/local/bin/clash
端口被占用 — 修改 config.yaml 中的 port、socks-port;或关闭占用端口的进程。
DNS 解析失败 — 检查 dns 配置;确保 Country.mmdb 已下载到配置目录。
服务无法启动 — 检查 clash -t -d ~/.config/clash 验证配置;查看 journalctl -u clash -f 日志。