Clash + Yacd -- 实现科学上网

📎免责声明

    本文仅作为博主的学习与折腾笔记,非专业性教程,仅供学习与参考。
    本文仅介绍该工具在 绿联私有云 中的 部署过程,不介绍其具体使用方法,其他设备或平台的部署过程请另寻教程。
    由于在往期文章中详细介绍过部署的过程,所以本文会缩略一些不重要的内容。

📘Clash & Yacd

    Clash 俗称 小猫咪,懂的自然懂,博主就不多介绍了;Yacd 是小猫咪的 管理面板,您可以通过它来配置小猫咪。
    不过小猫咪和其分支的部分开发者们已删库,相关事件可以看下别的博主写的文章,我这里贴一篇写的比较完整的:Clash 删库事件:影响和替代软件

📋在 Docker 中部署

 🔹拉取镜像

    您可以直接通过 添加 按钮搜索 dreamacro/clashhaishanh/yacd 并拉取他们的镜像。

 🔹创建容器 - Clash

    接下来我们来到 镜像管理 中找到刚刚下载的 Clash 镜像点击 创建容器
    这里附上我的容器配置,您可以根据自身情况进行相应的修改,没出现的界面则是系统的默认设置。

    注意装载路径建议不要修改,镜像作者给出的默认值为 $HOME/.config/clash ,其中 $HOME 应该是要替换成 根目录 路径,博主这里替换成了 /root,实测是没有问题的。

    这是存放配置文件的目录,容器创建后将在该目录下会生成 3 个文件:

1
2
3
4
5
SSD/Docker
└─ Clash-v1.18.0
├─ config.yml
├─ Country.mmdb
└─ cache.db

    其中 config.yml 需要您手动编辑与导入(懂的都懂),以下是我根据官方模板列出的一部分可能需要修改的配置项,您可以根据需要修改它们:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
port: 7890  # HTTP 端口
socks-port: 7891 # SOCKS5 端口
redir-port: 7892 # redir 端口(可选)
allow-lan: false # 允许接管局域网流量

# 当 allow-lan 开启时生效
# "*": 接管所有局域网内的地址
# 192.168.122.11: 接管单个 IPv4 的地址
# "[aaaa::a8aa:ff:fe09:57d8]": 接管单个 IPv6 的地址
bind-address: "*"

mode: rule # 默认代理模式 rule(规则) / global(全局) / direct(直连)
log-level: info # 输出日志的等级 info / warning / error / debug / silent
external-controller: 127.0.0.1:9090 # Clash API 端口,使用 Yacd 连接 Clash 时会用到
secret: "" # Clash API 的访问密码

# WebUI 文件存放路径,用 Yacd 的话可以不用官方的 UI
# you can put the static web resource (such as clash-dashboard) to a directory, and clash would serve in `${API}/ui`
# external-ui: folder

# 实验性功能
experimental:
ignore-resolve-fail: true # 忽略解析失败的 DNS
# interface-name: en0 # outbound interface name

# HTTP(s) 与 SOCKS5 的密码验证(可选)
authentication:
# - "用户1:密码1"
# - "用户2:密码2"


#----------------------
# 以下内容需要您自行解决
#----------------------
dns: # DNS 解析
proxies: # 代理节点
proxy-groups: # 代理组
rules: # 分流规则

    如果您不知道该设置哪些内容,您可以只确认以下配置项是否需要修改,同时博主也附上自己的配置内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# HTTP 端口
port: 7890
# SOCKS5 端口
socks-port: 7891
# Clash API 端口,使用 Yacd 连接 Clash 时会用到
external-controller: 127.0.0.1:9090

#----------------------
# 以下内容需要您自行解决
#----------------------
dns: # DNS 解析
proxies: # 代理节点
proxy-groups: # 代理组
rules: # 分流规则

 🔹创建容器 - Yacd

    接下来我们来到 镜像管理 中找到刚刚下载的 Yacd 镜像点击 创建容器
    这里附上我的容器配置,您可以根据自身情况进行相应的修改,没出现的界面则是系统的默认设置。
    端口 中的 本地端口 请与您在 Clash config.yml 中的 external-controller 的端口 保持相同,容器端口 80 不要修改。
    环境 中的 YACD_DEFAULT_BACKEND 也请与 external-controller 保持一致。

📝大功告成啦

    接下来您就可以在浏览器中输入 设备 ip:9090 后进入 Yacd 面板控制小猫咪了,如果您不知道自己设备的 IP 地址也可以通过 创建快捷方式 的方法来进入。

    随后进入到 Config 设置中文语言,其他的东西请自己研究哦 🥳