
手把手教你如何在飞牛 OS 中使用网络代理
近日飞牛OS(fnOS)开启了公测,我也第一时间开始了尝鲜,但很快便遇到一个问题:系统的网络设置中并未提供代理设置的选项。
没有代理设置怎么行,这可是直接与世界脱离连接了啊,于是我便开始努力寻找解决方案,最后得到了一个并不完美但可行的方案:使用虚空终端 mihomo(clash meta) 及对应的 WebUI。
本文主要面向有一定动手能力但毫无知识储备的小白,所以如果你有一定基础可能会觉得本文比较啰嗦。
启用 ssh
知道怎么 ssh 连接的读者可直接跳过该部分
更改系统设置
进入 fnOS 后台,打开系统设置→SSH,并将其启用。
测试连接
使用任意 ssh 工具连接测试。如果您并不知道任何 ssh 工具,可以直接使用 Powershell 或者在以下软件中任选一个喜欢的:Xshell、MobaXterm、WinSCP、、PuTTY、Termius。
以下是部分连接举例。
Powershell
1 |
|
这一步需要你输入密码,输入过程中不会显示,输入完成后直接回车
若您看到类似以下字样则代表连接成功
1 |
|
Termius
依次填入 IP、用户名、密码后连接。
其余 ssh 客户端请自行研究,都大同小异不再赘述
安装 mihomo
下载 mihomo
前往 mihomo 发布页面 下载安装包,根据文档中的我应该下载哪个文件? 来选择合适的版本。
若您查看了文档后仍然没有头绪可以优先选择该格式的文件:mihomo-linux-amd64-<版本号>.deb
不保证一定能用,但大多数机器应该可以,建议还是自己看懂官方文档选择适合自己的版本
然后用任何你喜欢的方式将安装包上传到 NAS,当然你也可以直接 ssh 进去使用终端下载,但如果你都会这么做了也不需要看这部分教程了不是吗。
安装 mihomo
首先参考第一部分的教程使用 ssh 连接到 NAS,然后输入cd
命令切换到安装包路径。
1 |
|
如果你不知道路径是什么,就前往文件管理→右键存放安装包的文件夹→详细信息→复制原始路径,然后直接粘贴到对应位置
注:许多 ssh 工具无法使用 Ctrl+C/V 复制粘贴,请使用 Ctrl+insert 复制,shift+insert 粘贴
你可以使用ls
命令来确认以下是否成功,如果成功了你应该能看到显示出了该文件夹内的文件(包括刚刚下载的安装包)
使用dpkg
命令安装
1 |
|
这一步或许会需要你输入密码,输入过程中不会显示,输入完成后直接回车
安装 webUI
这一步不是必须的,但我强烈建议你安装以便管理
本教程使用的 webUI 为 metacubexd,另推荐 yacd,可选择自己喜欢的进行使用,安装过程大同小异
使用以下命令拉取镜像并运行
1 |
|
这行命令将 WebUI 的端口设置为 9097,你可以更改为自己喜欢的端口
如果一切顺利,你应该能在 docker 容器中看到 metacubexd
使用浏览器输入IP:端口
来访问 WebUI(即使现在它并没有实际作用,但你也应该能够访问)
一切正常的话你应当看到这样的界面
编写 config.yaml
自行创建文本文档,命名为 config.yaml
,并填入以下内容
其中 proxy-providers
内的几个尖括号需要你自行更改(修改后不含尖括号),提供者名称和前缀可随意填写,仅影响显示不影响使用
1 |
|
我不会详细介绍各配置项的内容及其含义,需要详细了解的请自行查阅 mihomo 文档
在 NAS 中新建一个文件夹,名称随意,建议命名为 mihomo
,将刚刚编写的 config.yaml
放入其中。
启用 mihomo
前台运行
使用 ssh 连接,输入以下命令
1 |
|
这一步或许会需要你输入密码,输入过程中不会显示,输入完成后直接回车
找不到路径的前文有说明,自行往回翻阅
进入 WebUI(安装 WebUI 部分有说明),若需要输入后端地址则输入http://IP:9090
至此,你应该已经能够自行使用并畅游网络了
如果需要结束 mihomo 的进程,在终端中使用快捷键 Ctrl+C
注:若您没有安装 WebUI,请自行研究相关管理方案,因为我也不会,所以不会提供纯命令行使用 mihomo 的教学
但你很快就会发现,这种方法在你关闭 ssh 后立马就无法继续使用,所以除非你只是偶尔临时使用,否则请继续往下看
后台运行
我的后台运行方案基于screen
,其他方法自行研究。
screen 是一个终端多窗口软件,可以使终端能做到类似 Windows 一样将窗口最小化并挂起,即使关闭终端也不会关闭使用 screen 创建的窗口
所以本方法的原理基本相当于开一个窗口前台运行 mihomo,然后把它最小化挂在那
安装 screen
ssh 连接,依次输入以下命令
1 |
|
这一步或许会需要你输入密码,输入过程中不会显示,输入完成后直接回车
创建窗口并运行 mihomo
1 |
|
进入新窗口后重复上方前台运行步骤即可
退出窗口请使用快捷键 Ctrl+A+D
,重新进入窗口的命令与创建并进入窗口的命令相同,设备重启后需重新创建窗口并运行 mihomo。
Q&A
Q:为什么本地运行 mihomo 而使用 docker 运行 WebUI?
A:一开始我是尝试使用 docker 运行 mihomo 的,但我并没有成功让它接管设备流量,懒得研究如何解决该问题所以我决定直接切换到本地运行。
Q:metacubexd 和 yacd 都有在线版本,为什么不用?
A:因为我发现在线版本我连接不上 NAS 的后端,原因未知,有人知道原因的话麻烦评论留言告诉我一下。
Q:为什么 WebUI 选择了 metacubexd 而不是 yacd 或其他?
A:个人选择,你当然可以用 yacd,使用上不会有什么影响。
Q:后台运行为什么使用 screen 这种不够优雅的方式?
A:因为 screen 足够简单好用,我也不刚需开机自启动。
Q:感觉 config.yaml 写得不够好?
A:也许你的感觉是对的,我也是现学现写的,或许不够好但它确实能用,如果有什么改进的方案欢迎留言。
还有其他问题的欢迎留言