في هذا الدرس، ستتعلم كيفية تثبيت شهادة SSL على Linux التي تشغّل خادم الويب Apache (httpd).
تستخدم الأمثلة Red Hat Enterprise Linux (RHEL) وسلالاتها القريبة (Rocky Linux، AlmaLinux، CentOS، Fedora)، حيث يكون Apache عبارة عن حزمة httpd ويوجد التكوين تحت /etc/httpd/. يتضمن القسم الأخير توصيات شراء SSL لخوادم Red Hat Linux.
إنشاء طلب توقيع الشهادة CSR على Linux
إذا كنت قد أنشأت طلب توقيع الشهادة (CSR) بالفعل واستلمت شهادتك، تخطَّ إلى قسم التثبيت.
طلب توقيع الشهادة (CSR) هو كتلة صغيرة من النص المشفَّر تحتوي على معلومات حول نطاقك، وبالنسبة للشهادات التجارية، حول مؤسستك أيضًا. إنشاء طلب توقيع الشهادة (CSR) جزء ضروري من عملية طلب SSL؛ فكل هيئة إصدار شهادات تجارية تطلب هذا الملف قبل إصدار شهادتك. أمامك خياران:
- إنشاء طلب توقيع الشهادة (CSR) تلقائيًا باستخدام أداة إنشاء CSR الخاصة بنا.
- اتباع درسنا التفصيلي حول كيفية إنشاء طلب توقيع شهادة CSR على Red Hat Linux.
أرسل طلب توقيع الشهادة (CSR) إلى هيئة إصدار الشهادات خلال عملية الشراء. بعد أن تتحقق هيئة إصدار الشهادات منه وتصدر شهادة SSL الخاصة بك، تابع عملية التثبيت أدناه.
تثبيت شهادة SSL على Linux (Red Hat / Apache)
بعد التحقق، ترسل لك هيئة إصدار الشهادات أرشيف ZIP يحتوي على ملفات التثبيت عبر البريد الإلكتروني. قم بتنزيله واستخراجه. يجب أن يكون لديك:
- yourdomain.crt، شهادة SSL الأساسية الخاصة بك (الشهادة النهائية أو الورقية leaf certificate).
- yourdomain.ca-bundle، الشهادات الوسيطة، والتي تُسمى أيضًا حزمة CA.
- yourdomain.key، المفتاح الخاص الذي أنشأته مع طلب توقيع الشهادة (CSR).
إذا أرسلت هيئة إصدار الشهادات لديك الشهادة كنص وليس كملفات، افتح الشهادة الأساسية، وانسخ كل شيء بما في ذلك سطري —–BEGIN CERTIFICATE—– و—–END CERTIFICATE—–، واحفظه بصيغة yourdomain.crt. افعل الشيء ذاته مع حزمة CA. اتبع الخطوات أدناه لإتمام التثبيت.
الخطوة 1: تثبيت وحدة SSL (mod_ssl)
على الأنظمة المبنية على Red Hat، يأتي دعم HTTPS من حزمة mod_ssl. قم بتثبيتها (على RHEL 8/9 وFedora استخدم dnf؛ وعلى الإصدارات الأقدم استخدم yum):
sudo dnf install mod_ssl
تثبيت هذه الحزمة يُنشئ أيضًا ملف تكوين SSL الافتراضي في المسار /etc/httpd/conf.d/ssl.conf، وهو المكان الذي ستضيف فيه توجيهات الشهادة.
الخطوة 2: رفع ملفات الشهادة إلى الخادم
انسخ ملفاتك إلى المواقع القياسية للشهادات في Red Hat. توضع الشهادات في /etc/pki/tls/certs/ ويوضع المفتاح الخاص في /etc/pki/tls/private/:
sudo cp yourdomain.crt /etc/pki/tls/certs/
sudo cp yourdomain.ca-bundle /etc/pki/tls/certs/
sudo cp yourdomain.key /etc/pki/tls/private/
قم بتقييد الوصول إلى المفتاح الخاص بحيث لا يمكن لأحد قراءته سوى المستخدم root:
sudo chmod 600 /etc/pki/tls/private/yourdomain.key
في Apache 2.4.8 والإصدارات الأحدث، والتي تشمل جميع إصدارات RHEL المدعومة، اجمع شهادتك وحزمة CA في ملف واحد متسلسل كامل (full-chain)، بحيث تكون الشهادة النهائية أولًا والشهادات الوسيطة بعدها. هذا الملف الواحد هو كل ما يحتاجه توجيه SSLCertificateFile:
cat yourdomain.crt yourdomain.ca-bundle > yourdomain_fullchain.crt
sudo cp yourdomain_fullchain.crt /etc/pki/tls/certs/
الخطوة 3: تكوين VirtualHost لـ HTTPS
افتح ملف تكوين SSL باستخدام محرر نصوص:
sudo nano /etc/httpd/conf.d/ssl.conf
داخل كتلة VirtualHost للمنفذ 443، قم بإعداد تكوين حديث وكامل مثل التكوين أدناه. عدِّل المسارات والنطاق بحيث تتطابق مع ملفاتك:
<VirtualHost *:443>
ServerName www.yourdomain.com
DocumentRoot /var/www/html
SSLEngine on
# Apache 2.4.8+ : certificate + CA bundle in one full-chain file
SSLCertificateFile /etc/pki/tls/certs/yourdomain_fullchain.crt
SSLCertificateKeyFile /etc/pki/tls/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: ملف السلسلة الكاملة (full-chain) الخاص بك (الشهادة متبوعة بالشهادات الوسيطة). في Apache 2.4.8+ يحل هذا التوجيه الواحد محل SSLCertificateChainFile المهجور.
- SSLCertificateKeyFile: المفتاح الخاص الذي أنشأته مع طلب توقيع الشهادة (CSR).
إصدارات Apache القديمة (أقدم من 2.4.8): إذا كنت عالقًا بخادم قديم جدًا، احتفظ بالشهادة والسلسلة الوسيطة منفصلتين، وحدد SSLCertificateFile بحيث يشير إلى yourdomain.crt، وأضف SSLCertificateChainFile /etc/pki/tls/certs/yourdomain.ca-bundle، مع الإشارة إلى حزمة CA، لا إلى شهادتك الخاصة.
الخطوة 4: إعادة توجيه HTTP إلى HTTPS
لضمان وصول الزوار دائمًا إلى النسخة الآمنة من موقعك، أضف كتلة VirtualHost للمنفذ 80 (في تكوين الموقع الرئيسي، على سبيل المثال /etc/httpd/conf.d/yourdomain.conf) تُعيد التوجيه إلى HTTPS:
<VirtualHost *:80>
ServerName www.yourdomain.com
ServerAlias yourdomain.com
Redirect permanent / https://www.yourdomain.com/
</VirtualHost>
الخطوة 5: اختبار التكوين
اختبر الصيغة دائمًا قبل إعادة التحميل؛ فأي خطأ إملائي في التكوين قد يمنع Apache من البدء:
sudo apachectl configtest
يجب أن تظهر لك عبارة Syntax OK. إذا ظهر لك خطأ، راجع الخطوات السابقة قبل الاستمرار.
الخطوة 6: إعادة تحميل Apache
طبِّق التغييرات بإعادة تحميل خدمة httpd. إعادة التحميل تُفعِّل التكوين الجديد دون قطع الاتصالات الحالية:
sudo systemctl reload httpd
sudo systemctl start httpd
sudo systemctl enable httpd
أمر أخير: تأكد من أن جدار الحماية يسمح بحركة مرور HTTPS على المنفذ 443:
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
تهانينا. شهادة SSL الخاصة بك مثبَّتة الآن على خادم Apache على نظام Red Hat Linux.
للتأكد من أن كل شيء يعمل والحصول على تقرير فوري عن الحالة، شغِّل نطاقك عبر SSL Checker الخاص بنا. يكشف الفحص عن أي أخطاء في السلسلة أو التكوين قد تؤثر في مدى ثقة المتصفحات في شهادتك.
وفِّر 10% على شهادات SSL عند الطلب اليوم!
إصدار سريع، وتشفير قوي، وثقة في المتصفح بنسبة 99.99%، ودعم مخصص، وضمان استرداد المال خلال 25 يومًا. رمز القسيمة: SAVE10

