ادارة السيرفرات

الفرق بين -all و ~all في اعدادات SPF لحقول دي ان اس الموقع كارثيا

SPF او  “Sender Policy Framework” والتي تترجم للعربية الى “نطاق سياسة المرسل” هي عبارة عن حقول دي ان اس (DNS nameserver records) والتي يستطيع من خلالها الخادم المستلم لرسائل البريد الالكتروني تحديد فيما اذا تم ارسال الرسالة من خادم “اي بي” مسموح له بارسال رسائل البريد الالكتروني للموقع مرسل الرسالة او لا.

يتفق الجميع على ضرورة استخدام حقل SPF (وهو عبارة عن سجل TXT يتم اضافته الى حقول DNS الموقع)  لاي موقع انترنت وذلك من اجل تحديد الخوادم التي يحق لها ارسال رسائل البريد الالكتروني نيابة عن هذا الموقع  ولضمان وصول الرسائل المرسلة من الموقع في مجلد البريد الوارد ، وللاستزادة في هذا الموضع انصحك بمراجعة مقالي كيف تضمن عدم تصنيف رسائل البريد الالكتروني المرسلة من موقعك كـ رسائل مزعجة وضمان وصولها الى ال inbox ، ولكن استخدام SPF يجب ان يكون بطريقة صحيحة تماما اذ ان اغفال اشارة واحدة فقط كاستخدام اشارة  ~ بدلا من اشارة – اثناء تعريف الخوادم المصرح لهم بارسال الرسائل الالكتروني قد يكون لها الاثر الكارثي. دعنا ناخذ ذلك بمثال 🙂

الفرق بين استخدام -all و ~all يعتبر كارثيا 🙂 حيث ان استبدال الاشارة – بالاشارة  ~ يعني الكثير.

لو فرضنا ان الموقع example.com مستضاف على الخادم 127.0.0.1 ويقوم بارسال رسائل البريد الالكتروني منه فقط فان الاغلب سوف يستخدم النص التالي في حقل SPF للاشارة الى التصريح للخادم الذي يحمل الاي بي 127.0.0.1 بارسال رسائل نيابة عن example.com

"v=spf1 ip4:127.0.0.1 ~all"

وربما للحظة تعتقد ان العبارة صحيحة ، حيث ان تفصيل العبارة هي كاننا نقول: من المصرح للخادم الذي يحمل الاي بي رقم 127.0.0.1 بارسال رسائل البريد الالكتروني نيابة عن الموقع. ولكن توقف ماذا تعني اشارة ~ وماذا تعني all وهل يمكن استخدام تعليمات اخرى مع all ؟؟!

بناء على قوانين SPF فان استخدام all  يمكن ان يكون مع الاشارات التالية كالتالي:

التعليمةالحالةالمعنى
+allنجاح عملية الارسالمن المسموح لجميع عناوين اي بي الانترنت ارسال الرسائل
-allفشل الارسالليس من المسموح لاي عناوين اي بي ارسال الرسائل الا العناوين المذكورة في تعليمة تعريف SPF وهي ((IPv4,IPv6, MX .. الخ)
~allنجاح مقيدالسماح لعناوين الاي بي بارسال الرسائل سواء المذكورة في تعليمات العبارة او لا
?allنجاحلا يوجد تقييمات

كما نلاحظ في الجدول اعلاه فان استبدال الاشارة – بالاشارة ~ بجانب كلمة all له اثر كارثي ، حيث ان استخدام ~ يعني ان يسمح لعناوين الانترنت الباقية على الشبكة بالسماح بارسال الرسائل هذا يعني لو انه حاول خادم في الصين او الهند ارسال رسائل وكانها صادرة من موقعنا سوف يتم استلام الرسالة من المتسلم (على الرغم من انه سوف يؤشر عليها بفشل التحقق من SPF)، ولكن هذا لن يمنع الخادم المستلم من استلامها وان كان عنوان البريد المستلم غير صحيح فان هذا لن يمنع الخادم المستلم من ارسال  تقرير بفشل تسليم الرسالة (delivery fail report)   ولهذا ستعود رسائل التقرير لنا وهذا يعني انه ربما يُغرق حساب بريدنا الالكتروني بتقارير فشل تسليم رسائل لم نقم على ارسالها اصلا.

ولهذا فانه دوما من الافضل تحديد عناوين الاي بي التي يمكن لموقعنا ارسال الرسائل منها ومن ثم وضع التعليمة – مع عبارة all لنمنع من ارسال الرسائل الا من عناوين الاي بي المذكورة في تعليمة SPF فقط وهذا سوف يحمينا من جانب الارسال المزيف ( email spoofing) ومن جانب استلام تقارير فشل التسليم للرسائل المرسلة من خوادم لا تعود لنا. وبالتالي فان العبارة الصحيحة هي:

"v=spf1 ip4:127.0.0.1 -all"

والتي تعني انه يصرح فقط لعنوان الاي بي 127.0.0.1 بارسال الرسائل من الموقع فقط ، بدلا من العبارة السابقة التي تسمح لاي عنوان بارسال الرسائل.

مطور تطبيقات انترنت واداري سيرفرات لينكس.

أضف تعليق

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

هذا الموقع يستخدم Akismet للحدّ من التعليقات المزعجة والغير مرغوبة. تعرّف على كيفية معالجة بيانات تعليقك.