0%

Linux服务器使用Clash verge 教程

纯命令在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
2
gunzip Clash.Verge.aarch64.app.tar.gz
sudo mv Clash.Verge.aarch64 /usr/local/bin/clash

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
2
3
4
5
6
7
8
9
10
11
[Unit]
Description=Clash daemon, A rule-based proxy in Go.
After=network.target

[Service]
Type=simple
Restart=always
ExecStart=/usr/local/bin/clash/clash -d /home/xxx/.config/clash

[Install]
WantedBy=multi-user.target

3.2 使用 systemctl

使用以下命令,让 Clash 开机自启动:

1
sudo systemctl enable clash

然后开启 Clash:

1
sudo systemctl start clash

查看 Clash 日志:

1
2
sudo systemctl status clash
sudo journalctl -xe

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
2
3
4
5
6
7
8
mixed-port: 7890
authentication:
- "用户名1:密码1"
- "用户名2:密码2"
allow-lan: true
mode: Rule
log-level: info
external-controller: :9090

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