أساسيات سطر أوامر OpenSSL
أتقنوا أوامر OpenSSL الأساسية لتوليد المفاتيح والتشفير والتجزئة وفحص الشهادات.
أساسيات سطر أوامر OpenSSL درس مجاني في Cryptology Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cryptology Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cryptology Academy 4 دروس في المجموع.
معلومات إصدار OpenSSL وبنيته
يعرض الأمر "openssl version -a" إصدار OpenSSL وتاريخ البناء والمصرّف والخيارات المُعدّة. ويُعد التحقق من الإصدار مهمًا لأن الإمكانات والتكوينات الافتراضية التشفيرية تختلف اختلافًا كبيرًا بين OpenSSL 1.0.x و1.1.x و3.x. وتُعطّل خوارزميات قديمة كثيرة افتراضيًا في الإصدارات الأحدث لأسباب أمنية.
إنشاء مفاتيح RSA
ينشئ الأمر "openssl genrsa -out private.pem 4096" مفتاح RSA خاصًا بطول 4096 بت بتنسيق PEM. وللاستخدام في بيئة الإنتاج، يُعد 2048 بت الحد الأدنى، ويوفر 3072 بت أمانًا يقارب 128 بت، بينما يوفر 4096 بت هامشًا إضافيًا. ويمكن تشفير المفاتيح باستخدام AES أثناء تخزينها بإضافة "-aes256" إلى الأمر، مما يطلب عبارة مرور.
إنشاء مفاتيح EC
تُنشأ مفاتيح المنحنيات الإهليلجية في خطوتين. أولًا: ينشئ الأمر "openssl ecparam -name prime256v1 -genkey -noout -out ec_private.pem" مفتاح EC خاصًا باستخدام المنحنى P-256. والبديل هو استخدام الأمر "openssl genpkey -algorithm EC -pkeyopt ec_paramgen_curve:P-384 -out ec_private.pem" عبر الواجهة الأحدث genpkey، وهي المفضلة في الشيفرة الجديدة.
عرض تفاصيل المفاتيح
يمكن فحص محتويات المفاتيح باستخدام "openssl rsa -text -noout -in private.pem" لمفاتيح RSA، حيث يعرض المعامل والأسّ العام والعوامل الأولية. أما بالنسبة إلى مفاتيح EC، فيعرض الأمر "openssl ec -text -noout -in ec_private.pem" اسم المنحنى وقيمة المفتاح. ويمنع الخيار "-noout" إخراج المحتوى المشفّر بتنسيق PEM.
إنشاء بيانات عشوائية
يمكن لـ OpenSSL إنشاء وحدات بايت عشوائية آمنة تشفيريًا: يُخرج الأمر "openssl rand -hex 32" عددًا قدره 32 وحدة بايت عشوائية بصيغة سداسية عشرية، أي 64 محرفًا سداسيًا عشريًا، وهي مناسبة لإنشاء المفاتيح المتماثلة أو قيم nonce. ويُخرج الأمر "openssl rand -base64 32" وحدات البايت العشوائية بترميز base64. ويستخدم ذلك مصدر الإنتروبيا في نظام التشغيل (/dev/urandom على أنظمة Unix).
حساب قيم التجزئة
يحسب الأمر "openssl dgst" ملخصات الرسائل: يحسب الأمر "openssl dgst -sha256 file.txt" قيمة تجزئة SHA-256 لملف. ويحسب الأمر "openssl dgst -sha256 -hmac key file.txt" قيمة HMAC-SHA256. أما الأمر "openssl dgst -sha256 -sign private.pem -out sig.bin file.txt" فينشئ توقيعًا رقميًا للملف.
تشفير الملفات
يُستخدم الأمر "openssl enc -aes-256-cbc -pbkdf2 -in plaintext.txt -out encrypted.bin" لتشفير الملفات باستخدام التشفير المتماثل. تستخدم الراية "-pbkdf2" خوارزمية PBKDF2 لاشتقاق المفتاح من عبارة المرور، لتحل محل EVP_BytesToKey التي لم تعد موصى بها. لفك التشفير، استخدم الأمر "openssl enc -d -aes-256-cbc -pbkdf2 -in encrypted.bin -out decrypted.txt". وتُفضَّل أنماط AEAD مثل AES-256-GCM عند كتابة تعليمات برمجية جديدة.
تحويل تنسيقات PEM وDER
توجد الشهادات والمفاتيح بتنسيقَي ترميز. يستخدم PEM ترميز Base64 مع سطرَي الترويسة والتذييل (-----BEGIN CERTIFICATE-----)، وتستخدمه معظم أدوات Unix. أما DER فهو ترميز ثنائي، وتستخدمه Java وWindows. لتحويل PEM إلى DER، استخدم الأمر "openssl x509 -inform PEM -outform DER -in cert.pem -out cert.der". ولتحويل DER إلى PEM، اعكس الرايتين -inform/-outform.
التحقق من التوقيعات
للتحقق من توقيع رقمي، استخدم الأمر "openssl dgst -sha256 -verify public.pem -signature sig.bin file.txt". يجب أولًا استخراج المفتاح العام باستخدام الأمر "openssl rsa -pubout -in private.pem -out public.pem". وللتحقق المستند إلى شهادة، يفحص الأمر "openssl verify -CAfile ca.pem cert.pem" الشهادة مقابل سلسلة CA المحددة.
التحقق من تفاصيل الشهادة
يُعد فحص الشهادات من أكثر مهام OpenSSL شيوعًا: يعرض الأمر "openssl x509 -text -noout -in cert.pem" جميع حقول الشهادة، بما في ذلك subject وissuer وتواريخ الصلاحية وSANs والامتدادات. ويعرض الأمر "openssl x509 -enddate -noout -in cert.pem" تاريخ انتهاء الصلاحية فقط، وهو مفيد في نصوص المراقبة.
الاتصال بخوادم TLS
ينشئ الأمر "openssl s_client -connect example.com:443 -servername example.com" اتصال TLS ويعرض سلسلة شهادات الخادم وإصدار TLS المتفاوض عليه ومجموعة التشفير. تؤدي إضافة "-showcerts" إلى عرض جميع الشهادات في السلسلة. وهذا مفيد للغاية لتصحيح مشكلات سلسلة الشهادات ومشكلات إصدار TLS وإرفاق OCSP.
اختبار OpenSSL genrsa
ماذا يفعل الأمر "openssl genrsa -aes256 -out private.pem 2048"؟
مراجعة الدرس: أساسيات OpenSSL CLI
يوفر OpenSSL أوامر لإنشاء المفاتيح (genrsa وgenpkey)، وتحويل التنسيقات (PEM/DER)، وإنشاء البيانات العشوائية (rand)، وحساب قيم التجزئة والتوقيع (dgst)، وتشفير الملفات (enc)، وفحص الشهادات (x509 -text)، والتحقق من السلاسل (verify)، وتصحيح أخطاء TLS (s_client). وتغطي هذه الأوامر الغالبية العظمى من مهام الشهادات والتشفير اليومية.
تعلم Cryptology Academy مع معلم ذكاء اصطناعي — مجانًا
اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.
- الدورات
- 67
- الدروس
- 261
الأسئلة الشائعة
هل درس «أساسيات سطر أوامر OpenSSL» مجاني؟
نعم — نص درس «أساسيات سطر أوامر OpenSSL» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cryptology Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Cryptology Academy 4 دروس في المجموع.
ماذا ستتعلم في «أساسيات سطر أوامر OpenSSL»؟
أتقنوا أوامر OpenSSL الأساسية لتوليد المفاتيح والتشفير والتجزئة وفحص الشهادات. تتمرن على Cryptology Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Cryptology Academy؟
لا تُشترط خبرة سابقة. Cryptology Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «أساسيات سطر أوامر OpenSSL»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Cryptology Academy هذا؟
نعم. كل درس في Cryptology Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- أساسيات سطر أوامر OpenSSL
- إنشاء سلاسل الشهادات وإدارتها
- OCSP Stapling وCertificate Transparency
- أتمتة Let's Encrypt وبروتوكول ACME