أنواع ملفات SSL: ما هي CRT وKEY وPEM وPFX وCSR وحزمة CA
عند تنزيل شهادة SSL الخاصة بك ينتهي بك الأمر بمجموعة من الامتدادات: .crt و.key و.pem و.pfx و.csr إضافة إلى حزمة CA. تبدو جميعها متشابهة للوهلة الأولى، لكن لكل منها وظيفة مختلفة، ووضع الملف الخاطئ في المكان الخاطئ يعني ببساطة أن HTTPS لن يعمل. يستعرض هذا الدليل كل أنواع ملفات SSL الشائعة، ويوضح ما بداخل كل منها، ويبيّن أي خادم يطلب أي ملف. في النهاية ستعرف بالضبط ما الذي بين يديك وأين يوضع.
ما هو PEM؟ (تنسيق، وليس نوع ملف)
إن PEM ليس نوع شهادة على الإطلاق، بل هو تنسيق ترميز. يخزّن البيانات كنص ASCII مُرمَّز بترميز Base64 بين علامات مثل -----BEGIN CERTIFICATE----- و-----END CERTIFICATE-----. إذا فتحت ملفًا في محرر نصوص ورأيت هذه الأسطر، فهو مُرمَّز بصيغة PEM. معظم ملفات CRT وKEY وحزمة CA مكتوبة فعليًا بصيغة PEM، ولهذا فإن .pem حاوية عامة جدًا.
CRT / CER — الشهادة نفسها
ملف CRT (أو .cer) هو شهادة SSL الفعلية الموقّعة من سلطة إصدار الشهادات. يحتوي على اسم نطاقك وتواريخ الصلاحية ومفتاحك العام، ويبدأ بـ -----BEGIN CERTIFICATE-----. هذا الملف ليس سريًا؛ فهو معلومات عامة تُقدَّم لكل متصفح يتصل بالموقع.
KEY — المفتاح الخاص (لا تشاركه أبدًا)
ملف KEY هو المفتاح الخاص لشهادتك ويبدأ بـ -----BEGIN PRIVATE KEY-----. إنه قلب تشفير HTTPS. إذا تسرّب هذا الملف لم تعد شهادتك موثوقة. لا ترسله عبر البريد الإلكتروني أبدًا، ولا ترفعه في أي مكان عام، واحتفظ به على خادمك فقط.
CSR — طلب التوقيع
يُنشَأ ملف CSR (طلب توقيع الشهادة) عند طلب إصدار شهادة من سلطة CA. يحمل تفاصيل نطاقك ومؤسستك ويبدأ بـ -----BEGIN CERTIFICATE REQUEST-----. الفرق الجوهري: ملف CSR لا يحتوي على المفتاح الخاص — بل يحمل مفتاحك العام وبيانات الطلب فقط. وبمجرد إصدار الشهادة لن تحتاج إلى ملف CSR بعد ذلك.
حزمة CA — السلسلة الوسيطة
تتيح حزمة CA (سلسلة الشهادات الوسيطة) للمتصفحات التحقق من أن شهادتك تعود فعلًا إلى سلطة جذرية موثوقة. تحتوي على الشهادات "الوسيطة" الواقعة بين شهادتك والشهادة الجذرية. إذا كانت مفقودة، ستُظهر بعض المتصفحات تحذير "الشهادة غير موثوقة".
fullchain — الشهادة والسلسلة مدمجتان
ملف fullchain هو ببساطة شهادتك (CRT) وحزمة CA مدمجتان في ملف واحد. تطلب خوادم مثل Nginx السلسلة كملف واحد مدمج بدلًا من أجزاء منفصلة، مما يجعل fullchain عمليًا.
PFX / P12 — الحزمة التي يفضّلها Windows
على عكس التنسيقات النصية أعلاه، فإن PFX (أو .p12) هو حزمة ثنائية محمية بكلمة مرور. تجمع الشهادة والمفتاح الخاص والسلسلة في ملف واحد مشفّر. يستخدم عالم Windows وIIS هذا التنسيق بدلًا من PEM، وسيُطلب منك كلمة مرور عند استيراده.
تحويل الصيغ باستخدام openssl
يمكن تحويل ملفات PEM إلى ملف PFX لنظام Windows (أو العكس) بأمر واحد فقط:
# PEM (crt + key + السلسلة) -> PFX
openssl pkcs12 -export -out certificate.pfx \
-inkey private.key -in certificate.crt -certfile ca_bundle.crt
# PFX -> PEM (الشهادة + المفتاح)
openssl pkcs12 -in certificate.pfx -out certificate.pem -nodes
أي خادم يطلب أي ملف؟
- Apache: يطلب ملف crt في
SSLCertificateFileوملف key فيSSLCertificateKeyFileوحزمة ca_bundle فيSSLCertificateChainFile(ثلاثة ملفات منفصلة). - Nginx: يطلب ملف fullchain (الشهادة + السلسلة مدمجتان) في
ssl_certificateوملف key فيssl_certificate_key(ملفان). - IIS / Windows: يطلب ملف pfx واحدًا يحتوي على الشهادة والمفتاح والسلسلة.
- cPanel / Plesk: يطلب عادةً لصق ملفات crt وkey وca_bundle في حقول منفصلة.
الخلاصة
باختصار: CRT هو شهادتك، وKEY مفتاحك الخاص، وحزمة CA السلسلة الوسيطة، وfullchain دمجٌ لهما، وPFX الحزمة المشفّرة لنظام Windows، أما CSR فهو مجرد طلب لا يُثبَّت على الخادم أبدًا. والخبر السار: عند إنشاء شهادة عبر معالج SSL المجاني لدينا، تصلك ملفات crt وkey وca_bundle وfullchain وpfx جميعها معًا في ملف ZIP واحد، دون أي تحويل يدوي. اختر ما يطلبه خادمك وضعه في مكانه. وللحصول على شهادتك المجانية الصالحة 90 يومًا دون تسجيل، توجّه الآن إلى معالج SSL المجاني لدينا.