ما هو DNSSEC؟
DNSSEC (امتدادات أمان نظام أسماء النطاقات) تضيف توقيعات رقمية إلى مجموعات سجلات DNS. ويمكن لمحلل DNS يتحقق من DNSSEC استخدام التوقيعات الصالحة وسلسلة الثقة لمصادقة البيانات الموقّعة واكتشاف التغييرات غير المصرح بها. ولا توفّر DNSSEC تشفيراً لاستعلامات DNS أو استجاباتها.كيف يعمل DNSSEC؟
سلسلة الثقة (مثال بفصل المفاتيح):
منطقة الجذر (.)
├── يوقّع KSK الخاص بمنطقة الجذر (نقطة الثقة) مجموعة سجلات DNSKEY (RRset) في منطقة الجذر
└── يوقّع ZSK الخاص بمنطقة الجذر مجموعات RRset التي تقدّمها منطقة الجذر بصفتها مصدراً موثوقاً، بما فيها RRset سجلات DS للنطاق .com في النطاق الأب
└── يتطابق ملخّص DS مع KSK الخاص بالنطاق .com
├── يوقّع KSK الخاص بالنطاق .com مجموعة سجلات DNSKEY (RRset) للنطاق .com
└── يوقّع ZSK الخاص بالنطاق .com مجموعات RRset التي يقدّمها النطاق .com بصفته مصدراً موثوقاً، بما فيها RRset سجلات DS للنطاق example.com في النطاق الأب
└── يتطابق ملخّص DS مع KSK الخاص بالنطاق example.com
├── يوقّع KSK الخاص بالنطاق example.com مجموعة سجلات DNSKEY (RRset) للنطاق example.com
└── يوقّع ZSK الخاص بالنطاق example.com مجموعات RRset التي يقدّمها النطاق example.com بصفته مصدراً موثوقاً
يتحقق محلل DNS من التوقيعات وملخّصات DS انطلاقاً من نقطة الثقة لمنطقة الجذر
أنواع سجلات DNSSEC
| السجل | الغرض | الوصف |
|---|---|---|
| RRSIG | التوقيع | توقيع تشفيري لكل مجموعة سجلات |
| DNSKEY | المفتاح العام | مفاتيح التوقيع العامة للمنطقة (KSK وZSK) |
| DS | مُوقِّع التفويض | تجزئة مفتاح KSK للمنطقة الابنة في المنطقة الأب |
| NSEC/NSEC3 | نفي موثَّق | يثبت أن سجلاً ما غير موجود |
أنواع المفاتيح
| المفتاح | الغرض | وتيرة التدوير |
|---|---|---|
| KSK (مفتاح توقيع المفاتيح) | يوقّع سجلات DNSKEY | وفقاً لدوره وسياسة المشغّل |
| ZSK (مفتاح توقيع المنطقة) | يوقّع مجموعات RRset الأخرى التي يقدّمها النطاق بصفته مصدراً موثوقاً؛ أما مجموعات RRset لسجلات NS وGlue عند التفويض في جهة النطاق الأب فهي غير موقّعة ([RFC 4035 §2.2](https://www.rfc-editor.org/rfc/rfc4035.html#section-2.2)) | وفق سياسة المشغّل؛ انظر الملاحظة أدناه |
تعتمد مدة استخدام KSK على دوره وسياسة المشغّل. عند اختيار التدوير المنتظم لمفتاح KSK المرتبط بسجل DS لدى النطاق الأب، تُعد سنة واحدة مدة معقولة؛ أما KSK المستخدم كنقطة ثقة فيتطلب تدويره تنسيقاً مع مشغّلي المحللات التي تتحقق منه، وقد تكون مدة استخدامه أطول بكثير. راجع [RFC 6781، القسم 3.2.2](https://www.rfc-editor.org/rfc/rfc6781.html#section-3.2.2) و[القسم 3.3](https://www.rfc-editor.org/rfc/rfc6781.html#section-3.3).
يعتمد توقيت تدوير ZSK على قيم TTL لسجلات DNSKEY والتوقيعات، وانتشار تغييرات المنطقة، والمدة التي قد تظل فيها التوقيعات المنشأة بالمفتاح الجاري إيقافه في ذاكرات المحللات المؤقتة ([RFC 7583 §3.2.1](https://www.rfc-editor.org/rfc/rfc7583.html#section-3.2.1)). إذا كان ZSK متاحاً على نظام توقيع متصل بالشبكة وكان معرضاً بدرجة عالية نسبياً للاختراق، يذكر [RFC 6781 §3.3](https://www.rfc-editor.org/rfc/rfc6781.html#section-3.3) أن عمراً مقصوداً قدره شهر واحد قد يكون معقولاً. وهذه إرشادات مشروطة وليست فترة تدوير عامة.
تدوير مفتاح KSK لمنطقة الجذر في 11 أكتوبر 2026
ينبغي لمشغّلي محللات DNS التي تتحقق من DNSSEC التأكد من وجود KSK-2024 (معرّف المفتاح 38696) في إعداد نقاط الثقة لديهم. لا تفترضوا نجاح التحديثات التلقائية لنقاط الثقة. إذا كان المفتاح غير موجود، فتحققوا من تفعيل التحديثات التلقائية واتبعوا إرشادات مورّد المحلل لتحديث نقاط الثقة. [إرشادات ICANN الحالية لتدوير مفتاح الجذر](https://www.icann.org/resources/pages/ksk-rollover-en).
عملية التحقق من DNSSEC
1. يستعلم العميل من محلل DNS عن سجل A للنطاق example.com.
2. يسترجع المحلل سجل A مع توقيع RRSIG.
3. يجلب المحلل سجل DNSKEY للتحقق من RRSIG.
4. يتحقق المحلل من سجل DS مقابل DNSKEY.
5. تمتد السلسلة إلى الجذر مع التحقق من كل مستوى.
6. إذا كانت كل التوقيعات صالحة، تكون الإجابة موثَّقة.
ما الذي يمكن أن يساعد التحقق من DNSSEC في اكتشافه
يتطلب كشف هذه التهديدات مجموعات RRset موقّعة ومحللاً يتحقق من DNSSEC وسلسلة ثقة سليمة. ولا يمكن مصادقة البيانات غير الموقّعة أو المصنّفة على أنها غير آمنة.
| التهديد | المثال | حماية DNSSEC |
|---|---|---|
| تسميم ذاكرة المحلل المؤقتة | إدخال بيانات DNS مزيفة في ذاكرة المحلل المؤقتة | يمكن لمحلل DNS المتحقق رفض البيانات التي تفشل في التحقق من التوقيع أو سلسلة الثقة. |
| العبث بالاستجابة | تغيير مجموعة سجلات DNS موقّعة أثناء النقل | تفشل البيانات المعدّلة في التحقق من التوقيع. |
| انتحال DNS | تقديم إجابة مزيفة لنطاق موقّع | يمكن لمحلل DNS المتحقق رفض الإجابة التي تفشل في التحقق. |
اعتبارات التنفيذ
- الأداء: تكون الإجابات أكبر بسبب التوقيعات (نحو 1000-4000 بايت مقابل نحو 100 بايت).
- إدارة المفاتيح: تتطلب إنشاء المفاتيح وتخزينها وتدويرها بأمان.
- توقيع المنطقة: يجب إعادة توقيع المنطقة عند تغيير السجلات.
- دعم المحللات: يحتاج العملاء إلى محللات تتحقق من DNSSEC.
أفضل الممارسات
1. اختر خوارزمية توقيع DNSSEC: يوصي [سجل خوارزميات DNSSEC لدى IANA](https://www.iana.org/assignments/dns-sec-alg-numbers) بـ ECDSAP256SHA256 (الخوارزمية 13) للتوقيع والتحقق. وقد تلائم ECDSAP384SHA384 (14) التطبيقات التي تحتاج إلى قوة 192 بت؛ تحقق من دعم المحللات قبل تغيير الخوارزمية ([RFC 9904](https://www.rfc-editor.org/rfc/rfc9904.html)، [RFC 8624 §3.1](https://www.rfc-editor.org/rfc/rfc8624.html#section-3.1)).
2. أتمت تدوير المفاتيح: استخدم أدوات مثل OpenDNSSEC لإدارة دورة حياة المفاتيح.
3. راقب الانتهاء: لتوقيعات RRSIG فترات صلاحية محددة.
4. اختبر قبل النشر: تحقق من المنطقة بأدوات مثل dnsviz.net.
5. خطط للطوارئ: وثّق إجراءات تدوير المفاتيح.
عندما يتحقق محلل DNS من سلسلة الثقة، تصادق DNSSEC على مصدر بيانات DNS الموقّعة وسلامتها. لكنها لا تثبت أن موقعاً أو خادماً على عنوان مسترجع جدير بالثقة.