介绍
重点提示:国内vps大多不允许跑proxy程序,我们仅作经验交流,请勿用于非法用途
今天我们来说说Linux安装clash,先说一下,clash for windows也有一个Linux版,详见:https://github.com/Fndroid/clash_for_windows_pkg/releases,如图:
这个貌似是有桌面环境的Linux使用的,我们今天讨论的是在没有桌面环境的Linux vps上安装clash。
安装
下载地址:https://github.com/Dreamacro/clash/releases
请根据自己的vps的cpu架构下载相对应的版本,小白的vps是amd架构的Debian系统,所以选择如下这两个版本。实测两个都可以,但是小白不太清楚v3版本和另外一个有啥区别,还望知道的小伙伴指教。
#回到root目录 cd /root #下载clash wget https://github.com/Dreamacro/clash/releases/download/v1.11.0/clash-linux-amd64-v1.11.0.gz #解压 gzip -d clash-linux-amd64-v1.11.0.gz #重命名 mv clash-linux-amd64-v1.11.0.gz clash #赋予执行权限 chmod +x clash #运行clash ./clash
好,到此为止,clash我们已经下载完成,在我们输入./clash
运行clash时,clash会在当前用户主目录的.config
目录下建立clash目录,并开始从github下载所需要的配置文件(主要是Country.mmdb),小白是以root用户运行的,也就是/root/.config/clash
,这里会遇到一个问题,由于众所周知的原因,国内机器从GitHub拖取文件一般不太行,解决办法也很多,这里我们可以采取两种办法:
代理
我们可以借助于一个可用的socks5代理,详情可见:终端代理软件proxychains-彻底解决国内鸡连不上GitHub,我们借助proxychains这个强大的代理工具即可
从别的机器拉取
或者我们可以找一台境外机器,运行一遍clash,然后把那台机器中的clash配置文件目录拉取过来,这里小白推荐使用scp命令,详见:scp 跨机远程拷贝,示例如下:
scp -r -P 22 [email protected]:/root/.config/clash /root/.config
然后我们重新到/root/clash
目录输入./clash
启动clash,我们可以看到clash已经成功运行并监听了我们熟悉的7890端口:
我们可以去/root/.config/clash
看一下配置文件:
具体来看看config.yaml
配置文件,只有一行:mixed-port: 7890
,这时当然是用不了的,因为我们并没有节点,往下看。
导入订阅链接
自行从机场下载相对应的配置文件config.yaml,推荐机场:垃圾场加速器
wget -O config.yaml [订阅链接]
由于现在的机场大多是通过UA头来判断你使用的是哪个代理软件,从而下发相对应的配置文件,所以我们从订阅链接可能会下载不到clash的配置文件,那我们从Windows版的clash中把yaml配置文件拷贝出来就好了:
然后上传到/root/.config/clash
目录并重命名为config.yaml
,覆盖原来的配置文件即可。我们重新运行clash,可以看到clash已经成功跑起来并已经连上垃圾场的节点:
测试网络
我们新开一个终端窗口
#调用http代理 export http_proxy=http://127.0.0.1:7890 #测试 curl ip.sb #如果看到返回的IP是机场节点的IP,那说明clash运行正常 #取消代理 unset http_proxy
设置外部控制ui
现在clash已经能跑起来了,但是我们是不能自由选择节点的,我们还需要一个外部控制ui
#回到root目录 cd /root #拉取clash-dashboard git clone https://github.com/Dreamacro/clash-dashboard.git cd clash-dashboard git checkout -b gh-pages origin/gh-pages
然后我们在/root/.config/clash/config.yaml
文件中设置好ui地址和访问密码:
当然,你也可以采用其他的clash控制面板,例如:yacd。配置方法大同小异。
这时我们可以从公网访问控制面板了:http://IP:9090/ui
首次进入会提示我们输入host和密码,如果想要从公网访问,host填入公网IP,密码填入我们在config.yaml
中配置的密码,然后我们熟悉的界面就回来了:
设置clash开机启动:
添加启动信息
sudo vim /etc/systemd/system/clash.service
输入以下内容,clash -d的意思是指定配置文件路径。
[Unit]
Description=clash daemon
[Service]
Type=simple
User=root
ExecStart=/root/clash/clash -d /root/.config/clash/
Restart=on-failure
[Install]
WantedBy=multi-user.target
重新加载systemctl daemon
sudo systemctl daemon-reload
启动Clash
sudo systemctl start clash.service
设置Clash开机自启动
sudo systemctl enable clash.service
以下为Clash相关的管理命令
启动Clash
sudo systemctl start clash.service
重启Clash
sudo systemctl restart clash.service
查看Clash运行状态
sudo systemctl status clash.service