تقدم Cloudflare منتجين متميزين لحماية الروبوتات، كثيرًا ما يخلطهما المطورون: Bot Management (دفاع على مستوى شبكة المؤسسة) وTurnstile (أداة بديلة مجانية لـ CAPTCHA). Bot Management عبارة عن منصة شاملة تتضمن قواعد WAF وتحديد المعدل والتحليل السلوكي. Turnstile عبارة عن أداة CAPTCHA مستقلة يمكن لأي موقع ويب تضمينها مجانًا. يعد فهم الفرق أمرًا بالغ الأهمية لاختيار نهج الأتمتة الصحيح.
مقارنة سريعة
| ميزة | إدارة البوت | Turnstile |
|---|---|---|
| ما هو | منصة الدفاع عن الروبوتات للمؤسسات | القطعة CAPTCHA مجانية |
| التسعير | خطة المؤسسة ($$$) | مجاني لجميع الخطط |
| النشر | على مستوى الشبكة (وكيل Cloudflare) | أداة JavaScript (تضمينها في الصفحة) |
| ** يتطلب Cloudflare DNS ** | نعم | لا (يعمل على أي موقع) |
| التحدي المرئي | في بعض الأحيان (التحدي المُدار) | نادرًا (غير مرئي في الغالب) |
| ** نطاق الكشف ** | جميع طلبات المجال | إجراءات صفحة محددة (إرسال النموذج، وما إلى ذلك) |
| نقاط البوت | 1-99 (لكل طلب) | Pass/fail (لكل تحدي) |
| تكامل WAF | نعم (القواعد تعتمد على نتيجة الروبوت) | لا |
| ** تحدي JavaScript ** | نعم (صفحة انتظار لمدة 5 ثوانٍ) | نعم (إثبات العمل في الخلفية) |
| ** الحد من المعدل ** | نعم | لا |
| ** دعم CaptchaAI ** | عبر طرق Turnstile/Challenge | نعم (نسبة النجاح 100%) |
إدارة الروبوتات Cloudflare (للمؤسسات)
تعد إدارة الروبوتات جزءًا من خطة Cloudflare للمؤسسات. وهو يعمل على مستوى الشبكة — حيث يتم تقييم كل طلب إلى المجال قبل الوصول إلى الخادم الأصلي.
كيف تعمل إدارة الروبوتات
Request arrives at Cloudflare edge
↓
Bot Management engine evaluates:
├─ Machine learning model (behavioral fingerprint)
├─ Heuristics (known bot patterns)
├─ JavaScript fingerprinting (if JS challenge triggered)
├─ JA3/JA4 TLS fingerprint
├─ HTTP header analysis
└─ IP reputation (Cloudflare sees ~20% of internet traffic)
↓
Bot score assigned: 1 (definitely bot) to 99 (definitely human)
↓
WAF rules act on the score:
- Score > 50 → Allow
- Score 30-50 → Managed challenge
- Score < 30 → Block or JavaScript challenge
مكونات إدارة الروبوتات
| مكون | الغرض |
|---|---|
| نقاط البوت | النتيجة المستندة إلى ML لكل طلب |
| ** تحدي الإدارة ** | يُظهر تحدي JS أو Turnstile بشكل تكيفي |
| وضع قتال سوبر بوت | الوضع المبسط لخطط Pro/Business |
| تحليلات الروبوت | لوحة التحكم تعرض حركة المرور البشرية مقابل الروبوتات |
| قواعد WAF المخصصة | القواعد التي يتم تشغيلها على عتبات نقاط الروبوت |
| ** تحديد السعر ** | حدود معدل الطلب لكل IP/session |
| ** اكتشاف JavaScript ** | متصفح مقطوع الرأس والكشف عن أداة التشغيل الآلي |
ما يواجه الأتمتة
عندما يستخدم أحد المواقع إدارة الروبوتات، قد ترى الطلبات التلقائية ما يلي:
- الحظر المباشر (403) — نتيجة الروبوت منخفضة جدًا، كتل قاعدة WAF
- صفحة تحدي JavaScript — صفحة "التحقق من متصفحك" مدتها 5 ثوانٍ
- التحدي المُدار — عنصر واجهة المستخدم Turnstile أو تحدي JS
- تمريرة غير مرئية — تم السماح بالطلب (درجة الروبوت عالية بدرجة كافية)
Cloudflare Turnstile (اختبار CAPTCHA مجاني)
Turnstile عبارة عن أداة CAPTCHA مستقلة تحل محل اختبارات CAPTCHA التقليدية. إنه يعمل بشكل مستقل عن Bot Management ويمكن استخدامه على أي موقع ويب (وليس فقط مواقع وكيل Cloudflare).
كيف يعمل Turnstile
Page loads Turnstile widget
↓
Widget runs background checks:
├─ Browser proof-of-work challenge (cryptographic puzzle)
├─ Private Access Token (Apple devices)
├─ Browser environment validation
└─ Cloudflare threat intelligence
↓
Result: cf-turnstile-response token generated
↓
Token submitted with form data
↓
Server validates token via Cloudflare API (siteverify)
أوضاع القطعة الدوارة
| الوضع | السلوك | حالة الاستخدام |
|---|---|---|
| إدارة | يقرر Cloudflare بين غير المرئي والتفاعلي | افتراضي، موصى به |
| ** غير تفاعلية ** | غير مرئي دائمًا (إثبات العمل فقط) | أشكال منخفضة الاحتكاك |
| غير مرئية | لا توجد أداة مرئية، ويتم تشغيلها عند تحميل الصفحة | التحقق من الخلفية |
التكامل Turnstile
<!-- Simple Turnstile integration -->
<div class="cf-turnstile" data-sitekey="0x4AAAAAAAC3DHQhMMQ_Rxrg"></div>
<script src="https://challenges.cloudflare.com/turnstile/v0/api.js" async defer></script>
حل إدارة الروبوتات مقابل Turnstile
حل Turnstile (مباشر)
يتم حل Turnstile من خلال طريقة CaptchaAI's Turnstile بمعدل نجاح عالٍ:
import requests
import time
API_KEY = "YOUR_API_KEY"
submit = requests.post("https://ocr.captchaai.com/in.php", data={
"key": API_KEY,
"method": "turnstile",
"sitekey": "0x4AAAAAAAC3DHQhMMQ_Rxrg",
"pageurl": "https://example.com/signup",
"json": 1,
})
task_id = submit.json()["request"]
for _ in range(60):
time.sleep(5)
result = requests.get("https://ocr.captchaai.com/res.php", params={
"key": API_KEY,
"action": "get",
"id": task_id,
"json": 1,
}).json()
if result.get("status") == 1:
token = result["request"]
print(f"Turnstile token: {token[:50]}...")
break
حل تحديات إدارة الروبوتات
تستخدم إدارة الروبوتات طبقات دفاع متعددة. عادةً ما يكون مكون CAPTCHA (في حالة وجوده) تحديًا مُدارًا يتم عرضه كـ Turnstile:
# Bot Management flow for automation:
# 1. Make initial request
response = requests.get("https://protected-site.com/api/data")
# 2. Check if challenged
if response.status_code == 403:
# Hard block — need to adjust headers, proxy, or approach
pass
elif "challenge" in response.text.lower() or response.status_code == 503:
# JavaScript challenge or managed challenge
# If it contains a Turnstile widget, solve it:
if "cf-turnstile" in response.text or "challenges.cloudflare.com" in response.text:
# Extract sitekey and solve via CaptchaAI
sitekey = extract_turnstile_sitekey(response.text)
token = solve_turnstile(sitekey, "https://protected-site.com/api/data")
صفحة Cloudflare Challenge (غير Turnstile)
صفحة تحدي JavaScript "التحقق من متصفحك" ليست أداة Turnstile. يعالج CaptchaAI هذا عبر طريقة cloudflare_challenge:
submit = requests.post("https://ocr.captchaai.com/in.php", data={
"key": API_KEY,
"method": "cloudflare_challenge",
"sitekey": "managed",
"pageurl": "https://protected-site.com/login",
"json": 1,
})
عندما تواجه كل منتج
| السيناريو | المنتج المحتمل | كيفية التعرف على |
|---|---|---|
| صفحة "التحقق من متصفحك" مدتها 5 ثوانٍ | إدارة الروبوتات (تحدي JS) | cf-chl-bypass، jschl_vc في مصدر الصفحة |
| عنصر Turnstile على النموذج | Turnstile (مستقل) | فئة cf-turnstile، challenges.cloudflare.com/turnstile |
| 403 محظور مع صفحة خطأ Cloudflare | إدارة الروبوتات (كتلة صلبة) | رأس cf-ray، قالب خطأ Cloudflare |
| مربع اختيار تفاعلي على صفحة Cloudflare | التحدي المُدار (Bot Mgmt) | النطاق challenges.cloudflare.com |
| لا يوجد تحدي واضح ولكن تم تعيين ملفات تعريف الارتباط CF | إدارة الروبوتات (نجحت) | ملف تعريف الارتباط cf_clearance |
كود الكشف
import requests
def identify_cloudflare_protection(url):
"""Identify which Cloudflare protection a URL uses."""
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) "
"AppleWebKit/537.36 Chrome/120.0.0.0",
}
response = requests.get(url, headers=headers, timeout=15, allow_redirects=False)
html = response.text
result = {
"cloudflare_protected": "cf-ray" in response.headers.get("cf-ray", "")
or "cloudflare" in response.headers.get("server", "").lower(),
"bot_management_challenge": False,
"turnstile_widget": False,
"hard_block": False,
"passed": False,
}
if response.status_code == 403:
result["hard_block"] = True
elif response.status_code == 503 and "jschl" in html:
result["bot_management_challenge"] = True
elif "cf-turnstile" in html:
result["turnstile_widget"] = True
elif response.status_code == 200:
result["passed"] = True
return result
الأسئلة المتداولة
هل يمكن للموقع استخدام كل من Bot Management و Turnstile؟
نعم. تعمل إدارة الروبوتات على مستوى الشبكة لجميع الطلبات، بينما يمكن إضافة Turnstile كأداة على صفحات محددة. قد يستخدم أحد المواقع إدارة الروبوتات لحظر الروبوتات الواضحة على الحافة و Turnstile في نماذج تسجيل الدخول/signup للتحقق الإضافي.
هل يعتبر Turnstile جزءًا من إدارة الروبوتات؟
ليس مباشرة. Turnstile هو منتج منفصل. ومع ذلك، يمكن أن يؤدي وضع "التحدي المُدار" الخاص بإدارة الروبوت إلى عرض عنصر واجهة مستخدم يشبه Turnstile. أسلوب الحل هو نفسه — استخدم أداة حل Turnstile الخاصة بـ CaptchaAI.
أيهما أصعب في الحل؟
تعد إدارة الروبوتات أكثر صعوبة لأنها تقوم بتقييم كل طلب على مستوى الشبكة باستخدام إشارات متعددة (بصمة TLS وسمعة IP وأنماط الطلب). Turnstile وحده يحمي فقط عمليات إرسال نماذج محددة. بالنسبة لإدارة الروبوتات، تحتاج إلى ترويسات مناسبة وتكوين TLS وتدوير IP بالإضافة إلى حل تحدي CAPTCHA.
هل يحل CaptchaAI كلا الأمرين؟
تعمل CaptchaAI على حل أدوات Turnstile (معدل نجاح عالٍ) وصفحات Cloudflare Challenge. يتطلب الحظر على مستوى الشبكة الخاص بإدارة الروبوت (403 ردود) بنية تحتية إضافية (رؤوس مناسبة ووكلاء) خارج نطاق CaptchaAI - يتعامل CaptchaAI مع مكون تحدي CAPTCHA.
ملخص
Cloudflare Bot Management عبارة عن دفاع على مستوى شبكة المؤسسة يقوم بتقييم كل طلب من خلال تسجيل ML وقواعد WAF والتحليل السلوكي. Cloudflare Turnstile عبارة عن أداة CAPTCHA مجانية تتحقق من المستخدمين من خلال إثبات عمل المتصفح. للأتمتة، يتم حل Turnstile مباشرة معCaptchaAI(نسبة النجاح 100%). تتطلب تحديات إدارة الروبوتات محاكاة متصفح مناسبة بالإضافة إلى CaptchaAI لمكون تحدي CAPTCHA.
مقالات ذات صلة
- فحص تكامل متصفح Cloudflare مقابل Captcha
- Cloudflare Challenge مقابل اكتشاف Turnstile
- مقارنة Geetest وCloudflare Turnstile