في هذا الدرس، ستتعلم كيفية تثبيت شهادة SSL على Ubuntu مع Apache.
سجّلنا أيضاً فيديو يشرح لك العملية بأكملها خطوة بخطوة. إذا كنت تفضل النسخة النصية، تابع القراءة أدناه.
إنشاء رمز CSR
سنبدأ بإنشاء CSR (طلب توقيع الشهادة). CSR هو طلب يُرسل إلى جهة إصدار الشهادات للحصول على شهادة رقمية. أمامك خياران:
- استخدام مولّد CSR الخاص بنا لإنشاء CSR تلقائياً.
- اتباع درسنا التفصيلي حول كيفية إنشاء CSR في Ubuntu.
أرسل CSR إلى جهة إصدار الشهادات عند إجراء طلبك. بعد أن تتحقق CA منه وتصدر شهادة SSL الخاصة بك، تابع عملية التثبيت أدناه.
تثبيت شهادة SSL على خادم Ubuntu
الخطوة 1: رفع ملفات الشهادة
بعد التحقق، ترسل لك جهة إصدار الشهادات ملفات الشهادة عبر البريد الإلكتروني. استخرج الأرشيف. يجب أن يكون لديك:
- yourdomain.crt، شهادة SSL الأساسية الخاصة بك.
- yourdomain.ca-bundle، الشهادات الوسيطة (حزمة CA).
- yourdomain.key، المفتاح الخاص الذي أنشأته مع CSR.
ارفع الشهادة وحزمة CA إلى /etc/ssl/ والمفتاح الخاص إلى /etc/ssl/private/ (حافظ على أن يكون المفتاح قابلاً للقراءة فقط من قِبل المستخدم root). في Apache 2.4.8 والإصدارات الأحدث (والتي تشمل جميع إصدارات Ubuntu المدعومة)، اجمع الشهادة وحزمة CA في ملف سلسلة كاملة واحد:
cat yourdomain.crt yourdomain.ca-bundle > yourdomain_fullchain.crt
الخطوة 2: تفعيل وحدة SSL وتحديد ملف تهيئة موقعك
فعّل وحدة SSL في Apache (وكذلك وحدة headers المستخدمة لـ HSTS في الخطوة 3):
sudo a2enmod ssl
sudo a2enmod headers
ملف تهيئة موقعك موجود في /etc/apache2/sites-available/ (عادة يكون اسمه yourdomain.conf). حرّر الملف هناك. الملفات الموجودة في sites-enabled/ هي فقط روابط رمزية (symlinks). إذا لم يكن الموقع مفعّلاً بعد، فعّله باستخدام:
sudo a2ensite yourdomain.conf
ملاحظة: يجب تقديم HTTP (المنفذ 80) و HTTPS (المنفذ 443) من كتلتي VirtualHost منفصلتين. كتلة HTTPS هي التي تُضاف فيها توجيهات SSL.
الخطوة 3: تهيئة كتلة VirtualHost لـ HTTPS
قم بضبط كتلة VirtualHost للمنفذ 443. تبدو الكتلة الكاملة والحديثة كما يلي؛ اضبط المسارات لتتطابق مع ملفاتك:
<VirtualHost *:443>
ServerName www.yourdomain.com
DocumentRoot /var/www/yourdomain
SSLEngine on
# Apache 2.4.8+ : certificate + CA bundle in one full-chain file
SSLCertificateFile /etc/ssl/yourdomain_fullchain.crt
SSLCertificateKeyFile /etc/ssl/private/yourdomain.key
# Recommended TLS hardening (2026)
SSLProtocol -all +TLSv1.2 +TLSv1.3
SSLHonorCipherOrder off
# Enable HSTS only after you confirm HTTPS works
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
</VirtualHost>
- SSLCertificateFile: ملف السلسلة الكاملة (الشهادة + الشهادات الوسيطة). في Apache 2.4.8+ يحل هذا محل التوجيه المهجور SSLCertificateChainFile.
- SSLCertificateKeyFile: المفتاح الخاص الذي أنشأته مع CSR.
إصدارات Apache القديمة (أقدم من 2.4.8): احتفظ بالشهادة والسلسلة منفصلتين وأضف SSLCertificateChainFile /etc/ssl/yourdomain.ca-bundle، مشيراً إلى حزمة CA، لا إلى ملف الشهادة الخاص بك.
الخطوة 4: إعادة توجيه HTTP إلى HTTPS
لضمان وصول الزوار دائماً إلى النسخة الآمنة، أضف كتلة VirtualHost للمنفذ 80 تعيد التوجيه إلى HTTPS:
<VirtualHost *:80>
ServerName www.yourdomain.com
Redirect permanent / https://www.yourdomain.com/
</VirtualHost>
الخطوة 5: اختبار التهيئة
اختبر دائماً قبل إعادة التحميل؛ فأي خطأ نحوي قد يؤدي إلى تعطيل الموقع:
sudo apache2ctl configtest
يجب أن تظهر لك رسالة Syntax OK. إذا ظهر خطأ، راجع الخطوات السابقة قبل الاستمرار.
الخطوة 6: إعادة تحميل Apache
طبّق التغييرات بإعادة تحميل Apache (إعادة التحميل تفعّل التهيئة الجديدة دون قطع الاتصالات):
sudo systemctl reload apache2
تهانينا، تم الآن تثبيت شهادة SSL على خادم Ubuntu الخاص بك. للتحقق من النتيجة والحصول على تقرير حالة فوري، استخدم SSL Checker الخاص بنا.
من أين تشتري شهادة SSL لخادم Ubuntu؟
SSL Dragon هو مصدرك لجميع احتياجاتك من شهادات SSL. نقدم بعض أدنى الأسعار في السوق على مجموعتنا الكاملة من منتجات SSL، وقد تشاركنا مع أفضل العلامات التجارية لشهادات SSL في هذا المجال لضمان أمان قوي ودعم متخصص. جميع شهادات SSL التي نقدمها متوافقة مع خوادم Ubuntu.
الأسئلة الشائعة
اتصل بموقعك باستخدام OpenSSL واقرأ الشهادة التي يقدمها:echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -dates
إذا كانت الشهادة مثبّتة، فسيطبع هذا الأمر جهة الإصدار وتواريخ الصلاحية. يمكنك أيضاً عرض قائمة المضيفات الافتراضية النشطة في Apache باستخدام sudo apache2ctl -S، أو ببساطة فتح موقعك في متصفح والتحقق من رمز القفل.
تقليدياً، توضع الشهادات في /etc/ssl/certs/ (أو /etc/ssl/) والمفاتيح الخاصة في /etc/ssl/private/. هذه هي المواقع الافتراضية؛ يمكنك استخدام مواقع أخرى ما دام VirtualHost يشير إليها.
ملفات تهيئة المواقع موجودة في /etc/apache2/sites-available/ (مثلاً yourdomain.conf)، والمواقع المفعّلة تكون مرتبطة برموز إلى /etc/apache2/sites-enabled/. فعّل موقعاً باستخدام sudo a2ensite yourdomain.conf.
في Apache 2.4.8 والإصدارات الأحدث (جميع إصدارات Ubuntu المدعومة)، نعم: قم بدمج شهادتك وحزمة CA في ملف واحد وأشر بواسطة SSLCertificateFile إليه. توجيه SSLCertificateChainFile المنفصل مهجور ولا يُحتاج إليه إلا في إصدارات Apache القديمة.
خلاصة القول
يتلخص تثبيت شهادة SSL على Ubuntu مع Apache في رفع ملفاتك، وتفعيل mod_ssl، وتهيئة كتلة VirtualHost لـ HTTPS بشهادة السلسلة الكاملة، والاختبار باستخدام sudo apache2ctl configtest، وإعادة تحميل Apache. تحتاج إلى شهادة أولاً؟ تصفح شهادات SSL الخاصة بنا.
وفِّر 10% على شهادات SSL عند الطلب اليوم!
إصدار سريع، وتشفير قوي، وثقة في المتصفح بنسبة 99.99%، ودعم مخصص، وضمان استرداد المال خلال 25 يومًا. رمز القسيمة: SAVE10

