قابلية تسليم البريد وDNS

مولد سجلات DKIM: إنشاء المفاتيح ونشرها في DNS

بقلم Alexey Bulygin
سجل مفتاح DKIM العام والمحدد المنشور في DNS

إذا كنت تبحث عن مولد سجلات DKIM بسبب إخفاقات المصادقة في Gmail أو Google Postmaster Tools، فراجع الإعداد الأساسي أولا. يشرح دليل إنشاء بريد بنطاقك سجلات MX وSPF وDKIM وDMARC وأخطاء DNS التي قد تعرقل وصول البريد.

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

يشرح هذا الدليل طرقا مناسبة لاستخدام مولد سجلات DKIM في 2025-2026: توليد المفاتيح محليا باستخدام OpenSSL للخوادم الذاتية، أو اتباع إرشادات مزود الإرسال الفعلي، مثل TrekMail أو Amazon SES أو SendGrid أو Mailgun أو Google Workspace.

ما هو مولد سجلات DKIM؟

يوفر مولد سجلات DKIM بيانات DNS اللازمة لـ DomainKeys Identified Mail. قد ينشئ زوج مفاتيح RSA لسجل TXT، أو يقدم سجلات CNAME من المزود تشير إلى مفتاح DKIM العام المنشور في مكان آخر. ليس كل مزود يستخدم CNAME.

يوقع DKIM البريد الصادر بمفتاح خاص. تجلب خوادم الاستقبال المفتاح العام المطابق من DNS وتتحقق من التوقيع. وبذلك تتحقق من توقيع باسم نطاق التوقيع وسلامة الأجزاء الموقعة وفق قواعد التسوية المستخدمة.

ينص RFC 8301 على استخدام rsa-sha256 لتوقيعات RSA، ومفاتيح RSA لا تقل عن 1024 بت، مع التوصية بما لا يقل عن 2048 بت. لذلك ينبغي أن يعتمد مولد سجلات DKIM الملائم RSA بحجم 2048 كخيار افتراضي، لا 1024.

مخاطر مولدات الويب غير المعروفة

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

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

المفتاح العام في DNS، والمفتاح الخاص في نظام التوقيع. إذا أعطاك نموذج ويب كليهما، فتحقق من مكان إنشاء المفتاح الخاص وما إذا كانت الخدمة قد وصلت إليه.

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

توليد المفاتيح محليا باستخدام OpenSSL

يمكن أن يقلل OpenSSL على جهازك أو خادم التوقيع انكشاف المفاتيح الخاصة لخدمات الويب. وهو مولد سجلات DKIM عملي إذا أحسنت تأمين الجهاز وصلاحيات الملفات والوصول. التوليد المحلي وحده لا يضمن الأمان.

تناسب هذه الطريقة بيئات Postfix أو Exim أو Exchange أو OpenDKIM وغيرها من أنظمة البريد التي تديرها بنفسك. أنشئ المفتاح محليا وثبت المفتاح الخاص في خادم التوقيع، ثم انشر المفتاح العام وحده في DNS.

أنشئ زوج مفاتيح RSA بحجم 2048 بت:

openssl genrsa -out private.key 2048
openssl rsa -in private.key -pubout -out public.key

يكون ملف public.key على نحو يشبه هذا المثال التوضيحي؛ النص المختصر ليس مفتاحا صالحا للاستخدام:

-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr...
-----END PUBLIC KEY-----

جهزه للنشر:

  1. احذف سطري BEGIN PUBLIC KEY وEND PUBLIC KEY.
  2. احذف فواصل الأسطر.
  3. أضف وسوم DKIM إلى القيمة.

يبدو سجل TXT اليدوي عادة كما في هذا المثال، مع استبدال النص التوضيحي بمفتاحك الكامل:

default._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr..."

لا يكفي نشر المفتاح وحده. يذكر مولد سجلات DKIM عادة v=DKIM1، وهو وسم اختياري بقيمة افتراضية، لكنه يجب أن يكون أول وسم إذا ذكر. ويتضمن السجل p= الإلزامي. وتوجد وسوم اختيارية مثل s=email وt=s لا تلزم غالبا للإعداد الأساسي.

حد DNS البالغ 255 ثمانية لكل سلسلة

يحد DNS طول كل سلسلة في سجل TXT، وقد يعجز حقل إدخال غير ملائم عن معالجة مخرجات مولد سجلات DKIM. مفتاح RSA العام بحجم 2048 بت طويل، وقد يتطلب تقسيم القيمة إلى سلاسل محاطة بعلامات اقتباس داخل السجل نفسه.

قد ترفض لوحات DNS القديمة السجل أو تقصه أو تحفظ جزءا من المفتاح فقط. ويمكن أن ينتج عن ذلك permerror أو خطأ في صيغة المفتاح أو إخفاق تحقق DKIM رغم وجود المحدد.

إذا لم تتعامل لوحة DNS مع القيمة الطويلة تلقائيا، فقسمها إلى سلاسل متعددة داخل سجل TXT واحد:

default._domainkey.example.com. IN TXT (
  "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArFirstPart"
  "SecondPartOfTheSamePublicKey"
)

يجمع مدقق DKIM أو التطبيق تلك السلاسل دون إضافة مسافات، فيتعامل معها كقيمة منطقية واحدة. لا تنشرها كسجلات TXT مستقلة. يوضح مولد سجلات DKIM المفيد متى يلزم التقسيم وكيف تعالجه لوحة DNS.

إدارة المفاتيح لدى مزود الإرسال

لكثير من الشركات، يكون مولد سجلات DKIM لدى مزود الإرسال أكثر عملية من إدارة المفاتيح يدويا. بعض المزودين يقدم CNAME وبعضهم TXT. يحتفظ المزود بالمفاتيح الخاصة وقد يدير تدويرها، لكن الأتمتة والحاجة إلى تعديلات DNS تختلف بحسب الخدمة.

إذا أرسلت عبر TrekMail أو Amazon SES أو Google Workspace أو SendGrid أو Mailgun، فاتبع تعليمات مسار الإرسال الفعلي. في تفويض CNAME تنشر محددات CNAME المقدمة، وينشر المزود مفتاح DKIM العام في اسم المضيف المستهدف. أما إعداد TXT فيتطلب نشر قيمة TXT المحددة.

الجانبإدارة ذاتيةإدارة المزود
إنشاء المفاتيحتنشئ مفاتيح RSA وتحفظها بنفسكيدير المزود المفاتيح
سجل DNSقيمة TXT طويلةCNAME أو TXT وفق تعليمات المزود
تدوير المفاتيحيدوي ويحتاج إلى جدول صيانةوفق إمكانات المزود
أسباب الإخفاقأخطاء الصياغة والقص والمفاتيح القديمةأخطاء DNS أو سجلات مفقودة أو إعداد الإرسال
البيئة المناسبةخوادم MTA المدارة ذاتيامنصات البريد وSMTP المستضافة

يمكن لـ TrekMail جمع إعدادات النطاق وفحوص المصادقة في مسار مترابط. ويعتمد مقدار إدارة المفاتيح المطلوبة منك على مسار الإرسال. عند إضافة نطاق، اتبع تعليمات DNS الحالية في إضافة نطاق.

يعتمد إعداد TrekMail على طريقة الإرسال. تستخدم Nano خدمة SMTP خاصة بك للبريد الصادر. وبحسب التسعير الموضح هنا، تتضمن الخطط المدفوعة SMTP مدارا، بدءا من $3.50 شهريا في Starter. وقد تتاح تجربة مجانية لمدة 14 يوما تتطلب بطاقة ائتمان. لا تستخدم Nano تجربة بحسب الشروط الموصوفة، ولا تتطلب بطاقة. تحقق من الأسعار والشروط الحالية.

لمستخدمي TrekMail، يتحدد مولد سجلات DKIM المناسب بحسب مسار الإرسال:

  1. إذا وقع TrekMail البريد عبر SMTP المدار، فاستخدم سجلات DNS المعروضة في لوحة التحكم.
  2. إذا استخدمت SMTP خاصا بك، فاضبط توقيع النطاق لدى مزود الترحيل وتحقق منه، ثم انشر سجلات DKIM التي يقدمها.
  3. إذا قدم المزود محددات CNAME، فاستخدمها. لا تحولها إلى TXT لأن مقالا اقتصر على شرح TXT.

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

أين ينشر المحدد؟

لا ينشر مولد سجلات DKIM سجله في جذر النطاق. تستعلم خوادم الاستقبال عن المفتاح تحت اسم مضيف محدد مثل default._domainkey أو google._domainkey أو tm1._domainkey.

تختلف واجهات DNS: بعضها يتطلب اسم المضيف فقط وبعضها الاسم الكامل. إذا أدخلت النطاق كاملا في لوحة تضيف اسم المنطقة تلقائيا، فقد تحصل على default._domainkey.example.com.example.com. لن يعثر الاستعلام عن المحدد المقصود على سجل منشور في هذا الاسم الخاطئ.

أنماط شائعة:

default._domainkey
selector1._domainkey
tm1._domainkey

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

التحقق من مخرجات مولد سجلات DKIM

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

ابدأ باستعلام مباشر:

dig txt default._domainkey.example.com +short

إذا نشر سجل TXT، يفترض أن تظهر قيمة DKIM أو السلاسل المحاطة بعلامات اقتباس. بعد تحديث DNS يمكنك أيضا سؤال محلل عام. يعكس ذلك استجابته، لا تحديث جميع ذاكرات DNS المؤقتة في العالم:

dig txt default._domainkey.example.com @8.8.8.8 +short

راجع ما يلي:

  1. غياب الإجابة قد يعني محددا أو اسم مضيف خاطئا أو تخزينا مؤقتا أو مشكلة استعلام أخرى. افحص الاستجابة الكاملة.
  2. قد تبدو الإجابة جزئية بسبب طريقة العرض أو تقسيم TXT؛ قارن القيمة الكاملة قبل الجزم بقصها.
  3. وجود سجلات DKIM TXT متعارضة تحت المحدد نفسه: أصلحها قبل الاختبار مجددا.
  4. DNS صحيح لكن البريد يفشل: افحص الترويسات وتأكد من استخدام المرسل للمحدد والمفتاح الخاص المطابقين.

تشترط Google على مرسلي البريد الجماعي SPF وDKIM وDMARC. وقد تسهم أخطاء DKIM في تقييد معدل الإرسال أو الرفض بحسب الشروط المطبقة. ولا يعني فشل DKIM بالضرورة فشل DMARC إذا نجح SPF المتوافق. راجع التفاصيل الحالية في الأسئلة الشائعة حول إرشادات مرسلي البريد.

على مستخدمي TrekMail فحص مسار الإرسال أيضا. يشرح مرجع إعدادات IMAP وSMTP استخدام SMTP خاص بك في Nano وإمكانات TrekMail SMTP في الخطط المدفوعة. إذا وصل البريد إلى المزعج رغم صحة DNS، فاتبع رسائلي تصل إلى البريد المزعج.

الخلاصة: اختر إعداد DKIM المناسب لبنيتك

مولد سجلات DKIM المناسب يوافق بنية بريدك. يناسب توليد المفاتيح محليا الخوادم الذاتية عادة. أما المنصات المستضافة فتتبع فيها تعليمات TXT أو CNAME الخاصة بالمزود، وتتحقق من طريقة تدوير المفاتيح.

إذا أدرت MTA بنفسك، فاستخدم OpenSSL محليا واحم المفتاح الخاص كما تحمي بيانات اعتماد الإنتاج. وإذا استخدمت TrekMail أو SES أو مزود إرسال آخر، فاستخدم السجلات المقدمة منه. لا تلصق مفاتيح عشوائية من نموذج ويب مجهول لإخفاء تحذير فقط.

يمكن لمسار مترابط مع تحقق واضح أن يقلل التدخلات اليدوية في DNS ونقاط الخطأ. وتزداد أهميته مع علامات تجارية أو نطاقات عملاء متعددة أو عمليات ترحيل جارية. إذا كنت لا تزال تبني البيئة، فاقرأ إعادة توجيه بريد النطاق إلى Gmail قبل إعداد إعادة التوجيه، ثم قارن خطط TrekMail.

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

شارك هذه المقالة

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

تسجيل الدخول إلى TrekMail

الوصول إلى لوحة التحكم وصناديق البريد وإعدادات DNS الخاصة بك.

أو

12 أحرف كلمتا المرور متطابقتان

أو

تم إرسال بريد إعادة التعيين

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

بالمتابعة، فإنك توافق على شروط TrekMail و سياسة الخصوصية.