Saya ingin membuat sertifikat yang ditandatangani sendiri untuk situs web. Sertifikat lama berakhir beberapa hari yang lalu. Ada lebih dari satu NameVirtualHosts yang dihosting di sistem. Perintah yang saya gunakan untuk membuat sertifikat diambil dari satu situs web tutorial dan adalah:
openssl genrsa -des3 -out server.key 1024
openssl req -new -key server.key -out server.csr
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Setelah ini dalam file ssl.conf saya tentukan di bagian VirtualHost bersama dengan pengaturan lama yang dilakukan oleh admin lain
SSLEngine on
SSLCertificateFile <full_path>/server.crt
SSLCertificateKeyFile <full_path>/server.key
Saat memulai server saya mendapatkan pesan berikut dalam file log dan server gagal memulai.
Dalam pesan file error_log adalah
[Mon Jun 01 23:52:46 2009] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
Dalam file file ssl_error_log adalah
[Mon Jun 01 23:52:46 2009] [error] Init: Private key not found
[Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218710120 error:0D094068:asn1 encoding routines:d2i_ASN1_SET:bad tag
[Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218529960 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218595386 error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error
[Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218734605 error:0D09A00D:asn1 encoding routines:d2i_PrivateKey:ASN1 lib
Saya akan sangat menghargai jika ada yang bisa menjelaskan cara mengatasi ini. Saya telah mencoba beberapa situs web tutorial lainnya tentang sertifikat SSL yang ditandatangani sendiri tetapi tidak ada langkah-langkah yang mereka sebutkan yang berfungsi.
sumber
-nodes
opsi mengenkripsi kunci menggunakan Triple-DES. (Frasa sandi kunci tentu saja harus disediakan setiap kali server dimulai.)req
Perintah OpenSSL tidak mendukung menghasilkan kunci yang dienkripsi lebih kuat, tetapi dapat menggunakan kunci yang dienkripsi kuat yang dihasilkan sebelumnya.Ini mungkin terlihat agak sepele, tetapi periksa izin pada file .key Anda
sumber
Anda dapat menggunakan
openssl req -newkey rsa:1024 -keyout privkey.pem
untuk menyimpan kunci SSL seperti yang dihasilkan, jika generasi kunci tidak tepat.sumber