Skip to content

Linux 代理客户端配置与透明代理终极指南 (Ubuntu / Debian / CentOS) ​

适用发行版: Ubuntu 20.04 / 22.04 / 24.04 LTS、Debian 11 / 12、Arch Linux、CentOS / Rocky Linux 9
面向人群: 全栈开发者、AI 算法工程师、云服务器运维工程师
更新核验: 2026-11-10 · 老头博客网络可观测性实验室


一、Linux 为什么推荐命令行二进制内核?(Why Mihomo Binary) ​

在没有桌面图形环境(GUI)的远程 Linux 服务器或云开发机(如 AWS EC2、AutoDL 算力机、阿里云)上,最优雅、最轻量的方案是直接运行编译好的 Mihomo (原 Clash.Meta) 静态二进制文件,并通过 Systemd 实现开机自启守护。

核心优势对比: ​

  • 零 GUI 依赖:无需安装庞大的桌面组件,仅需单个可执行二进制文件;
  • 极低资源开销:常驻内存仅占用 15MB-30MB,CPU 占用率接近 0%;
  • 全系统环境兼容:一键解决 git clone 超时、pip install 缓慢、HuggingFace 模型权重下载中断与 Docker Hub 镜像拉取故障。

二、Mihomo 二进制部署与 Systemd 开机自启全流程 ​

mermaid
flowchart LR
    Step1["下载对应架构的 mihomo 二进制文件至 /usr/local/bin"] --> Step2["下载机场订阅配置文件 config.yaml 至 /etc/mihomo"]
    Step2 --> Step3["创建 systemd 服务文件 mihomo.service 并设置开机自启"]
    Step3 --> Step4["配置本地 7890 端口代理环境变量验证连通性"]

步骤 1:下载对应架构的二进制文件 ​

以 64 位 x86_64 架构(大多数 PC 和云服务器)为例:

bash
# 切换至 root 或具备 sudo 权限的用户
cd /tmp

# 下载最新版 Mihomo (Clash.Meta) 二进制包
wget https://github.com/MetaCubeX/mihomo/releases/download/v1.18.9/mihomo-linux-amd64-v1.18.9.gz

# 解压并移动至系统可执行路径
gzip -d mihomo-linux-amd64-v1.18.9.gz
sudo mv mihomo-linux-amd64-v1.18.9 /usr/local/bin/mihomo
sudo chmod +x /usr/local/bin/mihomo

# 验证安装是否成功
mihomo -v

步骤 2:下载并配置订阅文件 ​

bash
# 创建配置专属目录
sudo mkdir -p /etc/mihomo

# 将您的机场 Clash 订阅链接转换为本地配置文件 (替换 YOUR_SUB_URL)
sudo curl -L -o /etc/mihomo/config.yaml "YOUR_SUB_URL"

# 检查配置文件前几行,确保 mixed-port 已被正确声明
head -n 20 /etc/mihomo/config.yaml

步骤 3:配置 Systemd 守护进程 ​

创建服务单元文件:

bash
sudo nano /etc/systemd/system/mihomo.service

粘贴以下标准配置:

ini
[Unit]
Description=Mihomo (Clash.Meta) Proxy Service
After=network.target network-online.target nss-lookup.target

[Service]
Type=simple
User=root
ExecStart=/usr/local/bin/mihomo -d /etc/mihomo
Restart=on-failure
RestartSec=5
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

保存并退出(Nano 按 Ctrl+O 回车,再按 Ctrl+X)。

步骤 4:启动并设置开机自启 ​

bash
# 重载系统服务
sudo systemctl daemon-reload

# 启动并配置开机自动运行
sudo systemctl enable --now mihomo

# 查看实时运行日志
sudo journalctl -u mihomo -f -o cat

三、Linux 终端全流量环境注入实战 ​

当 Mihomo 成功在后台运行后,默认会监听本地 127.0.0.1:7890 混合端口(包含 HTTP 与 SOCKS5)。

1. 终端环境快速注入 ​

在 ~/.bashrc 或 /etc/profile 末尾添加以下函数,实现随时随地一键开启/关闭终端代理:

bash
# 编辑配置文件
nano ~/.bashrc

# 在文件末尾追加:
function proxy_on() {
    export http_proxy="http://127.0.0.1:7890"
    export https_proxy="http://127.0.0.1:7890"
    export all_proxy="socks5://127.0.0.1:7890"
    echo -e "\033[32m[✓] Proxy environment enabled (127.0.0.1:7890)\033[0m"
    curl -s https://ipinfo.io | grep -E "ip|country|city"
}

function proxy_off() {
    unset http_proxy https_proxy all_proxy
    echo -e "\033[31m[x] Proxy environment disabled\033[0m"
}

# 保存后使其立即生效
source ~/.bashrc

在终端输入 proxy_on 即可一键激活代理,输入 proxy_off 即可恢复直连。

2. Docker 守护进程专属代理配置 ​

Docker 默认不读取用户环境变量。若要让 docker pull 加速,需配置 Docker 的专属环境文件:

bash
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf

写入以下内容:

ini
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"
Environment="NO_PROXY=localhost,127.0.0.1,docker-registry.local"

保存后重载并重启 Docker:

bash
sudo systemctl daemon-reload
sudo systemctl restart docker

四、Web 控制面板远程可视化管理 ​

如果您习惯使用图形界面切换节点或查看当前网速,可利用 Mihomo 内置的外部控制器(External Controller):

  1. 确保 config.yaml 中包含:
    yaml
    external-controller: '0.0.0.0:9090'
    secret: 'your_secret_password'
  2. 在任意电脑浏览器中打开在线控制面板:https://clash.metacubex.one;
  3. 输入您 Linux 服务器的公网 IP、端口 9090 及密钥密码,即可像客户端一样图形化切换节点、查看晚高峰实时流量拓扑。

五、内链导航 ​

免责声明:本站包含商业推广链接,购买可能产生维护佣金,不影响最终价格。 | 关于我们 · 评测方法论 · 隐私政策 · 服务条款