طلب شهادة SSL لموقعك عبر ACME في ServBay
يدعم ServBay استخدام بروتوكول ACME لطلب شهادات SSL/TLS تلقائيًا لمواقع التطوير المحلية لديك. ACME (بيئة إدارة الشهادات التلقائية) هو معيار قياسي لإدارة دورة حياة الشهادة بشكل آلي (بما في ذلك الطلب والتجديد والإلغاء). من خلال لوحة إدارة ACME التي يوفرها ServBay، يمكنك تهيئة شهادات SSL موثوقة لمواقعك المحلية بسهولة—وهذا أمر بالغ الأهمية لمحاكاة بيئة الإنتاج واختبار وظائف HTTPS.
بشكل افتراضي، يعطي ServBay الأولوية لإصدار الشهادات من ZeroSSL، لكن يمكنك أيضًا اختيار Let's Encrypt أو Google Trust Services أو أي جهة إصدار شهادات (CA) متوافقة مع ACME.
TIP
لضمان تطابق بيئة التطوير المحلية مع بيئة الإنتاج، فإن استخدام شهادة SSL موثوقة أمر أساسي. تقدم ميزة ACME في ServBay هذه العملية بمنتهى السهولة.
شرح المفاهيم الأساسية
قبل البدء، من المفيد التعرف على بعض المفاهيم الرئيسية لاستخدام ميزة ACME في ServBay بفعالية:
- بروتوكول ACME: بروتوكول مفتوح يُستخدم لأتمتة التفاعل بين جهة إصدار الشهادة (CA) والخادم، مما يتيح طلب الشهادات وتجديدها وإدارتها تلقائيًا.
- التحقق عبر DNS-01 (طريقة DNS API): يدعم بروتوكول ACME عدة طرق للتحقق من ملكية النطاق. يعتمد ServBay بشكل أساسي على طريقة DNS-01، مما يعني أن جهة إصدار الشهادة ستطلب إضافة سجل TXT معين في إعدادات DNS الخاصة بنطاقك. إذا تم التحقق من وجود هذا السجل وصحته، تؤكد الجهة أنك تملك السيطرة على النطاق. مزايا هذه الطريقة:
- لا تحتاج بيئة التطوير إلى أن تكون متاحة للعامة عبر الإنترنت.
- يمكنك اجتياز القيود حتى لو كانت المنافذ 80 أو 443 محظورة بواسطة الجدار الناري أو موفر خدمات الإنترنت.
- الربط مع الحساب الخارجي (EAB - External Account Binding): لبعض الجهات المصدرة (مثل Google Trust Services أو ZeroSSL)، تحتاج عند أول طلب للشهادة باستخدام ACME إلى ربط عميل ACME (هنا: acme.sh المدمج في ServBay) بحسابك المسجل لدى الجهة. يتطلب ذلك غالبًا زوجًا من مفاتيح Key ID وHMAC.
- شهادات ECC مقابل RSA:
- RSA: خوارزمية تقليدية تحظى بالتوافق الواسع ولكن بمفاتيح أطول (2048 أو 4096 بت) لتحقيق الأمان، ويترتب عليها عبء حسابي أعلى.
- ECC (تشفير المنحنيات البيضاوية): خوارزمية عصرية تقدم نفس درجة الأمان بمفاتيح أقصر بكثير (256 أو 384 بت مثلًا). شهادات ECC أسرع، تقلل زمن المصافحة واستهلاك النطاق الترددي، وتدعم السرية التامة. يوصى بها دائمًا في ServBay.
المتطلبات الأساسية
يستخدم ServBay طريقة طلب الشهادة عبر DNS API، ولا يحتاج موقعك المحلي لأن يكون متوافرًا على الإنترنت. تأكد قبل الطلب أنك تستوفي المتطلبات التالية:
- امتلاك نطاق: ينبغي أن يكون لديك نطاق مسجل مع إمكانية التحكم في سجلات DNS الخاصة به.
- الحصول على مفتاح API لمزود DNS الخاص بك: أثناء الطلب عبر ACME، يجب على ServBay تعديل سجلات TXT عبر واجهة برمجة التطبيقات (API) لمزود DNS. احصل على مفتاح API أو بيانات الاعتماد الخاصة بمنصة استضافة الـ DNS (وقد تكون مختلفة عن مسجل النطاق!). لمراجعة قائمة المزودين المدعومين وكيفية الحصول على مفتاح API لكل منهم، تفضل بزيارة قسم DNS API في وثائق
acme.sh
الرسمية: How to use DNS API. - الحصول على معلومات EAB (عند استخدام Google Trust Services أو ZeroSSL لأول مرة): إذا اخترت Google Trust Services كجهة الإصدار، ستحتاج إلى الحصول على بيانات EAB من Google Cloud وفق وثائقهم الرسمية (بالإنجليزية). مع ZeroSSL، قد يُطلب منك أيضًا التحقق بالبريد الإلكتروني أو استخدام API Key مع أول طلب.
كيفية طلب شهادة SSL عبر ACME في ServBay
اتبع الخطوات التالية لطلب شهادة SSL لموقعك المحلي من خلال ACME في ServBay:
افتح لوحة تحكم ServBay شغّل تطبيق ServBay وادخل إلى لوحة الإدارة من أيقونة شريط القائمة أو Dock.
انتقل إلى إدارة شهادات SSL من القائمة الجانبية في لوحة التحكم، اختر "شهادات SSL".
ابدأ طلب شهادة جديدة اضغط على زر "+" أعلى يمين شاشة إدارة الشهادات، ثم اختر "طلب شهادة جديدة".
إعداد معلومات الشهادة الأساسية
- اسم الشهادة: أدخل اسمًا تمييزيًا ليسهل التعرف عليه (مثال:
servbay-demo-ssl
). - النوع: اختر "TLS/SSL".
- طريقة الطلب: اختر "ACME".
- اسم الشهادة: أدخل اسمًا تمييزيًا ليسهل التعرف عليه (مثال:
اختيار الجهة المصدرة (CA) من قائمة "الجهة المصدرة"، اختر إحدى جهات إصدار الشهادات. الافتراضي هو "ZeroSSL". يمكنك اختيار "Let's Encrypt" أو "Google Trust Services" إن رغبت. سنشرح هنا باستخدام "ZeroSSL" كمثال.
اختيار مزود DNS API من قائمة "مزود DNS API"، حدد شركة استضافة DNS لنطاقك (مثال: "Cloudflare"). انتبه أن هذا الخيار يشير لمنصة إدارة سجلات نطاقك وليس بالضرورة مسجله الأصلي.
اختيار الخوارزمية وطول المفتاح
- الخوارزمية: يُوصى باستخدام "ECC" للأداء والأمان الأفضل. اختر "RSA" فقط لو احتجت أوسع توافق مع الأجهزة القديمة.
- طول المفتاح: في حال ECC الطول الافتراضي غالبًا "384 بت" ويكفي للأمان. مع RSA الخيار المعتاد "2048" أو "4096 بت".
إدخال بيانات التحقق ستظهر حقول بيانات تحقق بحسب الجهة المصدرة ومزود DNS المحددين.
- مع ZeroSSL سيُطلب عادةً بريدك الإلكتروني.
- مع Cloudflare DNS API ستحتاج لإدخال API Key أو بيانات اعتماد أخرى حسب المطلوب في وثائق acme.sh.
WARNING
تنبيه: الصق فقط قيمة مفتاح API أو سر المفتاح بدون إدراج أوامر shell مثل
export
في الحقل!إدخال النطاق في خانة "النطاق"، أدخل اسم النطاق (مثال:
servbay.demo
أو*.servbay.demo
). إن أردت شهادة لنطاق شامل (wildcard مثل*.servbay.demo
) تأكد أن مزود DNS لديك يدعم إضافة سجلات TXT تلقائيًا للنطاقات الشاملة.ابدأ الطلب تحقق من جميع المدخلات ثم اضغط على زر "طلب". سيستخدم ServBay أداة
acme.sh
المدمجة لإجراء تحقق DNS أوتوماتيكيًا والتقدم بطلب إصدار الشهادة.
قد تستغرق العملية عدة دقائق حسب سرعة نشر سجل الـ DNS واستجابة الجهة المصدرة. يمكنك متابعة التقدم عبر السجلات أو قائمة الشهادات في ServBay. عند النجاح، ستظهر الشهادة الجديدة ضمن "شهادات SSL".
استخدام الشهادة في إعدادات موقع ServBay
عند نجاح طلب الشهادة عبر ACME، يمكنك تعيينها على الموقع الذي تريده في ServBay كما يلي:
- انتقل إلى خيار "المواقع" من القائمة الجانبية بلوحة التحكم.
- اختر الموقع الذي تريد تفعيل SSL له واضغط زر التعديل (أيقونة القلم).
- في صفحة إعدادات الموقع ستجد خيار "شهادة SSL".
- اختر اسم شهادة ACME الجديدة من القائمة المنسدلة.
- تأكد من تفعيل مفتاح "تفعيل SSL".
- احفظ الإعدادات. الآن يجب أن يكون موقعك متاحًا عبر HTTPS.
تجديد شهادات ACME
عادةً، شهادات ACME (مثل شهادات Let's Encrypt أو ZeroSSL) صالحة لمدة 90 يومًا. للحفاظ على اتصال HTTPS آمن لموقعك، يجب تجديد الشهادة قبل انتهائها.
يقوم ServBay تلقائيًا بمراقبة صلاحية الشهادات التي تم إصدارها عبر ACME. مع اقتراب انتهاء صلاحية شهادة معينة، يحاول ServBay استخدام بيانات DNS API المهيأة تلقائيًا لطلب التجديد من جهة الإصدار.
عادةً، طالما أن بيانات اعتماد الـ DNS API فعالة وخدمة DNS مستقرة، فلست بحاجة لأي تدخل يدوي—سيعتني ServBay بالتجديد في الخلفية نيابةً عنك.
الأسئلة الشائعة (FAQ) وحلول المشاكل
- فشل الطلب مع رسالة فشل تحقق DNS؟
- تحقق من صحة بيانات اعتماد DNS API وهل لها صلاحية تعديل سجلات TXT.
- تحقق أن اختيارك لـ "مزود DNS API" في ServBay يطابق منصة استضافة سجلات نطاقك.
- أحيانًا يحتاج سجل DNS بعض الوقت لينتشر عالميًا—انتظر دقائق أو أكثر وحاول مجددًا.
- تأكد ألا يوجد خطأ كتابي في اسم النطاق.
- فشل الطلب مع رسالة متعلقة بـ EAB؟
- مع Google Trust Services أو ZeroSSL لأول مرة، تأكد من تعبئة بيانات EAB بشكل صحيح.
- لو نجح الطلب سابقًا وفشل الآن، ربما انتهت صلاحية معلومات EAB أو تغيرت—استخرجها مجددًا.
- فشل الطلب بسبب تجاوز الحد (Rate Limit)؟
- تفرض جهات الإصدار حدودًا للطلبات لكل نطاق أو لكل IP. تكرار الطلب بكثرة قد يجعلك تتجاوز هذا الحد. انتظر عدة ساعات أو أيام ثم أعد المحاولة.
- تم إصدار الشهادة ولكن الموقع في المتصفح يظهر غير آمن؟
- تأكد من تعيين الشهادة الجديدة على الموقع في إعدادات ServBay وتفعيل SSL.
- جرّب مسح ذاكرة التخزين المؤقتة للمتصفح أو فتح الموقع في نافذة التصفح الخفي.
- تحقق من ملف hosts المحلي وأي إعدادات شبكة أخرى لتضمن توجيه النطاق إلى ServBay.
- متى يحاول ServBay التجديد التلقائي؟ يبدأ ServBay عادةً محاولة التجديد قبل فترة (مثلاً 30 يوم) من انتهاء الشهادة. طالما التطبيق يعمل والاتصال متاح، سيتم التجديد أوتوماتيكيًا في الخلفية دون تدخل المستخدم.
الخلاصة
يوفر ServBay ميزة ACME قوية وسهلة الاستخدام، تُمكن المطورين من طلب وإدارة شهادات SSL/TLS موثوقة لمواقعهم المحلية عبر DNS API. لا تسهل هذه الميزة إعداد الشهادات فقط، بل تجعل بيئة تطويرك أقرب ما تكون لبيئة الإنتاج وتدعم اختبار ميزات HTTPS بثقة وفعالية أعلى.
نتمنى أن يكون هذا الدليل قد ساعدك في تهيئة شهادات SSL عبر ACME في ServBay—وأن يعزز من تجربة تطويرك المحلية.