Janvh's Blog

Janvh's Blog

MacOS配置Mihomo代理

46
2025-08-04

我不喜欢用mitm的去广告类的功能,所以在macos上也没有选用app类的代理工具,而是和其他平台一样使用裸核mihomo tun后台代理。

Mihomo简介

Mihomo GIthub
Mihomo Wiki
一个全功能全协议的代理工具,支持多协议入站和出站,对机场用户友好的代理工具。

下载安装Mihomo

我的笔记本是M1的air所以选择 arm64版本的二进制文件即可。

  1. 使用 homebrew  安装: $ brew install mihomo  安装后的位置在/opt/homebrew/bin/mihomo
  2. 下载安装:下载链接,建议安装位置:/usr/local/bin/mihomo

准备配置文件

文件路径: /etc/mihomo/config.yaml

sudo mkdir -p /etc/mihomo
sudo chown -R your_username:staff /etc/mihomo # 将 ownership 设置为你的用户,方便编辑

配置文件示例:官方示例

创建 LaunchDaemon 配置文件

我们将创建一个 .plist 文件,并将其放置在 /Library/LaunchDaemons/ 目录下,该目录下的服务会以 root 权限运行。

  1. 创建日志目录 (如果不存在):
    我们将把 mihomo 的日志输出到系统日志目录,方便调试。
sudo mkdir -p /var/log/mihomo
sudo chmod 755 /var/log/mihomo # 确保 root 用户有写入权限
  • 创建 com.mihomo.tun.plist 文件:
    使用 sudo 和你喜欢的文本编辑器(如 nanovim)来创建并编辑这个文件。
sudo nano /Library/LaunchDaemons/com.mihomo.tun.plist

将以下内容粘贴到文件中,并根据你的实际情况进行修改:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.mihomo.tun</string>
    <key>ProgramArguments</key>
    <array>
        <!-- 替换为你的 mihomo 可执行文件的绝对路径 -->
        <string>/usr/local/bin/mihomo</string>
        <string>-f</string> <!-- 指定配置文件路径 -->
        <!-- 替换为你的 mihomo 配置文件(config.yaml 或 config.json)的绝对路径 -->
        <string>/etc/mihomo/config.yaml</string>
    </array>
    <key>RunAtLoad</key>
    <true/> <!-- 在系统启动时加载服务 -->
    <key>KeepAlive</key>
    <true/> <!-- 如果进程崩溃,launchd 会自动重启它 -->
    <!-- 指定 mihomo 的工作目录,通常是配置文件所在的目录 -->
    <key>WorkingDirectory</key>
    <string>/etc/mihomo/</string>
    <!-- 日志文件路径,确保 /var/log/mihomo 目录已创建且可写 -->
    <key>StandardOutPath</key>
    <string>/var/log/mihomo/mihomo_tun.log</string>
    <key>StandardErrorPath</key>
    <string>/var/log/mihomo/mihomo_tun_error.log</string>
    <!-- 核心:以 root 权限运行 -->
    <key>UserName</key>
    <string>root</string>
</dict>
</plist>

请务必修改以下内容:

  • /usr/local/bin/mihomo: 替换为你在步骤二中找到的 mihomo 可执行文件的实际路径。
  • /etc/mihomo/config.yaml: 替换为你的 mihomo 配置文件的实际路径。
  • WorkingDirectory: 确保它指向 mihomo 配置文件的目录。
    保存并关闭文件(在 nano 中按 Ctrl+O,然后按 Enter 保存,Ctrl+X 退出)。

加载并启动 mihomo 服务

现在,使用 launchctl 命令加载并启动新的 launchd 服务。

  1. **加载服务:
sudo launchctl load -w /Library/LaunchDaemons/com.mihomo.tun.plist
  1. 启动服务
sudo launchctl start com.mihomo.tun

管理mihomo服务

停止 mihomo 服务:

sudo launchctl stop com.mihomo.tun

启动 mihomo 服务 (如果已加载):

sudo launchctl start com.mihomo.tun

卸载 (禁用) mihomo 服务 (将不再自动启动):

sudo launchctl unload -w /Library/LaunchDaemons/com.mihomo.tun.plist