المصادقة باستخدام SPF: نظرة عامة وأفضل الممارسات

البريد الإلكتروني

1 min read

المصادقة باستخدام SPF: نظرة عامة وأفضل الممارسات

البريد الإلكتروني

1 min read

المصادقة باستخدام SPF: نظرة عامة وأفضل الممارسات

عند الحديث عن "التوثيق البريدي"، نحن نشير إلى تقنية تهدف إلى توفير مستوى معين من اليقين لمستلم الرسالة بأن الرسالة صادرة فعليًا عن المصدر المزعوم للرسالة.

عندما نتحدث عن "المصادقة على البريد الإلكتروني"، فإننا نشير إلى تقنية تهدف إلى توفير مستوى من اليقين لمستلم الرسالة بأن الرسالة قد نشأت بالفعل من المصدر المزعم للرسالة. الفكرة هي تحقيق مستوى من الدفاع ضد البريد الإلكتروني الاحتيالي، مثل التصيد والاحتيال، الذي يمكن أن يقوض الثقة في استقبال البريد الإلكتروني. ومع ذلك، فإن عملية إرسال البريد الإلكتروني المُصادق عليه لا تؤكد في حد ذاتها أن البريد الإلكتروني جيد أو مطلوب؛ إنها تعني فقط أن البريد هو من نوع يمكن بناء سمعة للطرف المُصادق عليه بشكل موثوق واستخدامها في قرارات قبول وموضع البريد الإلكتروني.

هناك شكلان رئيسيان للمصادقة على البريد الإلكتروني يُستخدمان اليوم—Sender Policy Framework (SPF) و DomainKeys Identifed Mail (DKIM). في هذه التدوينة، سأشرح ما هو SPF، وكيف يعمل.

نظرة عامة على SPF

إطار سياسة المرسل (SPF)، للتعبير بشكل مختلف RFC 7208، هو بروتوكول يسمح لمنظمة ما بترخيص المضيفين والشبكات لاستخدام أسماء نطاقاتها عند إرسال البريد الإلكتروني، ويوفر أيضًا طريقة يمكن للمضيف المستلم التحقق من هذا الترخيص.

عند الانتهاء من قراءة هذا المقال، آمل أن تكون قد تعلمت ما يلي:

  • SPF هو نظام مصادقة يستند إلى "المسار".

  • سياسات SPF يتم الإعلان عنها في سجلات DNS TXT.

  • التحقق يتم تعيينه إلى نطاق Return-Path (ما نسميه هنا في SparkPost بـ "نطاق الارتداد") أو نطاق HELO.

  • يمكن تنفيذ التحقق مبكرًا في صفقة SMTP، لذا فهو فحص جيد لاستخدامه لرفض البريد غير الموثق بسرعة.

  • إنه عرضة لنسبة عالية نسبيًا من السلبيات الكاذبة.

المصادقة القائمة على المسار

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

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

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

إعلان سياسة SPF

أحد سجلات سياسة SPF للنطاق هو مجرد سجل DNS TXT مُنسق بشكل محدد، وعادةً ما يحتوي على واحد أو أكثر من المكونات التالية:

  • v=spf1 - الرمز الأول المطلوب للإشارة إلى أن السجل TXT هو سجل SPF (يمكن أن يكون للنطاق عدة سجلات TXT)

  • ipv4, ipv6 - يُستخدم لتحديد عناوين IP والشبكات التي يُسمح لها بإرسال البريد للنطاق

  • a - إذا كان للنطاق المرسل سجل DNS “A” الذي يحل إلى IP المرسل، يُسمح بـ IP

  • mx - إذا كان IP المرسل هو أيضًا أحد سجلات MX للنطاق المرسل، يُسمح بـ IP

  • all - الرمز الأخير المطلوب، دائمًا مُعدّل:

    • -all - فقط ما هو مذكور هنا يمكن أن يمر؛ رفض الفشل.

    • ~all - ما ليس هنا يجب أن يفشل نرمياً؛ قبوله ولكن تدوين ذلك.

    • ?all - غير متأكد إذا كان ما ليس هنا يجب أن يمر.

    • +all - نعتقد أن SPF غير مجدي؛ يمرر كل شيء.

آليات أخرى أقل شيوعًا لا تزال قيد الاستخدام بشكل واسع هي:

  • include - يُستخدم عندما لا يكون للنطاق خوادمه الخاصة فقط، بل يستخدم أيضًا خوادم شخص آخر. يجب استخدامه بحكمة. كل تضمين هو استعلام DNS آخر، ولا يمكن أن تتطلب سجلات SPF أكثر من عشرة استعلامات DNS للحل.

  • redirect - عندما يكون النطاقان A وB مملوكين لنفس الكيان ويستخدمان نفس البنية التحتية. يريد المالكون عادةً الحفاظ على نسخة واحدة من سجل SPF لكلا النطاقين، وتكوين B لإعادة توجيه الاستعلامات إلى A.

  • exists - إذا كان للنطاق الكثير من كتل الشبكة الصغيرة وغير المتجاورة، يمكنه استخدام هذه الآلية لتحديد سجل SPF الخاص به، بدلاً من سردها جميعًا. مفيد للبقاء ضمن حد الحجم (512 بايت) لاستجابة DNS.

ملاحظة حول آلية “ptr”

كانت هناك آلية أخيرة،

بعض سجلات SPF المثال

إليك بعض السجلات النموذجية ومعانيها. يوضح هذا المثال عناوين RFC 1918، لكني أدرك أن مثل هذه العناوين لن تظهر أبدًا في سجلات SPF الحقيقية.

  • سجل MX، عنوان IP واحد، شبكة IP واحدة، حالة فشل ناعم لكل شيء آخر:

    • “v=spf1 mx ipv4:10.0.0.1 ipv4:192.168.24.0/24 ~all”

  • سجل A، شبكتان IP، رفض كل شيء آخر:

    • “v=spf1 a ipv4:10.0.3.0/23 ipv4:192.168.55.0/26 -all”

  • نحن لا نرسل بريد:

    • “v=spf1 -all”

  • نعتقد أن SPF غبي:

    • “v=spf1 +all”

  • سجل SPF للنطاق sparkpostmail.com (آلية التوجيه المستخدمة)

    • “v=spf1 redirect=_spf.sparkpostmail.com”

  • سجل SPF لـ _spf.sparkpostmail.com (الميكانيزمات وجود وptr المستخدمة):

    • “v=spf1 exists:%{i}._spf.sparkpostmail.com ptr:sparkpostmail.com ptr:spmta.com ptr:flyingenvelope.com ~all”

في SparkPost، نستخدم حاليًا آلية ptr في سجل SPF الخاص بنا. وجدنا أنه ضروري بسبب نقص الدعم العالمي للتحقق من آلية الوجود. وحتى الآن، لم نشهد أي فشل في SPF بسبب استخدامنا لآلية ptr.

كيف تعمل مصادقة SPF؟

إليك كيف تبدو معاملة SMTP نموذجية عند وجود SPF:

  • يتصل الخادم المرسل (العميل) بالخادم المستلم

  • يسجل الخادم المستلم عنوان IP الخاص بالخادم المتصل

  • يتبادلون التحيات، بما في ذلك اسم المضيف HELO للعميل

  • يصدر العميل أمر SMTP MAIL FROM

يمكن للخادم المستلم الآن التحقق من سجل SPF لأي من نطاق MAIL FROM أو اسم المضيف HELO لتحديد ما إذا كان عنوان IP المتصل مخولًا بإرسال البريد للنطاق، واتخاذ القرار بقبول الرسالة أم لا.

MAIL FROM أو HELO - أيهما يجب التحقق منه؟

تحدد مواصفات SPF أنه يجب على المواقع المستقبلة التحقق من SPF للنطاق MAIL FROM، ويوصي بالتحقق من اسم المضيف HELO. في الممارسة العملية، يحدث التحقق فقط على نطاق MAIL FROM، باستثناء ربما في الأوقات التي يكون فيها عنوان MAIL FROM هو المرسل الفارغ (أي، “<>”)، وفي هذه الحالة يكون اسم المضيف HELO هو الهوية الوحيدة المتاحة.

SPF ليس دليلاً كاملاً

على الرغم من أنه يبدو وسيلة بسيطة نسبيًا لمصادقة البريد الإلكتروني، فإن SPF عرضة للفشل في شكل سلبيات كاذبة. يمكن أن تحدث هذه الإخفاقات بشكل أكثر تكرارًا مما يرتاح له الكثيرون.

فيما يلي حالتان شائعتان يمكن أن يفشل فيهما البريد الإلكتروني السليم التحقق من SPF ويبدو أنه احتيالي:

  • إعادة توجيه تلقائية، حيث يتم إرسال رسالة إلى jsmith@alumni.university.edu، وهو صندوق بريد معد لإعادة توجيه جميع البريد تلقائيًا إلى jsmith@isp.com

  • قوائم البريد، حيث يتم إرسال البريد إلى talk-about-stuff@listserv.foo.com ويتم "تفجيرها" وإرسالها إلى كل مشترك

في كلتا الحالتين، إذا كانت المسار المرتجع لم تتغير عن الأصل، فقد يفشل البريد في اختبارات SPF (اعتمادًا على المعدل المستخدم مع آلية 'all'). وذلك لأنه يصل إلى وجهته النهائية من خادم وسيط، وليس الخادم الأصلي، ومن غير المرجح أن يكون هذا الخادم الوسيط في سجل SPF الخاص بالنطاق. يمكن لتقنية تُسمى "نظام إعادة كتابة المرسل" أو "SRS" أن تقلل هذا المخاطر، وقد اعتمدتها بعض المواقع الكبيرة، لكنها ليست عالمية.

إنهاء

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

انضم إلى نشرتنا الإخبارية.

ابقَ على اطلاع مع Bird من خلال التحديثات الأسبوعية إلى بريدك الوارد.

بتقديمك طلبًا، فإنك توافق على أن تقوم Bird بالاتصال بك بشأن منتجاتنا وخدماتنا.

يمكنك إلغاء الاشتراك في أي وقت. انظر بيان الخصوصية الخاص بـ Bird للتفاصيل حول معالجة البيانات.

انضم إلى نشرتنا الإخبارية.

ابقَ على اطلاع مع Bird من خلال التحديثات الأسبوعية إلى بريدك الوارد.

بتقديمك طلبًا، فإنك توافق على أن تقوم Bird بالاتصال بك بشأن منتجاتنا وخدماتنا.

يمكنك إلغاء الاشتراك في أي وقت. انظر بيان الخصوصية الخاص بـ Bird للتفاصيل حول معالجة البيانات.

انضم إلى نشرتنا الإخبارية.

ابقَ على اطلاع مع Bird من خلال التحديثات الأسبوعية إلى بريدك الوارد.

بتقديمك طلبًا، فإنك توافق على أن تقوم Bird بالاتصال بك بشأن منتجاتنا وخدماتنا.

يمكنك إلغاء الاشتراك في أي وقت. انظر بيان الخصوصية الخاص بـ Bird للتفاصيل حول معالجة البيانات.