ستوضح هذه الكيفية كيفية تثبيت SSL /TLS شهادة على macOS 10.14 Mojave. يتم تقديم سيناريوهين:
- تثبيت SSL /TLS شهادة للاستخدام على مستوى النظام في Keychain Access
- تثبيت SSL /TLS شهادة للاستخدام مع خادم Apache مضمن مع macOS
بناءً على موقفك ، قد ترغب في القيام بأحد هذين الأمرين أو كليهما ؛ على سبيل المثال ، إذا كنت تقوم بإعداد بيئة تطوير محلية وتريد الشهادة متاحة لكل من Apache وبرامج العميل مثل متصفحات الويب ، فستفعل الأمرين. في كلتا الحالتين سنبدأ بافتراض أنك أنشأت طلب توقيع الشهادة (CSR) في Keychain Access ، كما هو موضح في موقعنا كيف ل. في هذه الحالة ، سيتم تثبيت مفتاحك الخاص بالفعل في Keychain Access. سنفترض أيضًا أن عملية التحقق قد اكتملت وأن شهادتك جاهزة للتنزيل. للحصول على معلومات حول طلب الشهادات واستردادها ، يرجى الاطلاع على دليلنا ، طلب واسترجاع SSL /TLS الشهادات.
الخطوات الأولى
-
قم بتنزيل حزمة الشهادة من حساب المستخدم الخاص بك باستخدام ملف أباتشي رابط التحميل.
-
قم بفك ضغط الملف. يجب أن يحتوي على شهادتك (سيعتمد اسم الملف على الاسم الشائع في ملف CSR وتنتهي مع
.crt
) وحزمة CA (ca-bundle-client.crt
).
تثبيت الشهادة في Keychain Access
-
ساعات العمل الوصول إلى سلسلة المفاتيح، يقع في / التطبيقات / المرافق.
-
حدد سلسلة المفاتيح حيث تم تثبيت زوج المفاتيح الخاص بك. في هذه الحالة يكون System سلسلة مفاتيح.
-
انتقل إلى ملف> استيراد العناصر ...
-
انتقل إلى شهادتك الجديدة ، وحددها ، وانقر فوق ساعات العمل.
-
أدخل كلمة المرور الخاصة بك وانقر فوق تعديل Keychain.
- كرر الخطوات من 3-5 أعلاه باستخدام
ca-bundle-client.crt
لتثبيت سلسلة الشهادة المتوسطة. -
يمكنك التأكد من تثبيت الشهادات عن طريق تحديد الشهادات من قائمة الشريط الجانبي الأيسر.
قم بتثبيت شهادة Apache
-
إذا كنت ولدت الخاص بك CSR في Keychain Access، ستحتاج إلى تصدير مفتاحك الخاص كملف لاستخدامه مع Apache. افتح الوصول إلى سلسلة المفاتيح، يقع في / التطبيقات / المرافق. (اذا أنت ولدت CSR مع OpenSSL أو مع SSL.com CSR مدير مبيعات يمكنك التخطي إلى الخطوة 9 أدناه.)
-
باستخدام قائمة الشريط الجانبي الأيسر لتضييق نطاق اختياراتك ، ابحث عن المفتاح الخاص الذي ترغب في تصديره وحدده. في هذه الحالة سنقوم بتصدير المفتاح الخاص لـ
www.lunchinhouston.com
، تقع فيSystem
سلسلة مفاتيح. -
اختار ملف> تصدير العناصر ... من القائمة.
-
تأكد من أن تنسيق الملف المحدد هو تبادل المعلومات الشخصية (.p12) واحفظ الملف في مكان حيث يمكنك العثور عليه.
-
أدخل كلمة المرور الخاصة بك لإلغاء تأمين keychain (إذا طُلب منك ذلك) ، ثم أنشئ كلمة مرور لملف .p12 وانقر فوق OK.
-
ساعات العمل
Terminal.app
، تقع في/Applications/Utilities/
المجلد ، وانتقل إلى المجلد حيث قمت بتخزين ملف .p12 من الخطوة 5. -
استعمل
openssl
لاستخراج المفتاح الخاص من ملف .p12. (ملحوظة: استبدل أسماء الملفات الموضحة هنا باسم ملف .p12 واسم الملف الذي تريد استخدامه للمفتاح). ستتم مطالبتك أولاً بإدخال كلمة المرور التي أنشأتها في الخطوة 5 ، ثم ستتم مطالبتك بإنشاء كلمة مرور والتحقق منها لحماية المفتاح الخاص.opensl $ pkcs12 -حفظ -في الشهادات. p12 -out privkey.key
-
بعد ذلك ، ستحتاج إلى فك تشفير المفتاح الخاص. أدخل الأمر التالي ، واستبدل أسماء ملفات الإدخال والإخراج بالشكل المطلوب (باستخدام نفس الاسم كما هو موضح أدناه ، سيتم استبدال الملف المشفر). سيُطلب منك إدخال كلمة المرور التي أنشأتها في الخطوة 7.
opensl rsa -in privkey.key -out privkey.key
- ضع المفتاح الخاص والشهادة وملفات الحزمة الوسيطة في دليل آمن حيث يمكن لأباتشي قراءتها. لهذا كيف سنستخدم
/private/etc/apache2/
. اعتمادًا على الموقع الذي اخترته ، قد تحتاج إلى استخدامهsudo
لنقل الملفات. -
افتح ملف تكوين Apache الرئيسي ،
httpd.conf
، في محرر نص. عند تثبيت Mojave القياسي Apache ، يقع هذا الملف في/private/etc/apache2/
الدليل. لفتح الملف للتحرير باستخدامnano
، قم بتنفيذ الأمر التالي:sudo nano $ /private/etc/apache2/httpd.conf
ملحوظة: لأنك تستخدمsudo
لفرض امتيازات كافية مؤقتًا لتحرير هذا الملف ، سيُطلب منك إدخال كلمة المرور الخاصة بك قبل المتابعة. -
ابحث عن هذه الخطوط في
httpd.conf
وفكهم عن طريق إزالة#
الحرف في بداية كل سطر:LoadModule socache_shmcb_module libexec / apache2 / mod_socache_shmcb.so ... LoadModule ssl_module libexec / apache2 / mod_ssl.so ... تضمين /private/etc/apache2/extra/httpd-vhosts.conf ... إلخ / تضمين / apache / خاص / إضافي / httpd-ssl.conf
ملحوظة: إذا كنت تستخدمnano
للتعديلhttpd.conf
، يمكنك البحث عن سلاسل نصية معCtrl-W
- حفظ
httpd.conf
والخروج من محرر النصوص (Ctrl-O
، تليهاCtrl-X
innano
). -
بعد ذلك ، افتح
httpd-ssl.conf
للتحرير:sudo nano $ /private/etc/apache2/extra/httpd-ssl.conf $
-
ابحث عن الأسطر التالية وتأكد من أن Apache يستمع على المنفذ
443
. إذا تم تعيين المنفذ إلى8443
أو أي قيمة أخرى ، قم بتغييرها إلى443
.# # عندما نقدم أيضًا SSL ، يتعين علينا الاستماع إلى منفذ HTTP القياسي # (انظر أعلاه) وإلى منفذ HTTPS # استمع 443
- ابحث عن سطر يبدأ بالسلسلة
<VirtualHost _default_:
(قد يختلف رقم المنفذ) والتعليق عليه أو إزالته من جميع الخطوط بين ذلك و</virtualhost>
. - حفظ
httpd-ssl.conf
والخروج من محرر النصوص. -
بعد ذلك ، افتح
httpd-vhosts.conf
للتحرير:sudo nano /private/etc/apache2/extra/httpd-vhosts.conf $
-
قم بإنشاء إدخال VirtualHost للموقع الذي ترغب في حمايته (استخدم القيم الفعلية لموقع الويب والخادم الخاص بك بدلاً من العناصر النائبة الموضحة هنا) ، ثم احفظ الملف واخرج من محرر النصوص.
DocumentRoot "/PATH/TO/WEBSITE" اسم الخادم SERVERNAME SSLEngine على SSLCertificateFile "https://ee443cc2f1.rocketcdn.me/private/etc/apache8/server.crt" SSLCertificateKeyFile "https://ee2cc2f1.rocketcdn.me/private/etc /Apache8/server.key" SSLertificateChainFile "https://ee2cc2f1.rocketcdn.me/private/etc/apache8/ca-bundle-client.crt"
-
تحقق من تكوين Apache باستخدام الأمر التالي:
sudo apachectl configtest
-
إذا كان كل شيء على ما يرام ، فأعد تشغيل Apache:
إعادة تشغيل $ sudo apachectl
-
إذا سارت الأمور بشكل صحيح ، فقد انتهيت! يجب أن تكون قادرًا على الانتقال إلى موقع HTTPS على الويب في متصفح الويب.