المستوى المطلوب: مبتدئ. لو عندك موقع شغّال على خادم وعايز تحطّ عليه القفل الأخضر بدون ما تدفع قرش، المقال ده معمول ليك خطوة بخطوة.
اعمل HTTPS مجاني لموقعك بـ Let's Encrypt و Certbot في أقل من 10 دقائق
في نهاية المقال ده هيبقى موقعك بيفتح على https:// بقفل أخضر، والبيانات بين زوّارك وخادمك مشفّرة، وكل ده ببلاش ومن غير ما تجدّد الشهادة بإيدك كل شوية. أول ما تخلّص الخطوات، متصفح Chrome هيوقف يكتب "Not secure" جنب اسم موقعك.
المشكلة باختصار
لو موقعك لسه شغّال على http:// بس، فأي حد على نفس شبكة الـ WiFi أو مزوّد الإنترنت يقدر يقرا اللي بيتبعت (كلمات السر، الرسائل، بيانات الدفع) وهي ماشية. ومن سنة 2018 (إصدار Chrome 68) المتصفح بيعلّم أي صفحة HTTP بإنها "غير آمنة"، وده بيخوّف الزائر ويقلّل ثقته. الحل هو HTTPS: تشفير في الطريق + شهادة تثبت إن الموقع بتاعك فعلاً هو اللي بيرد.
الفكرة بمثال بسيط قبل الكلام التقني
تخيّل إنك بتبعت رسالة مهمة. لو بعتّها على كارت بوستال مكشوف، أي موظف بريد في الطريق يقدر يقراها. ده الـ HTTP. لكن لو حطيتها في ظرف مقفول ومختوم بختم رسمي، محدش يقدر يقراها في الطريق، والختم نفسه بيطمّن المستلم إنها جاية من مصدر موثوق. ده بالظبط الـ HTTPS: الظرف المقفول هو التشفير، والختم الرسمي هو الشهادة اللي بتصدرها جهة موثوقة.
علميًا: HTTPS بيشغّل بروتوكول TLS اللي بيشفّر كل حاجة ماشية بين المتصفح والخادم. والشهادة (Certificate) بيوقّع عليها طرف اسمه "سلطة إصدار الشهادات" (Certificate Authority). المتصفح عنده قايمة بالجهات دي بيثق فيها، فلمّا يلاقي شهادة موقّعة من واحدة منها، يعرض القفل. Let's Encrypt جهة إصدار مجانية بتصدر ملايين الشهادات يوميًا، وCertbot هو الأداة اللي بتطلب الشهادة وتركّبها لك أوتوماتيك.
الافتراضات قبل ما تبدأ
الشرح مبني على إن عندك:
- خادم Ubuntu أو Debian فيه Nginx شغّال وبيفتح الموقع على
http://. - دومين حقيقي (مثلاً
example.com) وسجلAبتاعه بيأشّر على IP الخادم. - المنفذين 80 و443 مفتوحين في الـ firewall.
لو الدومين مش مأشّر على الخادم، خطوة التحقق هتفشل، فظبّط ده الأول.
الخطوات العملية
- ادخل على الخادم وحدّث الحزم، وتأكد إن Nginx شغّال.
- ثبّت Certbot وإضافة Nginx بتاعته.
- شغّل Certbot وسيبه يعدّل إعداد Nginx لك.
- اختار تحويل كل زيارات
httpإلىhttpsتلقائيًا. - اتأكد إن التجديد التلقائي شغّال.
الأوامر بالترتيب على Ubuntu: