Flareprox混淆工具:基于Cloudflare Workers的IP轮换与URL重定向

Flareprox是一款通过Cloudflare Workers部署HTTP代理端点的工具,支持所有HTTP方法并利用Cloudflare全球网络实现IP伪装。本文详细介绍其功能特性、工作原理、快速入门指南及实际应用场景。

Flareprox:简单的IP轮换和URL重定向工具

Flareprox由MrTurvey开发,是一个通过Cloudflare Workers自动部署HTTP代理端点的工具,可轻松将所有流量重定向到任意指定URL。它支持所有HTTP方法(GET、POST、PUT、DELETE等),并通过Cloudflare的全球网络提供IP掩蔽功能。

功能特性

  • HTTP支持:所有HTTP方法(GET、POST、PUT、DELETE、PATCH、OPTIONS、HEAD)
  • 简单URL重定向:提供任意URL,FlareProx通过Cloudflare重定向流量
  • 全球网络:利用Cloudflare的全球CDN基础设施
  • 免费层级:Cloudflare免费计划每天支持100,000个请求
  • 轻松部署:单命令部署和管理

工作原理

FlareProx部署充当HTTP代理的Cloudflare Workers。当您发出请求时:

  1. 请求路由:您的请求被发送到FlareProx端点
  2. URL提取:Worker从查询参数或自定义HTTP头中提取目标URL
  3. 请求代理:Worker将您的请求转发到目标URL
  4. 响应中继:目标的响应通过Cloudflare中继回来
  5. IP掩蔽:您的原始IP被Cloudflare基础设施掩蔽

快速入门

安装依赖

1
2
3
git clone <repository-url>
cd flareprox
pip install -r requirements.txt

配置Cloudflare访问

运行 python3 fireprox.py config 或直接编辑项目目录中的 flareprox.json

1
2
3
4
5
6
{
  "cloudflare": {
    "api_token": "your_cloudflare_api_token",
    "account_id": "your_cloudflare_account_id"
  }
}

部署代理端点

1
2
3
4
5
# 创建2个代理端点
python3 flareprox.py create --count 2

# 查看已部署的端点
python3 flareprox.py list

使用代理

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
# 测试所有端点是否正常运行
python3 flareprox.py test

# 按HTTP方法示例

# GET请求
curl "https://your-worker.account.workers.dev?url=https://httpbin.org/get"

# 带数据的POST请求
curl -X POST -d "username=admin" "https://your-worker.account.workers.dev?url=https://httpbin.org/post"

# 带JSON的PUT请求
curl -X PUT -d '{"username":"admin"}' -H "Content-Type: application/json" \
  "https://your-worker.account.workers.dev?url=https://httpbin.org/put"

# DELETE请求
curl -X DELETE "https://your-worker.account.workers.dev?url=https://httpbin.org/delete"

每个部署的FlareProx端点接受两种格式的请求:

1
2
3
4
5
# 查询参数
curl "https://your-worker.account.workers.dev?url=https://httpbin.org/ip"

# 自定义头
curl -H "X-Target-URL: https://httpbin.org/ip" https://your-worker.account.workers.dev

代理清理

1
2
# 删除所有代理端点
python3 flareprox.py cleanup

获取Cloudflare凭证

Cloudflare Workers设置

  1. 在Cloudflare注册
  2. 转到API令牌
  3. 点击"创建令牌"并使用"编辑Cloudflare Workers"模板
  4. 将"账户资源"和"区域资源"设置为全部。点击"继续到摘要"
  5. 点击"创建令牌"并从仪表板复制令牌和您的账户ID

编程使用

FlareProx可以导入并直接在Python应用程序中使用。以下是发送POST请求的方法:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/usr/bin/env python3
from flareprox import FlareProx, FlareProxError
import json

# 初始化FlareProx
flareprox = FlareProx(config_file="flareprox.json")

# 检查是否配置
if not flareprox.is_configured:
    print("FlareProx not configured. Run: python3 flareprox.py config")
    exit(1)

# 如果不存在端点,创建一些端点
endpoints = flareprox.sync_endpoints()
if not endpoints:
    print("Creating proxy endpoints...")
    flareprox.create_proxies(count=2)

# 通过FlareProx发送POST请求
try:
    # 准备POST数据
    post_data = json.dumps({
        "username": "testuser",
        "message": "Hello from FlareProx!",
        "timestamp": "2025-01-01T12:00:00Z"
    })

    headers = {
        "Content-Type": "application/json",
        "User-Agent": "FlareProx-Client/1.0"
    }

    # 通过随机FlareProx端点发送POST请求
    response = flareprox.redirect_request(
        target_url="https://httpbin.org/post",
        method="POST",
        headers=headers,
        data=post_data
    )

    if response.status_code == 200:
        result = response.json()
        print(f"✓ POST successful via FlareProx")
        print(f"Origin IP: {result.get('origin', 'unknown')}")
        print(f"Posted data: {result.get('json', {})}")
    else:
        print(f"Request failed with status: {response.status_code}")

except FlareProxError as e:
    print(f"FlareProx error: {e}")
except Exception as e:
    print(f"Request error: {e}")

使用场景

  • API开发:通过不同IP地址测试API
  • 网络爬虫:通过Cloudflare网络路由请求
  • 安全测试:在测试期间掩蔽您的原始IP
  • 负载测试:跨多个端点分发请求
  • 隐私保护:在您的请求和目标服务器之间添加额外层

从GitHub链接克隆仓库。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计