الهندسة البرمجية

دليل مصادقة البريد: سجلات SPF و DKIM و DMARC بالشكل الصحيح

لماذا ينتهي بريدك في الرسائل غير المرغوب فيها، وكيف يمكن لأي شخص انتحال نطاقك. ضبط SPF و DKIM و DMARC بأمان ودون تعطيل البريد.

هناك أمران ينطبقان غالباً على نطاقك الإلكتروني في هذه اللحظة، وكلاهما يكلفك أموالاً حقيقية:

يمكن لأي شخص إرسال رسائل بريد إلكتروني منتحلاً اسم شركتك. ما لم تكن تمتلك سياسة DMARC مضبوطة على خيار الحجز quarantine أو الرفض القاطع reject، فإن الخوادم المستلمة لا تملك أي تعليمات تمنعها من تمرير الرسائل المزيفة الصادرة باسم نطاقك. والاحتيال عبر الفواتير المزيفة الذي يستهدف عملاءك يعمل بهذه الطريقة تحديداً.

جزء من رسائل بريدك الشرعية ينتهي في مجلد الرسائل غير المرغوب فيها (Spam). منذ فبراير 2024، تفرض Google و Yahoo معايير مصادقة إلزامية وصارمة لمرسلي البريد، وحذت Microsoft حذوهما. والنطاقات التي تفتقر لإعدادات دقيقة لسجلات SPF و DKIM و DMARC تُحجب رسائلها أو تُرفض تماماً بمعدلات متزايدة.

هذه ليست مجرد مسألة نظافة تقنية لقسم تكنولوجيا المعلومات. فإذا كنت ترسل فواتير، أو تأكيدات طلبات، أو روابط استعادة كلمات المرور، أو رسائل تسويقية، فهذه بنية تحتية حيوية لإيراداتك.

إليك كيفية عمل هذه السجلات الثلاثة معاً وكيفية ضبطها بأمان دون تعطيل بريدك الشرعي.

سجل SPF: تحديد الخوادم المصرح لها بالإرسال نيابة عنك

سجل SPF هو سجل نصي (TXT) في نظام DNS يسرد الخوادم المصرح لها بإرسال البريد الإلكتروني من نطاقك.

v=spf1 include:_spf.google.com include:servers.mcsv.net ~all

قراءة هذا السجل تعني: اعتماد الإصدار الأول لـ SPF؛ وتفويض خوادم Google Workspace؛ وتفويض خوادم Mailchimp؛ وما عدا ذلك يُعامل كفشل مرن (Soft Fail).

الأخطاء الثلاثة التي تعطل سجل SPF

تجاوز الحد الأقصى لعمليات بحث DNS. كل آلية مثل include و a و mx و ptr و exists و redirect تستهلك عملية بحث DNS واحدة، وتُحسب العمليات المتضمنة داخلياً أيضاً. والحد الأقصى المسموح به في المعايير العالمية (RFC) هو 10 عمليات بحث فقط. وتجاوز هذا الحد يجعل سجل SPF يُرجع خطأ فادحاً permerror — وهو ما تعامله معظم خوادم الاستقبال كفشل كامل، فتبدأ برفض رسائلك الشرعية.

يتراكم هذا الخطأ بهدوء: حساب Google Workspace مع نظام إدارة علاقات العملاء (CRM) مع منصة تسويق مع مكتب مساعدة مع نظام فواتير، وكل منها يضم استعلامات فرعية، ليتجاوز الإجمالي عشرة استعلامات دون أن تدري.

يمكنك حل ذلك عبر التبسيط (Flattening) — باستبدال آليات include: بنطاقات عناوين IP الصريحة التي تؤدي إليها — أو بحذف الخدمات التي توقفت عن إرسال البريد عبرها. وتتطلب عملية التبسيط متابعة مستمرة: فإذا غير المزود نطاقات IP الخاصة به، يصبح سجلك خاطئاً فوراً. لذا يُفضل دائماً حذف الخدمات غير المستخدمة أولاً.

تعدد سجلات SPF للنطاق الواحد. يُسمح للنطاق بامتلاك سجل SPF واحد فقط. ووجود سجلين نصيين يبدآن بـ v=spf1 يُعد خطأ دائماً يلغي تفعيل كليهما. يحدث هذا عند التعاقد مع خدمة بريدية جديدة فتقوم بإضافة سجلها المستقل بدلاً من دمج بياناتها داخل السجل القائم. ادمج جميع الخوادم المصرح بها دائماً في سجل واحد.

انتهاء السجل بالقيمة +all. يمنح هذا الخيار الإنترنت بأكمله إذناً بالإرسال باسم نطاقك. وهو أسوأ من غياب سجل SPF تماماً، لأنه يقر صراحة بشرعية أي رسالة مزيفة. ويظهر هذا الخطأ عادة عندما يقوم فني بحل مشكلة تسليم وينسى التراجع عن هذا الإعداد بعد الانتهاء.

استخدم الخيار ~all (الفشل المرن) أثناء مرحلة حصر الخوادم والمرسلين، ثم انتقل للخيار الحاسم الصارم -all (الرفض القاطع) بمجرد التأكد من اكتمال القائمة.

سجل DKIM: الإثبات الرقمي المشفر

يضيف DKIM توقيعاً رقمياً مشفراً لكل رسالة صادرة، يُحسب باستخدام مفتاح خاص تحتفظ به خدمة البريد لديك. بينما يُنشر المفتاح العام المقابل له في سجلات DNS لنطاقك. ويقوم الخادم المستلم بالتحقق من صحة التوقيع بالمفتاح العام، مما يثبت بشكل قاطع أن الرسالة صدرت فعلياً من نطاقك ولم يجرِ التلاعب بمحتواها في الطريق.

يستقر السجل تحت العنوان selector._domainkey.yourdomain.com، حيث يتم اختيار اسم المحدد (Selector) بواسطة مزود الخدمة — مثل google أو selector1 أو k1 وغيرها.

نقطتان عمليتان بالغو الأهمية:

يستحيل حصر أسماء المحددات وتخمينها عشوائياً من الخارج. فأي أداة فحص عامة تخبرك بأن \"سجل DKIM مفقود\"، تعني في الحقيقة \"لم أعثر عليه في المحددات الافتراضية التي جربتها\". وتوضح وثائق مزودك الاسم الدقيق للمحدد الخاص بك. تعامل دائماً مع نتائج فحص DKIM في الأدوات العامة كنتائج غير حاسمة، وليست قطعية.

تحتاج كل منصة إرسال إلى إعداد توقيع DKIM خاص بها. يوقع Google Workspace الرسائل المرسلة عبر Gmail، ولكنه لن يوقع حملاتك المرسلة عبر Mailchimp. وكل أداة ترسل بريداً باسمك يجب إعداد توقيع DKIM الخاص بها بشكل منفصل.

سجل DMARC: السياسة الجامعة الموحدة

يقدم سجلا SPF و DKIM نتائج الفحص والتحقق. ويأتي دور DMARC ليحدد ما يجب فعله بتلك النتائج — والأهم من ذلك، أنه يفرض شرط المطابقة (Alignment): أي وجوب تطابق النطاق الذي اجتاز فحص SPF أو DKIM مع النطاق الظاهر للمستخدم في حقل المرسل From:.

المطابقة هي جوهر الحماية في DMARC. فبدونها، يمكن لأي مخترق اجتياز فحص SPF لنطاقه الخاص، مع وضع اسم نطاقك أنت في حقل المرسل الظاهر للضحية.

v=DMARC1; p=reject; rua=mailto:dmarc@yourdomain.com; pct=100; adkim=s; aspf=s
  • p= — سياسة التعامل: عدم اتخاذ إجراء none، أو الحجز في مجلد الرسائل غير المرغوب فيها quarantine، أو الرفض القاطع reject.
  • rua= — عنوان البريد المخصص لاستقبال التقارير الإحصائية المجمعة.
  • pct= — النسبة المئوية للرسائل التي تنطبق عليها السياسة، لتسهيل التطبيق التدريجي.
  • adkim= و aspf= — درجة صرامة المطابقة: s صارمة (Strict)، أو r متساهلة (Relaxed).

فخ سياسة p=none

تستقر نسبة عريضة من النطاقات المفعلة لـ DMARC عند سياسة p=none، ويستمر الكثير منها على هذا الوضع لسنوات.

تعني سياسة p=none: تحقق من الرسالة، وسجل التقرير، ثم مررها واستلمها على أي حال. إنها لا تحجب أي شيء على الإطلاق. وتصل الرسائل المزيفة التي تنتحل اسمك إلى صناديق بريد عملائك دون عائق.

إنها البداية الصحيحة والموصى بها — لأنك بحاجة للتقارير لاكتشاف كل مرسل شرعي قبل بدء الحظر. لكنها ليست نهاية المطاف. فالنطاق المستقر عند p=none يمتلك مظهر الحماية دون جوهرها، وهو أسوأ من غياب السجل لأنه يمنحك شعوراً زائفاً بالأمان.

خطوات التطبيق التدريجي الآمن

يكمن الخطر في فرض سياسة الحظر المباشرة في إمكانية تعطيل رسائل بريد شرعية نسيت أمرها — كنظام الفواتير القديم، أو منصة التوظيف، أو الخادم الذي يرسل تقارير النسخ الاحتياطي اليومية. وتتيح لك خطة التطبيق التدريجي اكتشافها وتصحيحها قبل أن تتعطل:

  1. انشر السجل بسياسة p=none مع تحديد عنوان rua=. واجمع التقارير لمدة أسبوعين إلى أربعة أسابيع.
  2. حلل وقس التقارير الواردة. تأتي بصيغة XML؛ استخدم أداة تحليل مجانية أو خدمات تلخيص تقارير DMARC. وابحث عن المصادر الشرعية التي ترسل باسمك وتفشل في المطابقة.
  3. أصلح واعتمد كل مصدر شرعي. أضفه لسجل SPF، واضبط له مفتاح DKIM، أو انقله لنطاق فرعي مخصص.
  4. انتقل لسياسة الحجز p=quarantine; pct=10. راقب الوضع لأسبوع، ثم ارفع النسبة إلى 50%، ثم 100%.
  5. انتقل للرفض القاطع والنهائي p=reject. فقط عندما تصبح تقاريرك نظيفة تماماً من أي أخطاء للمصادر الشرعية.

تستغرق هذه العملية عادة من شهر إلى ثلاثة أشهر في الشركات بمختلف أحجامها. والتسرع في الخطوة الثالثة هو السبب وراء تفاجؤ الكثيرين بتوقف نظام المحاسبة لديهم عن إيصال الفواتير للعملاء.

نقطتان يغفلهما الكثيرون

النطاقات الفرعية. تنطبق سياسة DMARC على النطاقات الفرعية عبر وسم sp=. وإذا لم تحدده، ترث النطاقات الفرعية سياسة النطاق الرئيسي. ويستهدف المخترقون عمداً النطاقات الفرعية المهملة — مثل mail.yourdomain.com أو billing.yourdomain.com — لأنها تفتقر للحماية غالباً. حدد sp=reject على النطاقات التي لا ينبغي لها إرسال بريد عبر نطاقاتها الفرعية.

النطاقات المحجوزة وغير المستخدمة (Parked Domains). كل نطاق تمتلكه ولا يُستخدم لإرسال البريد يجب أن ينشر سجل v=spf1 -all وسجل v=DMARC1; p=reject;. فالنطاقات المسجلة لحماية الاسم التجاري هي الأهداف الأكثر جاذبية للمحتالين لغياب الحماية عنها.

نظام BIMI بإيجاز

بمجرد وصولك لسياسة p=quarantine أو p=reject، يتيح لك معيار BIMI إظهار شعار علامتك التجارية المعتمد بجوار رسائلك في تطبيقات البريد الداعمة. ويتطلب ذلك شهادة علامة معتمدة (VMC)، والتي تكلف ما بين 1,000 إلى 1,500 دولار سنوياً.

إنه استثمار تسويقي ممتاز للعلامات ذات الحجم الكبير من المراسلات. وهو ليس وسيلة لتحسين تسليم البريد بحد ذاته — بل ميزة بصرية تشترط إنجاز كافة متطلبات المصادقة مسبقاً.

فحص إعدادات بريدك الحالية

يمكنك معاينة سجلات أي نطاق بدقة باستخدام أداة فحص قابلية تسليم البريد المجانية. وتستعلم الأداة عن سجلات DNS مباشرة من متصفحك لتعرض لك النص الفعلي للسجلات بدلاً من مجرد درجات عامة.

أو استعلم عنها مباشرة عبر سطر الأوامر:

dig +short TXT yourdomain.com          # لعرض سجلات SPF
dig +short TXT _dmarc.yourdomain.com   # لعرض سجل DMARC
dig +short TXT google._domainkey.yourdomain.com  # لعرض DKIM للمحدد google
dig +short MX yourdomain.com           # لعرض خوادم البريد الوارد

أولويات التنفيذ بالترتيب

إذا كنت تبدأ من نقطة الصفر:

  1. انشر سجل SPF يسرد كل خدمة ترسل باسمك، منهياً بـ ~all.
  2. فعل توقيع DKIM في كل واحدة من تلك الخدمات.
  3. انشر سجل DMARC بسياسة p=none مع تفعيل عنوان rua= لاستلام التقارير.
  4. تابع التقارير لمدة شهر، وعالج كل ما يفشل في اجتياز المطابقة.
  5. انتقل لسياسة الحجز p=quarantine، ثم الرفض النهائي p=reject.
  6. احمِ النطاقات الفرعية والنطاقات المحجوزة.
  7. شدد سجل SPF ليختتم بالرفض القاطع -all.

الخطوات من 1 إلى 3 تنجز في جلسة عمل واحدة. والخطوتان 4 و 5 هما جوهر العمل الفعلي وحيث يتوقف أغلب الناس. وإكمالهما للنهاية هو ما يضمن حماية علامتك التجارية من الانتحال والتزييف للأبد.

متابعة القراءة

أخبرونا بما ترغبون في تنميته وتطويره.

فريق واحد. ثلاثة مكاتب. ست وعشرون لغة. أرسلوا لنا المشكلة وستتلقون إجابة من خبير متخصص — لا نصاً بيانياً تسويقياً.

عرض سعر مكتوب خلال يوم عمل واحد، بلغتكم.