Di lingkungan Apache lokal saya, saya memiliki situs yang memerlukan SSL untuk pengembangan, jadi saya telah menggunakan sertifikat yang ditandatangani sendiri. Situs lokal telah bekerja dengan baik di Firefox dan Chrome sampai sekarang, tetapi setelah memperbarui Firefox ke versi 59 hari ini saya tidak bisa mendapatkannya untuk menerima pengecualian keamanan (di Chrome sertifikat yang ditandatangani sendiri terus berfungsi).
Firefox memberi saya informasi tambahan ini di halaman yang diblokir:
... menggunakan sertifikat keamanan yang tidak valid. Sertifikat tidak dipercaya karena ditandatangani sendiri. Kode kesalahan: SEC_ERROR_UNKNOWN_ISSUER
Tidak ada opsi untuk mengizinkan pengecualian di sini seperti dulu, tetapi saya pergi ke Preferensi Firefox di bawah Sertifikat, lalu di tab "Server" saya telah menambahkan pengecualian untuk domain lokal. Sertifikat kemudian terdaftar dalam nama server lokal yang benar, perincian menunjukkan pengaturan sertifikat saya dari Dikeluarkan oleh dan Dikeluarkan untuk menjadi sama, dengan rentang waktu yang valid.
Adakah yang mengalami masalah serupa dengan FF 59 atau mungkin memiliki petunjuk apa yang harus dilakukan untuk membuat sertifikat yang ditandatangani sendiri berfungsi kembali secara lokal?
Sunting: Saya tidak melihat penyebutan ini di catatan rilis FF 59 tetapi ada sesuatu dalam versi baru yang menyebabkan semua host virtual lokal saya di domain * .dev mencoba untuk secara otomatis membuat koneksi https (artinya, semua http permintaan * .dev dikirim secara otomatis ke URL https). Mungkin sesuatu tentang perilaku ini juga yang menyebabkan masalah ini untuk host virtual https saya yang sebenarnya.
sumber
Jawaban:
Saya masih belum sepenuhnya jelas tentang bagaimana semua ini cocok secara tepat, tetapi seperti yang ditunjukkan dalam
.dev
domain jawaban ini sekarang TLD resmi. Dengan demikian, tampaknya browser memaksa semacam perilaku HSTS dan memaksa koneksi https. Untuk TLD itu tampaknya sertifikat yang saya tandatangani sendiri tidak lagi diterima di Firefox. Mengubah host virtual saya untuk digunakan.test
menyelesaikan masalah tanpa harus mengubah apa pun di sertifikat yang saya tandatangani sendiri.Perlu dicatat bahwa di Firefox juga host virtual non-SSL saya bertindak sejak versi 59 hari ini, karena perilaku HSTS tampaknya memaksa SSL pada host virtual yang belum saya setel sebagai melayani melalui SSL. Di Chrome ini masih berfungsi, tetapi bagaimanapun aman untuk mengatakan menjauh dari
.dev
TLD yang sekarang digunakan secara resmi akan menyelesaikan banyak sakit kepala.sumber
.dev
TLD yang valid sejak beberapa waktu jadi JANGAN menggunakannya untuk menyebutkan sumber daya internal Anda. Sama untuk nama lain: jangan gunakan nama yang menurut Anda tidak akan digunakan orang lain. Baik gunakan nama uji yang dirujuk dalam RFC2606 atau cukup daftarkan nama domain sejati di mana saja dan gunakan subdomain sepertiint.example.com
ataudev.example.com
untuk mengakhiri semua nama internal Anda. Maka Anda tidak akan pernah mengalami tabrakan atau masalah (selama Anda ingat untuk memperbarui nama domain setiap tahun!).dev
domain. Kecuali Anda tahu itu TLD, tidak ada kemungkinan Anda akan menyimpulkan bahwa inilah masalahnya.Ada cara mudah untuk mengatasi hal ini.
about:config
false
.PERINGATAN: Ini akan sepenuhnya menonaktifkan HSTS . Lihatlah komentar pada jawaban ini untuk beberapa diskusi tentang kelemahan metode ini. Saya pribadi berpikir manfaatnya lebih besar daripada risikonya, tetapi Anda bertanggung jawab atas keamanan Anda sendiri.
sumber
.dev
Proyek kami saat ini pada akhirnya akan dipindahkan ke sufiks TLD lain, tetapi untuk saat ini ini membantu tidak menghentikan pengembangan lokal.Pengaturan
security.enterprise_roots.enabled
untuktrue
diabout:config
halaman dipecahkan ini untuk saya dan membiarkan saya sertifikat yang ditandatangani sendiri bekerja selama pengembangan.Ada sedikit diskusi tentang manfaat ini diaktifkan secara default di sini:
Set security.enterprise_roots.enabled menjadi true secara default .
Meskipun maksud dari bendera ini adalah untuk memungkinkan Firefox menggunakan root store CA yang luas di mesin sebagai sumber yang valid untuk otoritas sertifikat, ini memperbaiki situasi untuk kasus penggunaan saya sendiri di mana saya memiliki sertifikat multi-domain yang ditandatangani sendiri yang saya gunakan secara lokal untuk pengujian (subjectAltName) . Bahkan setelah saya menambahkan sertifikat ke daftar sertifikat Firefox, tidak sampai saya mengaktifkannya sehingga memungkinkan situs lokal untuk memuat.
sumber
Punya masalah yang sama pada Browser Web basilisk . Saya mencoba mengubah pengaturan Proksi Jaringan, atau untuk memodifikasi tanda "network.stricttransportsecurity.preloadlist" atau "security.enterprise_roots.enabled" ... tetapi tidak menyelesaikan tombol yang hilang untuk menambahkan sertifikat untuk situs web yang diblokir. Hanya ini yang berhasil melalui:
about:support
.Open Directory
profil Browser Anda.sumber
Saya memilih "Let's Encrypt"
Hanya berlaku selama 3 bulan pada suatu waktu, tetapi penyegaran bisa otomatis.
Seperti yang bisa Anda lihat dalam sambutannya, ada tangkapan. Domain pengembangan dan pengujian kami disebut dev-www.example.com dan test-www.example.com. Kami menggunakan sertifikat wildcard dari produksi.
sumber