Loading...

مساعدة CDN.com.tr

تفعيل HSTS لأسماء مضيفك

يجعل إعداد HSTS الأمني الجاهز الحافة ترسل Strict-Transport-Security: max-age=31536000 على استجابات HTTPS، فيرفض المتصفح الذي زار موقعك مرة واحدة فتحه عبر HTTP العادي لمدة عام كامل.

تفعيل HSTS لأسماء مضيفك

يجعل إعداد HSTS الأمني الجاهز الحافة ترسل Strict-Transport-Security: max-age=31536000 على استجابات HTTPS، فيرفض المتصفح الذي زار موقعك مرة واحدة فتحه عبر HTTP العادي لمدة عام كامل.

قبل تفعيله وبعده

لا معنى لـ HSTS إلا فوق شهادات تعمل بالفعل، ويُقرأ بشكل أفضل جنبًا إلى جنب مع خلفية عمّا تعد به الترويسة فعليًا.

الشهادات أولًا

Auto SSL

يحتاج كل اسم مضيف شهادة صالحة قبل أن يجعل HSTS الرجوع إلى HTTP غير متاح.

افتح الموضوع
اللوحة نفسها

صفحة الأمان

الإعدادات الافتراضية الأخرى على مستوى الحساب بجانب حقل الإعداد الجاهز: قوائم IP، حماية hotlink، حدود المعدل.

افتح الموضوع
خلفية

ما هو HSTS؟

بماذا تَعِد الترويسة المتصفح، ولماذا max-age مهم، وماذا يضيف preload.

اقرأ الدليل

مسار اللوحة

  1. Management Panel
  2. CDN Accounts
  3. Delivery Rules
  4. Security defaults
  5. Security Setting (preset multiselect)

المتطلبات المسبقة

  • يجب أن يعمل كل اسم مضيف تقدّمه هذا الحساب بالفعل عبر HTTPS بشهادة صالحة — بما في ذلك مضيفات الأصول وأي نطاق فرعي ترتبط به من الموقع.
  • يجب تنظيف المحتوى المختلط أولًا. بمجرد سريان HSTS، لا تُعاد محاولة تحميل أصل http:// عبر HTTP، بل يفشل ببساطة.
  • تحتاج دورًا يستطيع حفظ delivery rules: owner أو editor. يمكن لـ viewer قراءة الصفحة لكن لا يستطيع إرسالها.

نموذج القرار

هل أنت جاهز لـ HSTS؟

هذا هو القرار الحقيقي الوحيد. HSTS آمن على موقع يعمل بالكامل عبر HTTPS ومؤلم على موقع ليس كذلك.

  • جاهز: كل اسم مضيف على الحساب، وكل أصل يحمّله، يستجيب عبر HTTPS بشهادة صالحة.
  • غير جاهز: مضيف صور أو نطاق فرعي قديم أو أداة داخلية ما زالت تستجيب عبر HTTP فقط. أصلح هذه أولًا.
  • غير متأكد: افتح موقعك مع إظهار وحدة تحكم المتصفح وابحث عن تحذيرات المحتوى المختلط قبل تفعيل الإعداد.

ما الذي يغطيه هذا الإعداد وما لا يغطيه

معرفة النطاق الدقيق تتجنّب كلًا من الثقة الزائدة وتذكرة دعم تسأل لماذا لم يتأثر نطاق فرعي.

  • يغطي: اسم المضيف الذي قدّم الاستجابة، لمدة عام، عبر HTTPS.
  • لا يغطي: النطاقات الفرعية — لا تحمل الترويسة توجيه includeSubDomains.
  • لا يغطي: قوائم preload — الموقع غير مُقدَّم إلى مزوّدي المتصفحات.

دليل خطوة بخطوة

1

تحقّق من اكتمال HTTPS

هذه الخطوة هي كل مخاطر الميزة. كل ما بعدها نقرتان فقط.

  • افتح موقعك مع إظهار وحدة تحكم المطوّر وابحث عن تحذيرات المحتوى المختلط.
  • اسرد أسماء المضيفين على الحساب في Content Delivery Points وافتح كل واحد عبر https://.
  • تأكد أن كل شهادة صالحة وليست قريبة من الانتهاء في SSL Management.

النتيجة المتوقعة: كل اسم مضيف على الحساب يُحمَّل عبر HTTPS دون تحذيرات شهادة أو محتوى مختلط.

cdnctl equivalent
curl -sI https://www.example.com/ | head -1
curl -sI https://assets.example.com/ | head -1
2

أضف إعداد Hsts

حقل Security Setting قائمة متعددة الاختيار من الإعدادات الأمنية الجاهزة. إضافة Hsts تترك البقية كما هي.

  • اختر الحساب وافتح Delivery Rules.
  • مرّر إلى Security defaults وانقر حقل Security Setting (النص التوضيحي يدعوك لاختيار إعداد أو البحث عنه).
  • اختر Hsts من القائمة، أبقِ أي إعداد مختار مسبقًا، ثم احفظ.

النتيجة المتوقعة: تُحفَظ مجموعة الإعدادات ويُجدوَل نشر، فتُعاد صياغة إعداد الحافة مع تضمين HSTS.

cdnctl equivalent
POST /api/accounts/update_account_presets/<account_uuid>
{"type":"security","presets":["Waf","Hsts"]}
The call replaces the whole preset set for that type — send every preset you want to keep.
3

تحقّق من الترويسة على طلب حقيقي

الإعداد المحفوظ نيّة؛ ترويسة الاستجابة هي الحقيقة.

  • شغّل فحص HTTPS أدناه وتأكد من الترويسة وقيمة max-age الخاصة بها.
  • شغّل الفحص نفسه عبر http:// وتأكد من غياب الترويسة هناك — هذا هو السلوك الصحيح.
  • افتح الموقع في ملف تعريف متصفح جديد وتأكد أن شيئًا لم يتعطل.

النتيجة المتوقعة: تحمل استجابة HTTPS الترويسة Strict-Transport-Security: max-age=31536000 ويُحمَّل الموقع بشكل طبيعي.

cdnctl equivalent
curl -sI https://www.example.com/ | grep -i strict-transport
curl -sI http://www.example.com/ | grep -i strict-transport

التحقق

  • تحمل استجابة HTTPS الترويسة Strict-Transport-Security: max-age=31536000.
  • لا تحمل استجابة HTTP العادية هذه الترويسة.
  • لم يعد أي اسم مضيف على الحساب يعمل بـ HTTP فقط، ولا تُبلّغ أي صفحة عن محتوى مختلط.
  • قبلت أن إلغاء تحديد الإعداد لا يمسح الترويسة من المتصفحات التي خزّنتها بالفعل.

حالات الاستخدام

موقعك يعمل بالكامل عبر HTTPS وتريد إغلاق ثغرة الطلب الأول: أول نقرة في اليوم ما زالت تخرج كـ http:// ثم تُعاد توجيهها بعد ذلك. يزيل HSTS هذا الطلب تمامًا — يرقّيه المتصفح قبل أن يغادر الجهاز.

سير عمل سريع

  1. تأكد أن كل اسم مضيف على الحساب يستجيب بالفعل عبر HTTPS بشهادة صالحة. يزيل HSTS الرجوع إلى HTTP، فأي مضيف ما زال يعمل بـ HTTP فقط يصبح غير متاح للزوار الذين استقبلوا الترويسة.
  2. افتح Delivery Rules للحساب وابحث عن لوحة Security defaults.
  3. افتح حقل Security Setting، اختر Hsts، ثم احفظ. الإعدادات الجاهزة المختارة سابقًا، مثل Waf، تبقى مختارة — الحقل متعدد الاختيار والحفظ يستبدل المجموعة كلها.
  4. انتظر حتى يصل الإعداد إلى الحافة، ثم تحقّق من الترويسة على طلب حقيقي.

الفحوصات

  • تُرسَل الترويسة على استجابات HTTPS فقط. عدم ظهور Strict-Transport-Security على استجابة http:// أمر صحيح وليس خللًا.
  • القيمة هي max-age=31536000 — عام واحد — دون includeSubDomains ودون preload. النطاقات الفرعية غير مشمولة بهذا الإعداد؛ كل اسم مضيف مثبّت باستجابته الخاصة.
  • الموقع غير مُقدَّم إلى أي قائمة preload لمتصفح، لذا فإن إزالة HSTS لا تحتاج أبدًا طلبًا إلى مزوّد متصفح.
  • أزل تحديد الإعداد فتتوقف الحافة عن إرسال الترويسة — لكن المتصفحات التي استلمتها بالفعل تظل تفرض HTTPS حتى ينتهي max-age المخزَّن لديها. عامل HSTS كباب أحادي الاتجاه لمدة قد تصل إلى عام، لا كمفتاح تقلّبه أثناء اختبار.