تثبيت certbot على خادم Debian

منظمة Let's Encrypt أحدثت صورة عندما قررت توفير شهادات SSL مجانا لكل من يشاء من أجل مبادرة تحويل الإنترنت بالكامل إلى بروتوكولات أكثر امانا. مضت العديد من السنين على هذا القرار ولا زلما حتى اليوم نستخدم شهاداتهم من خلال برنامج Certbot.

هذا المقال هو الجزء الرابع من مشروع شرح تثبيت خادم Nginx وتشغيل موقع عليه. للعودة إلى الفهرس، يمكن الضغط هنا.

قديما كان تثبيت Certbot معقّدا بعض الشيء لكونه غير متوفر في مستودعات البرامج ولكن بعدها أصبح أسهل بكثير لانه أصبح متوفرا لجميع التوزيعات من خلال مستودع البرامج. لكن، لسبب غير مفهوم للجميع تقرر طرح البرنامج الجديد من خلال متجر snap فقط. للأسف وبما أن Certbot هو البرنامج الوحيد القادر على عمل شهادات SSL مجانية، سيتوجب علينا استخدام البرنامج حتى ولو كان من خلال snap.

من الجدير بالذكر انه لا زال بالإمكان تثبيت البرنامج من خلال مستودعات Debian ووغيرها من التوزيعات ولكن القيام بأمور متقدمة أكثر مثل إنشاء شهادة SSL من خلال مصادقة API عبر سجلات DNS تبقى محدودة للبرنامج المتوفر على snap. خطوة أراها غير صحيحة ومقيّدة للمستخدمين وهو أمر مفروض علينا للأسف وليس هناك بديل له حتى اليوم.

تثبيت Certbot

هناك طريقتين لتثبيت البرنامج عبر مستودعات النظام أو من خلال snap.

تثبيت Certbot من خلال مستودعات النظام

يمكن وبكل سهولة تثبيت certbot من خلال تنفيذ الأمر التالي:

apt install certbot

تثبيت البرنامج يتطلب تثبيت عدد من الإعماديات التي تعتمد على بايثون. عند الإنتهاء يمكن استخدام البرنامج لتثبيت شهادة ssl من خلال خادم مستقل، أو من خلال الوصول المباشر عبر nginx او من خلال توثيق DNS يدوي.

تثبيت Certbot من خلال snap

تثبيت snap

للتثبيت، نقوم بتنفيذ الأوامر التالية في طرفية الخادم:

apt install snapd
snap install core

تثبيت certbot باستخدام snap

بعد تثبيت snap، يمكنك تثبيت البرنامج من خلال الأوامر التالية

snap install --classic certbot
ln -s /snap/bin/certbot /usr/bin/certbot
snap set certbot trust-plugin-with-root=ok

هنا نكون قد إنتهينا من تثبيت certbot على الخادم وهو جاهز لتوفير شهادات ssl لنا. في هذا المقال لن نقوم بشرح إصدار الشهادة وذلك لان الشرح سيتم بشكل موسّع في مقال آخر من أجل سهولة الفهم والتنفيذ.