طريقة الاستخدام
- اكتب نطاقك في النطاق، مثل example.com.
- إن كنت تعرفه، فأضف محدد DKIM (اختياري) من رسالة موقّعة، مثل google أو selector1. اتركه فارغًا إن لم تعرفه.
- اضغط افحص النطاق. في سجل SPF، يجب أن يبقى عدد استعلامات DNS (الحد 10) عند 10 أو أقل.
- اقرأ سياسة DMARC. تكتفي none بالمراقبة، أما quarantine وreject فتتصرفان في البريد الفاشل.
ما الذي يفحصه SPF
يسرد SPF (RFC 7208) الخوادم التي يجوز لها إرسال البريد عن النطاق، في سجل TXT. يأخذ المستقبِل نطاق المرسل ويقرأ سجل SPF الخاص به، ثم يفحص الخادم المرسل أمام كل عنصر من اليسار إلى اليمين. أول عنصر يطابق يحسم النتيجة بحسب مؤهله: + تنجح (وهي الافتراضية إذا لم يُكتب مؤهل)، و- تفشل، و~ فشل ناعم، و? محايدة.
- تكلّف include وa وmx وptr وexists وredirect كل منها استعلام DNS واحدًا، وتُحسب استعلامات السجلات المضمّنة أيضًا. يتوقف المستقبِلون عند 10 ويعدّون النتيجة خطأً، لذلك قد يُعطّل SPF شبكة بريد كبيرة دون أن يلاحظ أحد.
- لا تكلّف ip4 وip6 أي استعلام. ويمكن كتابة عناوين المزوّد الذي يعلن نطاقات عناوينه بهذه الصيغة.
- سجلا SPF على اسم واحد خطأ (RFC 7208، القسم 4.5)، وptr غير مستحبة (القسم 5.5).
ما الذي تفعله DMARC
يخبر DMARC (RFC 7489) المستقبِلين بما يفعلونه بالبريد الذي يفشل في فحوص نطاقك، وإلى أين يرسلون التقارير. وهو سجل TXT عند _dmarc متبوعًا بنطاقك، ويتكون من وسوم مفصولة بفواصل منقوطة: p هي السياسة، وsp سياسة النطاقات الفرعية، وpct نسبة البريد الفاشل التي تنطبق عليها السياسة، وrua عنوان تقارير الإجمال، وadkim وaspf المحاذاة، وr للمتساهلة وs للصارمة.
تقرأ هذه الأداة السجل عند _dmarc متبوعًا بالنطاق الذي تكتبه. والمستقبِلون الذين لا يجدون سجلًا هناك يبحثون أيضًا عن النطاق التنظيمي، وهذه الأداة لا تحدده.
مفاتيح DKIM
يوقّع DKIM كل رسالة بمفتاح منشور في DNS تحت محدد، عند المحدد متبوعًا بـ ._domainkey ونطاقك (RFC 6376، القسم 3.6.1). تقرأ الصفحة نوع المفتاح وحجم مفتاح RSA من مفتاحه العام. والمفتاح الفارغ يعني أنه أُلغي. ومفاتيح Ed25519 (RFC 8463) حجمها ثابت، 256 بتًا.
ما لا تفعله هذه الأداة
- لا ترسل بريدًا ولا تختبر رسالة حقيقية، لذلك لا تستطيع أن تقول إن كان بريدك يجتاز الفحص.
- لا تفكّ الماكروهات مثل %{d}، لذلك قد يعطي سجل يستخدمها عددًا مختلفًا من الاستعلامات عن عدد المستقبِل.
- لا تحدد النطاق التنظيمي لـ DMARC، ولا تفحص الاستعلامات التي لا تعيد شيئًا.
مثال: سجلا SPF وDMARC لنطاق واحد
السجل v=spf1 +mx a:colo.example.com/28 -all يسمح لخوادم بريد النطاق، ولعناوين colo.example.com ضمن شبكة /28، بإرسال بريده. ويفشل كل مرسل آخر (-all). يكلّف السجل استعلامين لـ DNS، هما mx وa.
سجل DMARC هو v=DMARC1; p=reject; rua=mailto:[email protected]، ويطلب من المستقبِلين رفض البريد الذي يفشل في الفحوص، وإرسال تقارير الإجمال إلى [email protected].
| الفحص | النتيجة |
|---|---|
| استعلامات DNS في SPF | 2 |
| السياسة (p) | reject |
| تقارير الإجمال (rua) | [email protected] |
الأسئلة الشائعة
هل يكفي سجل SPF لمنع البريد المزيف؟
لا. يفحص SPF الخادم الذي أرسل الرسالة، لا الاسم الذي يراه القارئ في سطر From. أضف إليه توقيع DKIM، وسياسة DMARC أعلى من p=none.
لماذا يفشل سجل SPF بسبب عدد كبير من الاستعلامات؟
تكلّف كل include وa وmx وptr وexists وredirect استعلام DNS واحدًا، وتُحسب السجلات التي تقود إليها أيضًا. فإذا تجاوز المجموع 10، يعدّ المستقبِلون SPF خطأً. احذف include التي لم تعد تستخدمها، أو استخدم نطاقات ip4 وip6 التي يعلنها مزوّدك، فهي لا تكلّف أي استعلام.
ما سياسة DMARC التي يجب أن أستخدمها؟
ابدأ بـ p=none مع عنوان rua، واقرأ التقارير لبضعة أسابيع، وتأكد أن بريدك الحقيقي يجتاز الفحص. ثم انتقل إلى quarantine، وعندما تكون التقارير نظيفة، إلى reject.
ما محدد DKIM؟
هو الاسم الذي يأتي قبل ._domainkey في سجل DKIM. تستخدم كل خدمة إرسال محددها الخاص، والرسالة الموقّعة تذكره في الوسم s= من ترويسة DKIM-Signature. افتح ترويسات رسالة أرسلتها لتجده.
ماذا يعني حجم المفتاح؟
بالنسبة إلى مفتاح RSA هو طول المعامل بالبت، وهي الطريقة المعتادة لكتابة أحجام المفاتيح: 1024 أو 2048. وإذا قُطع السجل أو تلف عند النسخ، فلا يمكن قراءة المفتاح، وتقول الصفحة ذلك.
هل يرسل هذا الفاحص نطاقي إلى أحد؟
لا يُرسل إلا الأسماء التي يفحصها الفاحص إلى محلّل DNS الذي تختاره، على هيئة استعلامات DNS. ولا نخزّن شيئًا منها، وتبقى بقية الصفحة في متصفحك.
المصادر
- RFC 7208 (باللغة الإنجليزية): Sender Policy Framework (SPF)
- RFC 7489 (باللغة الإنجليزية): Domain-based Message Authentication, Reporting, and Conformance (DMARC)
- RFC 6376 (باللغة الإنجليزية): DomainKeys Identified Mail (DKIM) signatures
- RFC 8463 (باللغة الإنجليزية): A New Cryptographic Signature Method for DKIM (Ed25519)
- Cloudflare (باللغة الإنجليزية): DNS over HTTPS, JSON API
آخر مراجعة للأرقام والنص: الثلاثاء، 30 جمادى الأولى 1448 بعد الهجرة.