纯命令在Linux上使用Clash Verge
Clash是一款强大的代理工具,广泛用于科学上网和网络请求的管理。本文将详细介绍如何在Linux上通过命令行运行Clash。
1. 安装Clash Verge
首先,你需要在Linux上安装Clash。可以通过以下步骤完成安装:
1.1 下载Clash Verge
前往Clash Verge的GitHub页面下载最新版本的Clash。你可以使用wget命令直接下载:
1 | wget https://github.com/zzzgydi/clash-verge/releases/download/v1.3.8/Clash.Verge.aarch64.app.tar.gz |
1.2 解压并移动到合适的目录
下载完成后,解压文件并将其移动到/usr/local/bin目录:
1 | gunzip Clash.Verge.aarch64.app.tar.gz |
1.3 赋予执行权限
接下来,为Clash赋予执行权限:
1 | sudo chmod +x /usr/local/bin/clash |
Clash 运行时需要 Country.mmdb 文件,当第一次启动 Clash 时(使用 ./clash 命令) 会自动下载(会下载至 /home/XXX/.config/clash 文件夹下)。自动下载可能会因网络原因较慢,可以访问该链接手动下载。
2. 配置Clash Verge
1 | curl -o /home/xxx/.config/clash/config.yaml '订阅链接' |
直接复制windows下的config时要注意把其中的hysteria2全部替换为socks5
3. Clash as a daemon
将 Clash 转变为系统服务,从而使得 Clash 实现常驻后台运行、开机自启动等。
普通用户需要
sudo权限。
3.1 配置 systemd 服务
创建 systemd 服务配置文件:
1 | sudo vim /etc/systemd/system/clash.service |
在文件中添加以下内容:
1 | [Unit] |
3.2 使用 systemctl
使用以下命令,让 Clash 开机自启动:
1 | sudo systemctl enable clash |
然后开启 Clash:
1 | sudo systemctl start clash |
查看 Clash 日志:
1 | sudo systemctl status clash |
4. 使用代理
4.1 利用 Export 命令使用代理
Clash 运行后,其在后台监听某一端口。Ubuntu 下使用代理,需要 export 命令。根据 config 配置文可以查看到Clash代理端口(订阅转换后,端口为7890),设置系统代理命令为:
1 | export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890 |
可以将该命令添加到 .bashrc 中,登陆后该用户自动开启代理。
取消系统代理:
1 | unset http_proxy https_proxy all_proxy |
4.2 DashBoard 外部控制
外部控制端口为 9090,因此也可以访问该链接,输入 IP 地址(需本机可以访问的 IP)以及端口号 9090,来进入 Clash Dashboard 进行节点的选择。也可以在服务器自行搭建 Clash Dashboard,请参见该项目。不过 Clash Dashboard 用处不大,使用订阅转换后的配置文件包含了自动选择的功能,Clash 会自动选择延迟最低的节点。
4.3 设置密码
export 命令其他用户执行后也可以使用该代理,此时通过可以更换代理端口、添加密码等措施加以限制。修改 /etc/clash/config.yaml 文件部分配置:
1 | mixed-port: 7890 |
mixed-port: 7890 就是混合代理端口,即使用代理时所指定的端口。然后需要重启 Clash,命令为:
1 | sudo systemctl restart clash |
根据上述配置文件,export 命令变为:
1 | export https_proxy=http://用户名1:密码1@127.0.0.1:7890 http_proxy=http://用户名1:密码1@127.0.0.1:7890 all_proxy=socks5://用户名1:密码1@127.0.0.1:7890 |
参考
本篇博客参考了在 Linux 中使用 Clash | CodeSwift。