一种无需本地电脑配合,直接在 Linux 服务器通过命令行实现网络代理的方法。

操作步骤

上传文件

在服务器新建文件夹(如 Clash),将仓库中下载的 cache.dbclash 可执行文件放入该目录。

准备配置文件

  • 在本地电脑中打开 Clash 代理软件(如 Clash for Windows),右键点击你当前使用的配置文件 -> Show in folder

  • 找到对应的 .yml 文件 (通常是一串数字命名,不同 Clash 软件的名称不同,可以参考下方图片中的内容以确定) 和 Country.mmdb (在.yml文件的上一级目录下)文件。

  • 将这两个文件也上传到服务器的 Clash 文件夹中。

重命名配置

将上传的 .yml 文件重命名为 config.yaml。最终 Clash 文件夹结构如下:

  • cache.db
  • clash
  • config.yaml
  • Country.mmdb

运行 Clash

进入 Clash 文件夹并赋予执行权限,然后在后台运行:

cd Clash/
chmod +x clash
./clash -d .

配置环境变量

保持 Clash 运行窗口开启(或者挂起),在需要代理的窗口输入以下命令(注意端口默认为 7890,具体视你的 config.yaml 文件而定):

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

测试访问:

curl -vI https://huggingface.co

如果能显示 HTTP/1.1 200 Connection established,则说明成功了。

注意事项

  1. 后台运行:建议在一个单独的 tmuxscreen 中运行 ./clash -d .,使其一直在线。
  2. 端口冲突:如果同一台服务器有多人使用此方法,7890 端口会冲突。请自行修改 config.yaml 中的 mixed-port 为其他端口(如 7891,7892 等)。