返回博客列表
2025年11月30日
4 min read

Linux系统服务器上安装Clash代理

在Linux系统服务器上安装Clash代理服务指南。

Linux系统服务器上安装Clash代理

Linux 服务器安装 Clash 代理服务指南

本文介绍如何在 Linux 服务器环境下规范地安装 Clash,配置开机自启,解决常见的 MMDB 数据库缺失问题,并设置系统级代理。

1. 软件下载与安装

1.1 下载软件

请访问下方地址下载 Clash 核心文件: 下载地址Private Seafile (Clash Core)

注意:请根据你的系统架构选择对应的版本:

  • Intel/AMD 64位 CPU (常见服务器):选择 clash-linux-amd64-xxx.gz
  • ARM 64位 CPU (如树莓派、Mac M1/M2 虚拟机):选择 clash-linux-arm64-xxx.gz
  • 可以使用命令 uname -m 查看架构(x86_64 对应 amd64, aarch64 对应 arm64)。

1.2 解压与安装

假设你下载的文件名为 clash-linux-amd64-v1.18.0.gz。为了遵循 Linux 规范,我们将可执行文件移动到 /usr/local/bin。

假设你下载的文件名为 clash-linux-amd64-v1.18.0.gz。为了遵循 Linux 规范,我们将可执行文件移动到 /usr/local/bin

# 1. 解压文件
gzip -d clash-linux-amd64-v1.18.0.gz
 
# 2. 重命名为 clash
mv clash-linux-amd64-v1.18.0 clash
 
# 3. 赋予执行权限
chmod +x clash
 
# 4. 移动到系统可执行目录
sudo mv clash /usr/local/bin/

1.3 创建配置目录

我们将配置文件统一存放在 /etc/clash 目录下。

sudo mkdir -p /etc/clash

2. 配置文件导入

2.1 导入订阅配置

请将你的订阅文件(.yaml 格式)上传到服务器,并重命名为 config.yaml,放置在 /etc/clash/ 目录下。

2.2 解决 MMDB 数据库缺失报错

首次运行可能会报错:error=can't initial MMDB: can't download MMDB。我们需要手动下载 GeoIP 数据库并放入配置目录。

# 下载 Country.mmdb (使用 Gitee 镜像加速下载)
wget -O Country.mmdb https://gitee.com/mirrors/Pingtunnel/raw/master/GeoLite2-Country.mmdb
# 将数据库文件移动到配置目录
sudo mv Country.mmdb /etc/clash/
cd /etc/clash
ls

此时,/etc/clash/ 目录下应至少包含 config.yaml 和 Country.mmdb两个文件。

3. 配置开机自启 (Systemd)

为了让 Clash 在后台稳定运行,并且更好的管理clash,我们需要创建一个系统服务。

sudo nano /etc/systemd/system/clash.service

写入以下内容:

快捷键:Ctrl+O保存,Enter确定,Ctrl+X退出。

[Unit]
Description=Clash Service
After=network.target
 
[Service]
Type=simple
# 推荐使用 root 用户运行,避免权限问题
User=root
# 核心启动命令:
# -d 指定工作目录(确保能找到 Country.mmdb)
# -f 指定配置文件路径
ExecStart=/usr/local/bin/clash -d /etc/clash -f /etc/clash/config.yaml
Restart=on-failure
 
[Install]
WantedBy=multi-user.target

保存退出后,执行以下命令启动服务:

# 重载系统服务
sudo systemctl daemon-reload
 
# 启动 Clash
sudo systemctl start clash
 
# 设置开机自启(可选)
sudo systemctl enable clash
 
# 检查运行状态
sudo systemctl status clash

如果看到 active (running),说明服务启动成功。

4. 代理设置

Clash 启动后,默认监听 127.0.0.1:7890。你可以根据需求选择临时生效或永久生效。

4.1 检查是否已有代理

env | grep -i proxy

4.2 临时生效 (仅当前终端窗口)

适用于临时下载文件或拉取代码:

export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890

取消代理:

unset http_proxy
unset https_proxy

4.3 永久生效

如果你希望每次登录服务器都自动开启代理,可以将配置写入用户的 .bashrc 文件。

执行以下命令:

echo "export http_proxy=http://127.0.0.1:7890" >> ~/.bashrc
echo "export https_proxy=http://127.0.0.1:7890" >> ~/.bashrc
source ~/.bashrc

4.4 测试代理

# 测试 Google 连接(如果返回 http 200成功码和HTML 代码则成功) 
curl -I https://www.google.com

可以参考下面成功截图: 成功响应

推荐阅读

← 上一篇
没有更早的文章了

发表评论

欢迎留下你的想法和见解,使用 GitHub 账号登录即可参与讨论