linux服务器配置mihomo

一、前言

在 Linux 服务器上安装和配置 mihomo,可以有效解决以下问题:

  • 使用 npm 安装依赖时出现超时;
  • 拉取 Docker 镜像缓慢或失败;
  • 克隆 GitHub 项目速度极慢。

这些问题多由于网络限制导致,通过科学上网可大幅提升开发与部署效率。


二、准备工作

在搭建代理环境前,请确保具备以下资源:

  • 工具mihomo(基于 Clash 内核,支持多协议,配置灵活,兼容性强)
  • 节点资源:已购买的代理节点(如 Trojan、Vmess 等)
  • 服务器:一台可远程访问的 Linux 服务器(推荐 Ubuntu/Centos)
  • 图形界面 (可选):YacdClash Dashboard,用于直观管理配置、节点切换等操作

三、操作步骤

  1. 下载并上传工具包

前往 GitHub 下载以下压缩包:mihomo.tar.gzyacd.tar.gz,并在本地解压

bash 复制代码
# 上传到服务器,端口默认22,如果修改端口需要指定 -P 2121 
scp /Users/ljp/Downloads/yacd.tar.xz user@host:~/Downloads
bash 复制代码
# 从本机复制到docker中的linux容器
docker cp /Users/ljp/Downloads/mihomo-linux-amd64-compatible-go120-v1.19.11.gz my-centos:/usr/local/bin
docker cp /Users/ljp/Downloads/yacd.tar.xz my-centos:/usr/local/bin
# 解压并重命名
gunzip -c /usr/local/bin/mihomo-linux-amd64-compatible-go120-v1.19.11.gz > /usr/local/bin/mihomo
# 给mihomo添加权限
chmod +x mihomo
# 将mihomo移动
cp mihomo /usr/local/bin
# 配置config.yaml
mkdir /etc/mihomo -p
vi /etc/mihomo/config.yaml

#启动必须以如下方式启动,直接运行mihomo会取默认的配置,不会取etc/mihomo/config.yaml
/usr/local/bin/mihomo -d /etc/mihomo
  1. 配置 config.yaml
markdown 复制代码
*   编辑配置文件,填写代理节点信息(如使用 Trojan、Vmess 等)
*   示例结构见下文
yaml 复制代码
mixed-port: 7893
allow-lan: true
mode: global
log-level: info
external-ui: /root/.config/mihomo/ui # yacd解压的位置
external-controller: 0.0.0.0:9090

proxies: # 自己修改
  - name: 香港
    type: trojan
    server: aa.bb.com
    port: 465
    password: password
    alpn:
      - h2
      - http/1.1
    skip-cert-verify: true

proxy-groups:
  - name: Proxy
    type: select
    proxies:
      - 香港 # 跟proxies中设置的名字保持一致

rules:
  - MATCH,Proxy 
  1. 启动 mihomo ,命令行执行mihomo

    • 推荐使用systemd配置后台运行,自己查阅相关资料
  2. 访问管理界面

    • 在浏览器中打开:默认使用 Yacd 面板,手动选择代理节点为"代理模式",避免默认直连不生效的问题。

      arduino 复制代码
      http://<服务器IP>:9090/ui/

四、一键安装脚本(示例)

你可以将以下内容保存为 install_mihomo.sh 并执行:

bash 复制代码
bash
复制编辑
#!/bin/bash
set -e

echo "下载并解压 mihomo..."
wget -O mihomo.tar.gz https://github.com/MetaCubeX/mihomo/releases/latest/download/mihomo-linux-amd64.tar.gz
tar -xzf mihomo.tar.gz -C /usr/local/bin

echo "创建配置目录..."
mkdir -p /root/.config/mihomo
# 将你的 config.yaml 上传到此目录

echo "下载并配置 Yacd..."
mkdir -p /root/.config/mihomo/ui
wget https://github.com/haishanh/yacd/releases/latest/download/yacd.tar.gz
tar -xzf yacd.tar.gz -C /root/.config/mihomo/ui

echo "启动 mihomo..."
nohup mihomo -d /root/.config/mihomo > /dev/null 2>&1 &

echo "完成!请访问:http://<服务器IP>:9090/ui/ 进行管理。"

五、常见问题

  1. 代理未生效?

    • 默认规则可能走的是直连(DIRECT),请通过图形界面手动切换为"全局代理"或指定规则使用节点。
  2. 界面打不开?

    • 确保已开放服务器的 9090 端口(如使用宝塔,可在防火墙设置中添加)。
  3. 配置文件无效?

    • 检查 config.yaml 路径、格式及节点配置是否正确,必要时查看日志排查错误。

六、参考链接

相关推荐
老马啸西风29 分钟前
windows docker-02-docker 最常用的命令汇总
linux·运维·ubuntu·docker·容器·eureka·maven
sztomarch1 小时前
Tshark-Tcpdump
linux·运维·网络·测试工具·tcpdump
手眼通天王水水1 小时前
【Linux】3. Shell语言
linux·运维·服务器·开发语言
花小璇学linux2 小时前
imx6ull-系统移植篇9——bootz启动 Linux 内核
linux·uboot·imx6ull·嵌入式软件
程序员JerrySUN2 小时前
Valgrind Memcheck 全解析教程:6个程序说明基础内存错误
android·java·linux·运维·开发语言·学习
大母猴啃编程2 小时前
再谈文件-ext2文件系统
linux·运维·服务器·网络
NEXU52 小时前
Linux:线程控制
linux·运维·服务器
古井无波 20243 小时前
ARM64高速缓存Cache类型
linux
菜萝卜子5 小时前
【Linux】AKHQ实现kafka可视化
linux·运维·kafka
long_mingyue5 小时前
网鼎杯2020青龙组notes复现
linux·服务器·windows