
قواعد الأمان لخطة Cloudflare المجانية (نهج Zero Trust) للمواقع الصغيرة
أنا Aksana (5Ksana)، مؤسِّسة مشروع BitcoinArt مفتوح المصدر. زوجي، Aliaksandr (ALEX) Zasinets، يساعد في الأمان والاختبار وأدوات المصادر المفتوحة. Aliaksandr هو مهندس أتمتة ضمان الجودة (QA Automation Engineer)، ومختبر اختراق (Penetration Tester)، وباحث أمني في المصادر المفتوحة. يعمل على أمان المواقع، وحماية Cloudflare، وقواعد WAF، والحماية من هجمات DDoS، وترويسات الأمان، وحماية من الروبوتات، والحماية من الماسحات الضارة. شكرت Apple عليaksandr لاكتشافه والإبلاغ عن مشكلات أمنية في خوادم الويب.
وهو مُدرَج في شكر وتقدير أمان Apple:
https://support.apple.com/en-ug/102774
هذا المستودع، cloudflare-security-art، هو دليل أمان مجاني للمواقع الصغيرة والفنانين والمبدعين والمشاريع المستضافة ذاتيًا التي تستخدم Cloudflare. إذا ساعدك هذا المشروع في حماية موقعك، فيرجى دعم عملنا مفتوح المصدر من خلال GitHub Sponsors:
https://github.com/sponsors/buybitart
يساعدنا دعمك في اختبار قواعد أمان Cloudflare، وتحديث هذا الدليل، وكتابة أمثلة بسيطة، والحفاظ على هذا المشروع مجانيًا. إذا ساعدك هذا المستودع، فيرجى أيضًا منحه نجمة ⭐. فهذا يساعد المشروع على النمو. شكرًا لك! ❤️
سيساعدك هذا الدليل في حماية موقعك باستخدام Cloudflare. وهو يتضمن قواعد جدار الحماية، والحماية من DDoS، وترويسات الأمان، وإعدادات الروبوتات.
وهو يتضمن:
قاعدة Cloudflare الخاصة بي هي:
تحاول روبوتات الذكاء الاصطناعي نسخ محتواك!. انظر كيف يسرق الذكاء الاصطناعي فنك و"سرقة جماعية": آلاف الفنانين يطالبون بإلغاء مزاد فن الذكاء الاصطناعي
"أحد الأهداف الرئيسية للفن هو الحوار مع الثقافة.
حتى لو كان ذلك غير مقصود، فإن كل عمل فني يعكس الخلفية الفريدة لصانعه — التي شكّلتها الطعام والدين والموسيقى والأخلاق والفن البصري وغير ذلك.تخيّل طفلًا نشأ في عزلة، لا يُعرض عليه سوى اللوحات 16 ساعة يوميًا، ويُعاقَب إذا لم تُحاكِ رسوماته الأسبوعية تلك الصور بدقة كافية. إنه لا يعرف لماذا يرسم — إنه فقط يقلّد. إنه لا يُبدع. إنه لا يحاور الفن.
الحاسوب أبسط من ذلك. إنه لا يشعر، ولا يتأمل، ولا يتذكر صوت الجاز في عشرينيات القرن الماضي أو المرة الأولى التي رأى فيها Warhol.
لكن الفنان البشري يفعل.
إنه يحمل الخبرة والعاطفة والنية. يستعير من الماضي، ويمزجه بالحاضر، ويتحدث بصوته الخاص. هذا هو الفن. هذا هو الفرق.عندما يكون الفن مجرد تقليد من أجل الربح، يكون فارغًا. لكن عندما يتحدث — فإنه يهم."
تتنكّر أدوات الذكاء الاصطناعي في هيئة محركات بحث، لكنها لا تجلب لك زوارًا.
بل إن بعضها يستخدم وكلاء مستخدمين مزيفين، لذا قد لا توقفها إعدادات Cloudflare الأساسية.
تحجب هذه القاعدة جميع الروبوتات افتراضيًا، ثم تسمح فقط بالروبوتات المفيدة التي تساعد موقعك على الفهرسة.
| الخطوة | الوصف |
|---|---|
| الخطوة 1 – قواعد جدار حماية تطبيقات الويب (WAF) | تحجب الروبوتات والزاحفات والاستغلالات والطلبات الضارة (الأجزاء 1‑5). |
| الخطوة 2 – حماية DDoS من الطبقة السابعة وتحديد المعدل | تضيف تجاوزًا للطبقة السابعة وحدودًا للمعدل لإيقاف الفيضانات. |
| الخطوة 3 – إدارة الروبوتات | تُهيّئ إعدادات روبوتات Cloudflare لحجب الذكاء الاصطناعي والروبوتات غير المرغوب فيها. |
| الخطوة 4 – ترويسات الأمان | تضبط ترويسات HTTP الموصى بها لتقوية الموقع. |
[!IMPORTANT]
يُوصى أيضًا بـتعطيل ميزةBot Fight Modeفي تبويبSecurity.
يحجب هذا الدليل بالفعل جميع الروبوتات غير المرغوب فيها وزواحف الذكاء الاصطناعي مع السماح فقط بالروبوتات المهمة والموثوقة المستخدمة لفهرسة موقعك مثل:
- bing
- slurp
- duckduckbot
- cloudflare
ولهذا، لا حاجة لتفعيل Bot Fight Mode لأنه قد يتعارض مع هذه الروبوتات المسموح بها ويعطّل الفهرسة السليمة.
انسخ هذه التعبيرات إلى لوحة تحكم Cloudflare الخاصة بك لقواعد WAF المخصصة.
اقرأ إنشاء قاعدة مخصصة في لوحة التحكم.
توقف هذه القاعدة حركة الويب الآلية الضارة من خلال فحص كل طلب وحجب أسماء User‑Agent الفارغة أو الغريبة مثل المتصفحات بلا واجهة (headless browsers) أو الماسحات، وحركة المرور من مجموعات IP معينة تستخدم "siteaudit"، وترويسات Host التي تحتوي على ":80" أو ":443"، وملفات تعريف ارتباط Cloudflare الخاطئة، وأي Cloudflare client.bot ليس زاحف بحث موثّقًا أو تحدي ACME، وأي طلب HTTP/1.0 أو HTTP/1.1 ما لم يطلب "/robots.txt" أو يأتي من روبوت بحث حقيقي أو فحص ACME.
ملاحظة🔒 توقف هذه القاعدة حوالي 90% من جميع التهديدات. فهي تقطع حركة الروبوتات الضارة قبل وصولها إلى التطبيق.
الإجراء: Block
(
(
http.user_agent eq ""
or http.user_agent eq " "
or http.user_agent eq "'"
or http.request.headers["user-agent"][0] eq ""
or lower(http.user_agent) contains "puppeteer"
or lower(http.user_agent) contains "phantomjs"
or lower(http.user_agent) contains "selenium"
or lower(http.user_agent) contains "slimerjs"
or lower(http.user_agent) contains "nightmare"
or lower(http.user_agent) contains "casperjs"
or lower(http.user_agent) contains "pyppeteer"
)
or (ip.src.asnum in {135061 23724 4808} and http.user_agent contains "siteaudit")
or (http.host contains ":80")
or (http.host contains ":443")
or (
http.cookie contains "cf_use_ob="
and not http.cookie contains "0"
and not http.cookie contains "80"
and not http.cookie contains "443"
and not cf.client.bot
)
or (
cf.client.bot
and not (
(
cf.verified_bot_category in {"Search Engine Crawler"}
and (
lower(http.user_agent) contains "google"
or lower(http.user_agent) contains "bing"
or lower(http.user_agent) contains "slurp"
or lower(http.user_agent) contains "duckduckbot"
or lower(http.user_agent) contains "cloudflare"