Menggunakan satu sertifikat SSL yang ditandatangani sendiri untuk domain lokal

0

Apakah mungkin untuk menggunakan sertifikat yang ditandatangani sendiri untuk semua domain lokal, seperti: blog1.test, shop1.test, shop2.test, jadi saya tidak perlu menambahkan semua sertifikat ini ke Keychain (MacOS) saya, sebagai gantinya saya ingin menambahkan hanya satu sertifikat yang ditandatangani sendiri secara generik?

Inilah konfigurasi /etc/ssl/openssl.cnf saya:

[ san ]
subjectAltName                  = @alt_names

[ alt_names ]
DNS.1                           = localhost
DNS.2                           = domain.test

Saya membuat sertifikat yang ditandatangani sendiri dengan cara ini:

sudo openssl req -extensions san -config /etc/ssl/openssl.cnf -x509 -nodes -newkey rsa:4096 -keyout /private/etc/apache2/server.key -out /private/etc/apache2/server.crt -days 3650 -subj "/C=KZ/ST=Almaty/L=Almaty/O=Companyname/CN=localhost"

Tetapi bahkan jika saya menambah SAN lebih banyak catatan DNS, itu tidak akan berfungsi pada domain yang berbeda dari "localhost". Apakah ini mungkin?

Alexander Kim
sumber
Saya tidak mengerti mengapa itu tidak berhasil. Namun, menggunakan wildcard mungkin lebih mudah. Jangan sampai Anda harus menggunakan TLD sewenang-wenang di jaringan lokal Anda.
Daniel B
Kenapa bisa berhasil? Saya pikir Nama Umum sangat penting selama pembuatan sertifikat, bukan?
Alexander Kim
@DanielB, baru diuji lagi, ini memang berfungsi. Saya hanya perlu mengedit openssl.cnf setiap kali saya ingin menambahkan lebih banyak domain, kemudian membuat ulang sertifikat dan menambahkan kembali ke gantungan kunci saya.
Alexander Kim
1
Ini akan sedikit lebih bekerja untuk pengaturan awal, tetapi dalam jangka panjang mungkin akan lebih mudah dalam jangka panjang untuk membuat CA root Anda sendiri, tandai bahwa sebagai tepercaya, lalu tandatangani sertifikat SSL individu dengan itu.
Gordon Davisson
1
Anda membangun CA dan menginstal sertifikat CA itu di gantungan kunci Anda sebagai jangkar kepercayaan. Setiap sertifikat yang dikeluarkan oleh CA itu kemudian secara otomatis dipercaya oleh browser / komputer Anda. Setiap kali Anda membuka layanan baru (mis. Blog1.test atau shop1.test), Anda memiliki CA mengeluarkan sertifikat untuk layanan itu. Sertifikat layanan itu akan dipercaya karena sertifikat CA sudah ada di dalam keystore Anda dan tepercaya. Mungkin Anda perlu ke 'Otoritas Sertifikasi' Google - ini adalah subjek yang kompleks jika Anda melakukannya dengan benar (untuk produksi), tetapi untuk lingkungan pengujian, ini cukup mudah dilakukan.
garethTheRed