Sertifikat SSL yang ditandatangani sendiri di Chrome 58

Sejak Let's Encrypt , situs web terenkripsi telah menjadi praktik standar. Sertifikat SSL juga hampir tak tergantikan dalam pengembangan lokal (misalnya, navigator.geolocation memerlukan enkripsi SSL secara lokal). Sejak Chrome versi 58, dukungan untuk CN (Common Name) telah dihentikan, dan SAN (Subject Alternative Name) kini wajib. Akibatnya, Chrome tidak lagi menerima sertifikat SSL apa pun yang dibuat menggunakan metode tradisional .


Sertifikat SSL yang ditandatangani sendiri di Chrome 58

Meskipun Anda dapat menggunakan alat daring seperti ZeroSSL untuk membuat sertifikat, atau mengkonfigurasi Chrome agar berfungsi tanpa sertifikat yang valid dengan menggunakan parameter startup seperti `--ignore-certificate-errors` atau flag `chrome://flags/#allow-insecure-localhost`, kami ingin membuat sertifikat yang ditandatangani sendiri secara lokal menggunakan OpenSSL yang menyertakan SAN dan sepenuhnya diterima oleh Chrome. Satu baris perintah ini melakukan semua yang diperlukan (hanya `www.tld.local` yang perlu diganti dengan domain yang diinginkan).:

61b7be9883ad31712c52a59252a4c9c4

Karena OpenSSL sayangnya tidak memiliki argumen langsung untuk menentukan SAN, file konfigurasi pertama kali dibuat, OpenSSL dipanggil dengannya dan file tersebut kemudian dihapus. Pengguna Windows dapat dengan mudah menjalankan perintah ini baik dengan bantuan Cygwin (dan bash -c "...") atau dengan WSL baru. Dua file yang dihasilkan www.tld.local.key dan www.tld.local.cert kemudian dapat dipilih di MAMP, misalnya:

Sertifikat SSL yang ditandatangani sendiri di Chrome 58

Pengguna Windows kemudian memuat di bawah "Kelola sertifikat pengguna" (certmgr) di "Otoritas sertifikasi akar tepercaya":

Sertifikat SSL yang ditandatangani sendiri di Chrome 58

Terakhir, mulai ulang Chrome (chrome: // restart) dan nikmati kunci hijau:

Sertifikat SSL yang ditandatangani sendiri di Chrome 58

Kembali