مكيرت: أداة لإنشاء شهادات SSL للتنمية المحلية

تمكين- SSL-HTTPS

حاليا يعد استخدام شهادات SSL على مواقع الويب في غاية الأهميةنظرًا لأن هذه توفر للمستخدم مستوى من الأمان والثقة بشأن الموقع الذي يستخدمه ، بالإضافة إلى حقيقة أنه لعدة أيام ، قام Chrome بالفعل بتمييز المستخدمين وتحذيرهم بشأن المواقع التي لا يستخدمونها.

En في هذه المقالة ، سنستفيد من أداة لتثبيت شهادات SSL محليًا على نظامنا.

Mkcert هي أداة بسيطة يمكن استخدامها لتصنيع شهادات موثوقة محليًا. لا يتطلب أي تكوين. من الخطر أو المستحيل دائمًا استخدام شهادات هيئة إصدار الشهادات الفعلية للمضيف المحلي أو 127.0.0.1. حتى استخدام الشهادات الموقعة لا يزال غير مستحسن لأنها تسبب أخطاء ثقة.

مكيرت يوفر لنا أفضل حل لهذا من خلال إدارة المرجع المصدق الخاص بك. سيؤدي هذا تلقائيًا إلى إنشاء مرجع مصدق محلي وتثبيته في جذر النظام وإنشاء شهادات موثوقة محليًا.

في حالة شهادات SSL لصفحات الويب ، يمكنك الرجوع إلى بعض البدائل المجانية الأخرى ، مثل openSSL.

متطلبات

  • تم تكوين النظام باستخدام Go 1.10+ وامتيازات الجذر.
  • أداة قاعدة بيانات الشهادات (Certutil)

اذهب التثبيت

Go هي لغة برمجة للأغراض العامة يمكننا من خلالها إنشاء مجموعة متنوعة من التطبيقات. Go ومجموعات أدواته متوفرة في مستودعنا الافتراضي. يمكننا تثبيت GO على Ubuntu 18.04 فقط عن طريق تشغيل هذا الأمر.

apt install golang

Y يمكننا التحقق من التثبيت باستخدام:

go version

الآن يمكننا إنشاء ملف في المسار التالي "/Etc/profile.d/goenv.sh" لمتغير البيئة بالكامل كما يلي:

nano /etc/profile.d/goenv.sh

وفي الداخل يجب أن نضع:

export GOROOT=/usr/lib/go

export GOPATH=$HOME/go

export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

الآن نكتب:

source /etc/profile.d/goenv.sh

تركيب اباتشي

الخطوة التالية هي تثبيت خادم الويب الخاص بنا وتمكين SSL لاستخدام شهادات ثقة التطوير هذه محليًا. يمكننا تثبيت اباتشي باستخدام الأمر التالي.

apt install apache2

systemctl enable apache2

ssystemctl start apache2

تركيب سيرتوتيل

أداة Certutil Database Tool هي أداة مساعدة بسيطة لسطر الأوامر يمكنها إنشاء وتعديل الشهادات وقواعد بياناتها.

يمكن استخدامه على وجه التحديد لسرد أو إنشاء أو تعديل أو حذف الشهادات. يمكن استخدامه حتى لإنشاء كلمة المرور أو تغييرها ، وإنشاء أزواج مفاتيح عامة وخاصة جديدة.

لتثبيته ، فقط اكتب الأمر التالي:

apt install libnss3-tools

تركيب مكيرت

مكيرت

لتثبيت هذه الأداة فقط قم بتنزيل الكود من GitHub، لهذا علينا فقط كتابة:

wget https://github.com/FiloSottile/mkcert/archive/v1.0.0.tar.gz

tar -xvzf v1.0.0.tar.gz

cd mkcert-1.0.0/

Y نقوم بتجميع الأداة باستخدام:

جعل [/ sourcecode]

الآن يمكننا نسخ ملف mkcert الثنائي هذا من مجلد التثبيت الخاص بـ / usr / bin / المجلد المطلوب استخدامه على مستوى الخادم.

cd mkcert-1.0.0/bin/

cp mkcert /usr/bin/

أخيرًا ، يمكننا إنشاء شهادتنا المحلية باستخدام هذا الأمر:

mkcert -install

يتم إنشاء هذا وحفظه في المسار /root/.local/share/mkcert

من قبل عادةً ما يتم تخزين شهادة CA ومفتاحها في مجلد بيانات التطبيق في مجلد "المنزل" للمستخدم.

يمكن أيضًا الحصول على الموقع باستخدام الأمر mkcert -CAROOT.

mkcert -CAROOT

/root/.local/share/mkcert

الآن يمكننا استخدام هذه الأداة لإنشاء شهادات ثقة للتطوير المحلي حسب الحاجة:

mkcert example.com '*.example.org' myapp.dev localhost 127.0.0.1 ::1

كما ورد في تشغيل هذا الأمر ، يتم حفظ الشهادات الموثوقة التي تم إنشاؤها محليًا في المسار الذي يتم تشغيل هذا الأمر منه.

من الممكن نقل هذه الشهادات مثلا:

cp /root/example.com+5.pem /etc/ssl/certs /

cp /root/example.com+5-key.pem /etc/ssl/private /

الآن تحتاج إلى تعديل ملف SSL الافتراضي الموجود في /etc/Apache2/sites-available/default-ssl.conf

SSLCertificateFile /etc/ssl/certs/example.com+5.pem

SSLCertificateKeyFile /etc/ssl/private/example.com+5-key.pem

يمكنك الآن تمكين وحدة SSL وإعادة تشغيل خدمة Apache 2 لجعل هذه التغييرات فعالة.

a2enmod ssl

a2ensite default-ssl.conf

systemctl reload apache2

systemctl restart apache2

بمجرد الانتهاء من ذلك ، يمكننا إجراء اختبارات التصفح بشهادة SSL محلية. فقط اكتب https://localhost وسيكونون قادرين على رؤية أن المتصفح يتعرف عليه.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   خوسيه بيدرو قال

    شرح قليلًا ، لا يمكنك تخيل ما كان عليّ تجميعه حتى أتمكن من تثبيته مع المتطلبات الأساسية.
    لم تكن هناك طريقة بشرية لتثبيت اباتشيد لتكوين الباقي.

  2.   ميكيل قال

    عندما تكتب: make [/ sourcecode]

    ما الذي تتحدث عنه؟؟؟ ماذا نضع في / رمز المصدر؟

    آسف للإزعاج.

    التحيات.

  3.   جوليان لاسو قال

    في Ubuntu 20.04 ، يعمل فقط مع Firefox وليس للمتصفحات التي تعتمد على الكروم: '(