Clash在ubuntu上的使用
网络魔法是日常工作中不可或缺的,本人是做算法的,经常要逛一逛HuggingFace
,黑魔法网络必不可少。在Windows和mac上配置黑魔法较为简单,现在需要在Ubuntu22.04
系统上实现黑魔法,“睁眼看世界”。
下载Clash内核
由于官方的clash作者已经删库跑路了,所以需要从第三方下载clash内核,下载地址:https://github.com/DustinWin/clash_singbox-tools。
这里我使用的是clash的p核,clashpremium-linux-amd64
,请自行选择与cpu架构合适的内核。
在任意一个地方新建文件夹:
|
|
上述任何操作如何没有权限,可以进root之后再操作。
下载机场配置文件
从购买的机场下载yml
或者yaml
配置文件,放入到clash目录下面与内核齐平。将配置文件的标题改为config.yaml
,并修改里面的部分内容。
将allow-lan修改为true
,你也可以额外添加ui界面控制,解开注释external-ui
,然后后面的folder
改为你的ui界面文件夹位置。ui界面可以在https://github.com/DustinWin/clash_singbox-tools下载解压就可以。(也可以使用第三方网页配置,这样就不需要动external-ui相关的配置,后面会说)
除了config.yaml
,我们还需要Country.mmdb文件,虽然网上有很多资源,但是不一定和你的适配,建议从windows clash文件夹中的Country.mmdb
拷贝过来,放在clash目录下和内核与配置文件同级别。
启动clash
在clash文件夹下执行命令,启动:
|
|
如果看到如下画面则启动成功: 我这里是放的网图,命令必须按照上述来,因为我们并没有把clash配置进系统命令中。
在浏览器打开127.0.0.1:9090
,就能看到控制面板,对应的是你下载的UI界面。这里我没有使用自己的ui界面,使用了第三方的ui界面,配置自己的ip和端口。
访问地址:https://clash.razord.top/#/settings
打开后点击编辑
,配置相应的ip和端口,然后点击代理,则可以查看自己的网络配置。
最后一步,在系统中配置端口(设置->网络->设置代理):
这里面对应的端口号和config.yaml
是一一对应的,如果你因为端口被占用,可以选择kill掉无关的进程,也可以修改相应的端口号。如果修改了config.yaml
中的端口号,在系统设置的时候也要进行相应的修改。
配置好之后就可以打开你的google进行搜索了。
配置docker自启动
虽然上面的步骤已经配置好了clash,但是每次都需要打开终端进入文件夹下启动clash,非常麻烦,这时候我们可以使用docker来配置这个轻量化的服务。
编写dockerfile建立一个基础环境:
|
|
在dockerfile中编写如下内容:
|
|
在dockerfile文件的同级别目录下,运行命令构建docker镜像:
|
|
构建好镜像之后,我们要使用镜像启动相应的容器,简单启动进行源文件复制。
|
|
然后我们需要写一个shell脚本自动执行, start.sh
:
|
|
写好之后加入执行权限:
|
|
然后我们要把需要的文件全部复制到容器中,需要的文件有clash
(之前下载的内核), config.yaml
, Country.mmdb
,写好的sh脚本start.sh
:
|
|
特别说明,如果你在前面配置了额外的ui界面,ui界面的文件夹也需要复制进容器中,文件夹复制的命令如下:
|
|
还需要修改config.yaml中的ui界面的文件夹位置为/clash/你的ui文件夹名
。
将容器更新为新的镜像:
|
|
最后一步,重新从镜像构建容器,并开启脚本自动执行。由于我们要使用到本机的7890~7892端口和9090端口,则需要在容器启动时做端口映射:
|
|
启动成功便可以在之前的127.0.0.1:9090
进行配置网络,或者是前文说的第三方界面进行配置。
如此一来,每次重新启动之后,只要启动暂时退出的容器就可以了:
|
|
然后在系统中开启之前配置好的代理,就可以访问google搜索了。
最后修改于 2024-07-08
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。