شهادات SSL الموقعة ذاتيًا في Chrome 58

منذ Let's Encrypt ، أصبحت مواقع الويب المشفرة قياسية الآن. حتى مع التطوير المحلي ، أصبحت شهادات SSL لا غنى عنها (على سبيل المثال ، يتطلب navigator.geolocation تشفير SSL محليًا). منذ الإصدار 58 من Chrome ، توقف دعم CN (الاسم الشائع) وأصبح SAN (الاسم البديل للموضوع) إلزاميًا. نتيجة لذلك ، لم يعد Chrome يقبل فجأة جميع شهادات SSL التي تم إنشاؤها بشكل تقليدي .


شهادات SSL الموقعة ذاتيًا في Chrome 58

يمكنك استخدام أدوات عبر الإنترنت مثل ZeroSSL لإنشاء شهادات أو استخدام معلمات البدء مثل --ignore-Certificate-errors أو العلم chrome: // flags / # allow-insecure-localhost لجعل Chrome يعمل بدون شهادات صالحة ؛ ومع ذلك ، نريد استخدام OpenSSL لإنشاء شهادات موقعة ذاتيًا محليًا تحتوي على SAN ويتم قبولها بالكامل بواسطة Chrome. يعتني هذا الخط الواحد بكل ما هو ضروري (يجب استبدال www.tld.local بالمجال المطلوب فقط):

61b7be9883ad31712c52a59252a4c9c4

نظرًا لأن OpenSSL للأسف لا يحتوي على وسيطات مباشرة لتحديد SAN ، يتم إنشاء ملف التكوين أولاً ، ويتم استدعاء OpenSSL معه ثم يتم حذف الملف. يمكن لمستخدمي Windows تنفيذ هذا الأمر بسهولة إما بمساعدة Cygwin (و bash -c "...") أو باستخدام WSL الجديد. يمكن بعد ذلك تحديد الملفين الناتجين www.tld.local.key و www.tld.local.cert في MAMP ، على سبيل المثال:

شهادات SSL الموقعة ذاتيًا في Chrome 58

يقوم مستخدمو Windows بالتحميل ضمن "إدارة شهادات المستخدم" (certmgr) في "المراجع المصدقة الجذر الموثوقة":

شهادات SSL الموقعة ذاتيًا في Chrome 58

أخيرًا ، أعد تشغيل Chrome (chrome: // reset) واستمتع بالقفل الأخضر:

شهادات SSL الموقعة ذاتيًا في Chrome 58

عودة