شرح ربط خدمة Amazon SES بخوادم CPanel/WHM لارسال رسائل إلكترونية موثوقة تصل لمجلد inbox

أهلا بكم، في هذه المقالة سأشرح لكم كيفية ربط خدمة Amazon SES مع خادم البريد Exim في لوحة التحكم cPanel/WHM وبدون الحاجة لخبرة تقنية.

سأفترض في هذا الدرس أنك تمتلك حساب Amazon Web Services، في البداية، دعنا نتعرف على خدمة Amazon SES..

ماهي خدمة Amazon SES ؟

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

ما هي مميزات خدمة Amazon SES ؟

  • رسائل موثوقة، لن تواجه مشكلة وصول رسائلك لصندوق البريد المهملة Spam بعد اليوم!

  • تكاليف منخفضة والدفع عند الإستخدام وبدون اشتراكات شهرية.

  • لن تضطر لفحص عنوان الآي بي الخاص بالخادم، وداعاً لمشاكل حظر عناوين الآي بي ( Blacklist ).

ماهي تكلفة استخدام خدمة Amazon SES ؟

تكاليف هذه الخدمة منخفضة للغاية مقارنة بالخدمات الشبيهة، فهي كالتالي :

  • 0.10$ لكل 1,000 رسالة بريد الكتروني.

  • 0.12$ لكل 1GB من حجم مرفقات رسائل البريد الالكتروني.

ملاحظة: في حال كنت تمتلك خادم من Amazon EC2، فستمنحك أمازون 62,000 رسالة بريد الكتروني مجانية شهرياً.

البداية

بعد تسجيل الدخول لحساب AWS، سنتوجه لرابط الخدمة :

الخطوة الأولى التي سنقوم بها، هي اختيار المنطقة الجغرافية الأقرب للخادم الخاص بنا، مثلا : أنا لدي خادم من Amazon EC2 في قارة أوروبا وبالتحديد مدينة فرانكفورت (Frankfurt)

اذاً، المكان الأقرب لي، هي نفس المنطقة الجغرافية المتوفرة Frankfurt، والغرض من هذه الخطوة هي تقليل وقت الاستجابة بين خادمك وخادم أمازون الذي سيتولى عملية إرسال البريد الالكتروني.

تسجيل النطاق الأول

بالطبع لتتمكن من إرسال رسائل البريد الالكتروني عبر هذه الخدمة، يجب أن يتم توثيق النطاق الذي تريد أن تُرسل منه الرسائل.

سأفترض أن النطاق المستخدم هو abdalsalaam.xyz، ولتوثيقه سنتوجه لخانة Manage Identities

ثم سنقوم بالضغط على زر توثيق نطاق جديد ( Verify a New Domain )

سنكتب عنوان النطاق الخاص بنا وفي حالتي abdalsalaam.xyz، ونقوم بالتأكيد على خيار توليد اعدادات DKIM

(لمعلومات أكثر عن DKIM يرجى البحث في محرك البحث جوجل "ماهو DKIM")

ثم الضغط على زر Verify This Domain

سيقوم النظام بتوليد 4 سجلات الأول لتوثيق النطاق، والثلاثة المتبقية لإعداد DKIM.

لتسجيل هذه السجلات في النطاق الخاص بك بامكانك تسجيلها في لوحة التحكم مباشرة من الشركة التي قمت بحجز النطاق منها..

وفي حالتنا هذه، نحن نتعامل الآن مع خادم مثبّت عليه لوحة التحكم cPanel/WHM، لذا فلدينا امكانية لادخال السجلات بدون الحاجة للخيار الأول.

في لوحة التحكم WHM ، سنبحث عن خيار Edit dns zone ، ونختار النطاق الذي نعمل عليه حالياً

ثم نقوم بادخال هذه السجلات كما في الصورة

مع الانتباه للتالي :

لادخال سجل جديد ( _amazonses.abdalsalaam.xyz ) ويحمل القيمة ZqIlmHYyrhbiEF6AuLdi2XyRrAkprORtcVy+s6OOBQ4=

نقوم بانشاء سجل جديد نوعه TXT

سنقوم بادخال (_amazonses) في الخانة الأولى Name ، والقيمة "ZqIlmHYyrhbiEF6AuLdi2XyRrAkprORtcVy+s6OOBQ4=" في الخانة الثانية Value (مع اضافة علامات التنصيص "القيمة داخل علامات تنصيص")

ولادخال سجل جديد (2umh3fucfor7zprvfgsxsxxg6tjffu2c._domainkey.abdalsalaam.xyz) ويحمل القيمة (2umh3fucfor7zprvfgsxsxxg6tjffu2c.dkim.amazonses.com)

نقوم بانشاء سجل جديد نوعه CNAME

وفي الخانة الاولى نضع (2umh3fucfor7zprvfgsxsxxg6tjffu2c._domainkey) وتحمل القيمة (2umh3fucfor7zprvfgsxsxxg6tjffu2c.dkim.amazonses.com.) ملاحظة مهمة : نقوم باضافة نقطة "." في نهاية القيمة أي اننا سنضع النقطة بعد com.

بعد الانتهاء من ادخال السجلات،نعود لصفحة خدمة AWS SES ونضغط غلى زر Close لتظهر لنا قائمة النطاقات

وننتظر لحين فحص النطاق لنظهر كلمة verified ويصبح جاهز لارسال الرسائل (Enabled for Sending)

ثم سننتقل للخطوة الثانية ..

الغاء الوضع التجريبي

سنتوجه لصفحة احصائيات الارسال، يمكنك ايجاد الصفحة في القائمة ( Sending Statistics )

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

وهذا الوضع تلقائي لجميع الحسابات الجديدة، للسيطرة على هذه الخدمة وإبعاد مُرسلي رسائل الاحتيال.

الحل سهل للغاية، سنقوم بالضغط على زر ( Request a sending limit increase )

سيوجهك الموقع لخدمة الدعم الفني، ببساطة ستطلب منهم الخروج من الوضع التجريبي مع تزويدهم بمعلومات عامة عن طبيعة نشاط موقعك وماهي أهدافك من استخدام هذه الخدمة؟

بعد الانتهاء من هذه الخطوة وتفعيل الوضع الكامل لديك، نتوجه للخطوة الثالثة والأخيرة

ربط خدمة Amazon SES بلوحة تحكم cPanel/WHM

لربط الخدمة بالخادم، سنحتاج للبيانات التالية :

  • Server name

  • Authentication

للحصول عليها، نتوجه لصفحة SMTP Settings

يمكننا بسهولة معرفة ماهو الخادم المسؤول عن ارسال البريد الالكتروني Server name ، وللحصول على بيانات المصادقة

سنقوم بالضغط على زر Create My SMTP Credentials

وعند توليد البيانات سنحتفظ بها في ملف نصي لنسخدمها بعد قليل

الآن لدينا كل البيانات المطلوبة، سنتوجه للوحة تحكم الخادم WHM

سنتوجه لإعدادات خادم البريد الالكتروني Exim Configuration Manager

مع اختيار المحرر المتقدم Advanced Editor

سنبحث في الصفحة عن قسم : Section: ROUTERSTART

ونلصق فيه هذه الأسطر

 send_via_ses:
 driver = manualroute
 domains = ! +local_domains
 transport = ses_smtp
 route_list = * email-smtp.eu-central-1.amazonaws.com;

مع استبدال الخادم : email-smtp.eu-central-1.amazonaws.com بالخادم المسؤول عن المنطقة الجغرافية التي قمت باختيارها (Server name الذي قمت بتخزينه في ملف نصي قبل قليل)

ثم سنبحث عن قسم Section: TRANSPORTSTART

ونلصق فيه هذه الأسطر

 ses_smtp:
 driver = smtp
 port = 587
 hosts_require_auth = *
 hosts_require_tls = *

بدون استبدال شيئ

والخطوة الأخيرة في قسم Section: AUTH

سنلصق فيه هذه الأسطر

 ses_login:
 driver = plaintext
 public_name = LOGIN
 client_send = : SMTP_USERNAME : SMTP_PASSWORD 

مع استبدال SMTP_USERNAME و SMTP_PASSWORD بالبيانات التي تم توليدها في خطوة "Create My SMTP Credentials"

ثم سنضغط على زر Save في نهاية الصفحة

هذا كل شيئ ! سيقوم الخادم بإعادة تشغيل خادم البريد الالكتروني

والآن خادمك يرسل رسائل البريد الالكتروني عبر خدمة AWS SES

ملاحظة مهمة : يجب عليك توثيق جميع النطاقات المستضافة على خادمك ويثمل النطاق الرئيسي للخادمة مثال : server.abdalsalaam.xyz في حال أردت تفعيل ارسال الرسائل من هذه النطاقات.

واحرص على متابعة احصائيات الارسال في لوحة تحكم AWS SES للمحافظة على معدل صحّة عالي والابتعاد عن الرسائل المخالفة لقوانين أمازون.

وان كنت تواجه مشكلة مشابهة وترغب بتوظيف شخص ليحلها ، يسعدني التعامل معك عبر مستقل للعمل على حلها باذن الله

شكراً لك لوصولك لهذه النقطة

اراكم في شرح آخر

مصدر المقالة //