تمكين HTTPS باستخدام Let's Encrypt
أمّن خادم الويب بشهادات TLS مجانية من Let's Encrypt. ثبّت Certbot، واحصل على الشهادات وجدّدها تلقائيًا، واضبط Nginx أو Apache لتقديم حركة المرور عبر HTTPS مع إعادة توجيه HTTP.
تمكين HTTPS باستخدام Let's Encrypt درس مجاني في Linux Server Deployment & SSH Mastery على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Linux Server Deployment & SSH Mastery، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.
لماذا يُعد HTTPS أمرًا لا غنى عنه
يمكنكم استضافة المواقع وإعداد المضيفات الافتراضية، لكن تقديمها عبر HTTP العادي يعرّض حركة المرور للتنصّت والتلاعب. وتضع المتصفحات الآن علامة «غير آمن» على مواقع HTTP.
يشفّر HTTPS حركة المرور باستخدام شهادة TLS. وبفضل Let's Encrypt، أصبحت هذه الشهادات مجانية وآلية.
كيف يعمل Let's Encrypt
يُعد Let's Encrypt جهة لإصدار الشهادات، ويصدر شهادات مجانية قصيرة الأجل، صالحة لمدة 90 يومًا. ولإثبات أنكم تتحكمون في نطاق ما، يستخدم بروتوكول ACME مع تحدٍّ آلي.
يتولى عميل يُسمى Certbot طلب الشهادات وتثبيتها وتجديدها نيابةً عنكم.
المتطلبات الأساسية
قبل طلب شهادة، تأكدوا من أن:
- سجل DNS من النوع A الخاص بنطاقكم يشير إلى عنوان IP للخادم
- المنفذان 80 و443 مفتوحان في جدار الحماية
- خادم الويب يعمل ويقدّم النطاق
يتطلب التحدّي إمكانية الوصول إلى المنفذ 80 من الإنترنت.
sudo ufw allow 'Nginx Full'
dig +short yourdomain.comتثبيت Certbot
يتوفر Certbot كحزمة، مع إضافات لـ Nginx وApache تعمل على أتمتة تغييرات الإعداد.
sudo apt install certbot python3-certbot-nginx
# For Apache:
sudo apt install certbot python3-certbot-apacheالحصول على شهادة (Nginx)
تحصل إضافة Nginx على الشهادة وتعدّل كتلة الخادم لاستخدامها. مرّروا نطاقكم أو نطاقاتكم باستخدام -d.
يكتشف Certbot كتلة الخادم المطابقة تلقائيًا.
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.comالحصول على شهادة (Apache)
بالنسبة إلى Apache، تكون آلية العمل مطابقة عند استخدام إضافة apache. يُحدّث Certbot المضيف الافتراضي لتمكين SSL.
sudo certbot --apache -d yourdomain.comفرض عمليات إعادة التوجيه إلى HTTPS
أثناء الإعداد، يسألك Certbot عمّا إذا كنت تريد إعادة توجيه HTTP إلى HTTPS — اختر نعم. وإذا تخطّيت ذلك، فأضف إعادة التوجيه يدويًا في كتلة خادم HTTP.
server {
listen 80;
server_name yourdomain.com;
return 301 https://$host$request_uri;
}التجديد التلقائي
تنتهي صلاحية الشهادات بعد 90 يومًا، لكن Certbot يثبّت مؤقّت systemd (أو مهمة cron) يجدّدها تلقائيًا. ويمكنك اختبار عملية التجديد بأمان باستخدام تشغيل تجريبي.
sudo certbot renew --dry-run
systemctl list-timers | grep certbotالتحقق من الشهادة
تأكّد من عمل HTTPS بزيارة الموقع وفحص الشهادة. ومن خلال CLI، يمكنك عرض الشهادات المُدارة والتحقق من تاريخ انتهائها.
sudo certbot certificates
curl -svI https://yourdomain.com 2>&1 | grep -i 'subject\|expire'تعزيز TLS
لتحقيق أعلى مستوى من الأمان، اضبط إعدادات TLS: عطّل البروتوكولات القديمة، وفضّل خوارزميات التشفير القوية، ومكّن HSTS حتى تستخدم المتصفحات HTTPS دائمًا.
تنتج أدوات مثل Mozilla's SSL Configuration Generator إعدادات جاهزة للصق.
ssl_protocols TLSv1.2 TLSv1.3;
add_header Strict-Transport-Security 'max-age=63072000' always;أفضل الممارسات
شغّل HTTPS بشكل موثوق:
- أعد توجيه HTTP إلى HTTPS دائمًا
- اختبر التجديد باستخدام
--dry-runبعد الإعداد - افتح المنفذين 80 و443 معًا؛ إذ يلزم المنفذ 80 لعمليات التجديد
- مكّن HSTS وبروتوكولات TLS الحديثة فقط
تحقق سريع
اختبر معرفتك بـ HTTPS.
مراجعة
لقد أمّنت خادم الويب باستخدام TLS مجاني:
- ثبّت Certbot مع إضافة Nginx/Apache
- حصلت على الشهادات باستخدام
certbot --nginx -d - فرضت عمليات إعادة توجيه HTTP → HTTPS
- أكّدت التجديد التلقائي باستخدام تشغيل تجريبي
تعرض مواقعك الثابتة ومضيفوك الافتراضيون الآن حركة مرور مشفّرة افتراضيًا.
الأسئلة الشائعة
هل درس «تمكين HTTPS باستخدام Let's Encrypt» مجاني؟
نعم — نص درس «تمكين HTTPS باستخدام Let's Encrypt» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Linux Server Deployment & SSH Mastery، انتقل إلى CoddyKit PRO. تتضمن دورة Linux Server Deployment & SSH Mastery 4 دروس في المجموع.
ماذا ستتعلم في «تمكين HTTPS باستخدام Let's Encrypt»؟
أمّن خادم الويب بشهادات TLS مجانية من Let's Encrypt. ثبّت Certbot، واحصل على الشهادات وجدّدها تلقائيًا، واضبط Nginx أو Apache لتقديم حركة المرور عبر HTTPS مع إعادة توجيه HTTP. تتمرن على Linux Server Deployment & SSH Mastery مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Linux Server Deployment & SSH Mastery؟
لا تُشترط خبرة سابقة. Linux Server Deployment & SSH Mastery على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «تمكين HTTPS باستخدام Let's Encrypt»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Linux Server Deployment & SSH Mastery هذا؟
نعم. كل درس في Linux Server Deployment & SSH Mastery يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تثبيت Nginx/Apache
- استضافة المواقع الثابتة
- إعداد المضيفات الافتراضية الأساسي
- تمكين HTTPS باستخدام Let's Encrypt