安装 ClashX
下载并安装 ClashX:
- 下载地址:访问官方网站或通过包管理器安装。
- 安装步骤:
- 使用包管理器安装
clashx,例如在 Debian 或 Ubuntu 上运行:sudo apt-get install clashx
- 如果使用 Docker,直接从 Docker 官方镜像拉取:
docker pull clashx/clashx
- 使用包管理器安装
启动 ClashX
启动 ClashX 代理服务器:
- 启动命令:
- 使用本地配置文件启动:
clashx -c /path/to/config.json
- 或者在 Docker 中启动:
docker run -d -p 105:105 clashx/clashx
- 使用本地配置文件启动:
配置 ClashX
创建或编辑配置文件 config.json,结构如下:
{
"port": 105, // 代理服务器监听地址和端口
"interfaces": [
{
"name": "eth",
"address": "192.168.1.1/24"
}
],
"rules": [
{
"source": ".../",
"destination": "192.168.1.1:80",
"position": 1,
"type": "transparent"
}
],
"DNS": {
"nameservers": [
"8.8.8.8",
"8.8.4.4"
]
}
}
port:指定代理服务器的地址和端口,默认为 127...1:105。interfaces:配置网络接口,指定哪些网络接口使用代理。rules:定义网络流量规则,决定哪些流量通过代理。source:源IP地址范围。destination:目标IP地址和端口。position:规则的优先级。type:代理类型,transparent表示透明代理,redirect表示重定向代理。
DNS:配置 DNS 服务器,代理会解析域名到对应的IP地址。
设置 DNS 和 HTTP/HTTPS 重定向
在配置文件中添加 DNS 和 HTTP/HTTPS 重定向规则:
{
"DNS": {
"nameservers": [
"192.168.1.1"
]
},
"rules": [
{
"source": ".../",
"destination": "192.168.1.1:80",
"position": 1,
"type": "transparent"
},
{
"source": ".../",
"destination": "192.168.1.1:443",
"position": 2,
"type": "transparent"
}
]
}
- DNS 重定向:指定内部 DNS 服务器,用户查询域名时会先查找内部服务器。
- HTTP/HTTPS 重定向:当代理接收未解析的域名请求时,重定向到内部 DNS 服务器。
配置外部访问
如果需要外部用户访问内部服务器,配置 ClashX 的外部访问:
{
"port": 105,
"interfaces": [
{
"name": "eth",
"address": "192.168.1.1/24"
}
],
"rules": [
{
"source": ".../",
"destination": "192.168.1.1:80",
"position": 1,
"type": "transparent"
},
{
"source": ".../",
"destination": "192.168.1.1:443",
"position": 2,
"type": "transparent"
}
],
"external_access": {
"enabled": true,
"listen": "...:105",
"local_only": false,
"listen_ipv6": true
}
}
external_access:配置外部访问选项。enabled:是否启用外部访问。listen:外部访问的地址和端口,默认为 0...:105。local_only:限制外部访问仅限于本地网络,防止外部用户访问内部服务。listen_ipv6:是否监听 IPv6 地址。
应用配置
- 本地使用:在本地机器上配置 ClashX代理,访问外部服务器:
clashx -c /path/to/config.json
- 远程使用:如果运行在服务器上,配置外部访问,允许其他设备通过代理访问内部资源。
测试配置
- 检查代理状态:运行
clashx -i查看代理状态。 - 测试网络:在本地或其他设备上,使用浏览器或 curl 命令测试通过 ClashX 代理是否能访问目标服务器:
curl -I http://proxy-server.example.com
故障排除
- 端口冲突:确保代理服务器的端口 105 未被其他服务占用。
- 防火墙设置:确保防火墙允许代理服务器的端口和地址进行通信。
- DNS 解析问题:检查内部 DNS 服务器是否正确解析域名。
通过以上步骤,您可以配置 ClashX 代理,管理网络流量,实现透明代理、DNS 重定向和外部访问等功能,对于更复杂的网络环境,可以通过扩展规则和配置文件进一步定制代理行为。




