Linux 一键安装 Clash

preview

  • 默认安装 mihomo 内核,可选安装 clash
  • 自动使用 subconverter 进行本地订阅转换。
  • 多架构支持,适配主流 Linux 发行版:CentOS 7.6Debian 12Ubuntu 24.04.1 LTS

快速开始

环境要求

  • 用户权限:rootsudo。(无权限可参考:#91
  • shell 支持:bashzsh

一键安装

下述命令适用于 x86_64 架构,其他架构请戳:一键安装-多架构

git clone --branch master --depth 1 https://gh-proxy.com/https://github.com/nelvko/clash-for-linux-install.git \
  && cd clash-for-linux-install \
  && sudo bash install.sh

如遇问题,请在查阅常见问题issue 未果后进行反馈。

  • 上述克隆命令使用了加速前缀,如失效请更换其他可用链接
  • 默认通过远程订阅获取配置进行安装,本地配置安装详见:#39
  • 没有订阅?click me

命令一览

执行 clash 列出开箱即用的快捷命令。

兼容多种命令风格

$ clash
Usage:
    clash     COMMAND [OPTION]
    mihomo    COMMAND [OPTION]
    clashctl  COMMAND [OPTION]
    mihomoctl COMMAND [OPTION]

Commands:
    on                   开启代理
    off                  关闭代理
    ui                   面板地址
    status               内核状况
    tun      [on|off]    Tun 模式
    mixin    [-e|-r]     Mixin 配置
    secret   [SECRET]    Web 密钥
    update   [auto|log]  更新订阅

优雅启停

$ clashoff
😼 已关闭代理环境

$ clashon
😼 已开启代理环境
原理
  • 使用 systemctl 控制 clash 启停,并调整代理环境变量的值(http_proxy 等)。应用程序在发起网络请求时,会通过其指定的代理地址转发流量,不调整会造成:关闭代理但未卸载代理变量导致仍转发请求、开启代理后未设置代理地址导致请求不转发。
  • clashon 等命令封装了上述流程。

Web 控制台

$ clashui
╔═══════════════════════════════════════════════╗
║                😼 Web 控制台                  ║
║═══════════════════════════════════════════════║
║                                               ║
║     🔓 注意放行端口:9090                      ║
║     🏠 内网:http://192.168.0.1:9090/ui       ║
║     🌏 公网:http://255.255.255.255:9090/ui   ║
║     ☁️ 公共:http://board.zash.run.place      ║
║                                               ║
╚═══════════════════════════════════════════════╝

$ clashsecret 666
😼 密钥更新成功,已重启生效

$ clashsecret
😼 当前密钥:666
  • 通过浏览器打开 Web 控制台,实现可视化操作:切换节点、查看日志等。
  • 控制台密钥默认为空,若暴露到公网使用建议更新密钥。

更新订阅

$ clashupdate https://example.com
👌 正在下载:原配置已备份...
🍃 下载成功:内核验证配置...
🍃 订阅更新成功

$ clashupdate auto [url]
😼 已设置定时更新订阅

$ clashupdate log
✅ [2025-02-23 22:45:23] 订阅更新成功:https://example.com
  • clashupdate 会记住上次更新成功的订阅链接,后续执行无需再指定。
  • 可通过 crontab -e 修改定时更新频率及订阅链接。
  • 通过配置文件进行更新:pr#24

Tun 模式

$ clashtun
😾 Tun 状态:关闭

$ clashtun on
😼 Tun 模式已开启
  • 作用:实现本机及 Docker 等容器的所有流量路由到 clash 代理、DNS 劫持等。
  • 原理:clash-verge-revclash.wiki
  • 注意事项:#100

Mixin 配置

$ clashmixin
😼 less 查看 mixin 配置

$ clashmixin -e
😼 vim 编辑 mixin 配置

$ clashmixin -r
😼 less 查看 运行时 配置
  • 将自定义配置写在 Mixin 而不是原配置中,可避免更新订阅后丢失自定义配置。
  • 运行时配置是订阅配置和 Mixin 配置的并集。
  • 相同配置项优先级:Mixin 配置 > 订阅配置。

卸载

sudo bash uninstall.sh