Saya mencoba menginstal sertifikat SSL GoDaddy pada penyeimbang beban baru yang saya siapkan di Amazon AWS. Saya awalnya membuat sertifikat di GoDaddy menggunakan program keytool untuk instalasi langsung di server Glassfish 3.1 (Amazon linux ami). Saya tidak mengalami masalah untuk mendapatkan penyiapan itu langsung di server. Sekarang saya perlu memindahkan sertifikat dari server web ke penyeimbang beban baru. Amazon memerlukan kunci pribadi dan sertifikat dalam format PEM, jadi saya menggunakan alat "rekey" di GoDaddy untuk membuat sertifikat baru. Saat saya memuatnya di layar penyetelan penyeimbang beban di AWS Mgmt Console, saya mendapatkan pesan kesalahan: "Sertifikat Kunci Publik dan Kunci Pribadi tidak cocok."
Inilah cara saya membuat kunci:
$ openssl genrsa -des3 -out private.key 2048
$ openssl req -new -key private.key -out apps.mydomain.com.csr
Saya kemudian mengirimkan file .csr ke GoDaddy selama proses "rekey". Setelah rekey selesai, saya mengunduh 2 sertifikat yang baru dibuat (apps.mydomain.com.crt & gd_bundle.crt). Saya mendownloadnya dengan memilih (Apache) sebagai jenis server (saya juga sudah mencoba "lainnya" dan "Cpanel" tetapi semuanya terlihat sama).
Pada titik ini, saya menghapus enkripsi dari file private.key dengan menggunakan perintah berikut:
$ openssl rsa -in private.key -out private.pem
Pada titik ini, saya kembali ke konsol AWS Mgmt, membuat penyeimbang beban, menambahkan pengalihan server aman dan meletakkan konten file berikut di bidang masing-masing di layar tempat ia meminta untuk menyiapkan sertifikat ssl:
private.pem --> Private Key
apps.mydomain.com.crt --> Public Key Certificate
gd_bundle.crt --> Certificate Chain
Ketika saya mengklik "tombol lanjutkan" saya mendapatkan pesan kesalahan "Kesalahan: Sertifikat Kunci Publik dan Kunci Pribadi tidak cocok."
-Apakah ada cara untuk menguji bahwa saya mendapatkan pesan kesalahan yang valid dari Amazon? Tampaknya aneh bagi saya bahwa kunci tidak akan cocok ketika saya mengikuti instruksi GoDaddy dengan cukup cermat.
Saya sudah mencoba membuat file private.key tanpa enkripsi RSA sebelum membuat .csr dan sepertinya tidak ada bedanya.
Saya juga berasumsi bahwa file .crt yang saya unduh dari GoDaddy dalam format .PEM, tetapi saya tidak yakin bagaimana cara memverifikasi ini.
Ada ide?
Jawaban:
Bagi saya, itu adalah dua langkah yang mudah:
Ubah kunci pribadi ke PEM:
openssl rsa -in yourdomain.key -outform PEM
Ubah sertifikat dan bundel sertifikat ke PEM :
openssl x509 -inform PEM -in yourdomain.crt
openssl x509 -inform PEM -in bundle.crt
sumber
WARNING: can't open config file: /etc/pki/tls/openssl.cnf
-config
opsi. Gunakan untuk menentukan jalur ke file konfigurasi yang Anda gunakan.Hanya sebagai catatan dan siapa saja yang mencoba mencari tahu:
yourdomain.key -> perintah terminal:
sudo openssl rsa -in yourdomain.key -outform PEM -out yourdomain.pem
-> kunci pribadiyourdomain.crt -> kunci publik
gd_bundle.crt -> rantai sertifikat
dan Anda siap berangkat :)
sumber
Sepertinya masalahnya adalah cara saya menyalin konten kunci dan sertifikat ke konsol Manajemen AWS. Saya menggunakan desktop Ubuntu yang berjalan di Virtual Box pada desktop Windows 7; salin dan tempel nilai dari layar gedit ke browser yang berjalan di kotak Windows. Setelah saya membuka file kunci dan sertifikat pada kotak yang sama dengan browser web (Windows dalam hal ini) sertifikat berjalan dengan baik. Saya menduga beberapa bagian file tidak selesai dengan benar saat menggunakan papan klip bersama antara klien dan host Kotak Virtual. Kasus ditutup.
sumber
Kami menemukan solusi alternatif untuk masalah ini. Kami mengalami gejala yang sama dengan kesalahan yang sama.
Kemudian kami mencoba memasukkan kembali kode pem sekali lagi, tetapi kali ini kami memastikan untuk menekan enter satu kali dan memastikan kursor berada pada baris kosong di akhir setiap jendela. Lalu kami menyimpannya. BERHASIL.
Ini memecahkan masalah kami, jadi mungkin menyelesaikannya untuk orang lain.
sumber
Satu gotcha kecil. Saya menggunakan kotak Windows (Win 7 Pro) dan ketika saya menggunakan port windows OpenSSL, file yang dikeluarkan memiliki karakter akhir baris (LF) gaya Unix.
Saya harus mengonversi file ke gaya Windows (CRLF) untuk mengunggah kunci pribadi.
sumber
Saya dapat menyarankan Anda dengan solusi alternatif dan informasi untuk Anda sekalian. Umumnya semua sertifikat dalam format file PEM. Anda cukup membuka notepad atau editor teks apa pun dan menyeret file yang Anda terima dalam format file .crt. Yang biasanya disebut sebagai file .PEM. Jika sertifikat dimuat di keytool Anda, Anda dapat mengekspor sertifikat sebagai file pfx dari keytool. Kemudian Anda dapat memisahkan file pfx dari kunci pribadi dari file pfx. Karena file pfx adalah kombinasi dari sertifikat Anda dan kunci privat. Jadi Anda bisa mendapatkan file kunci privat secara terpisah dan menggunakannya di amazon aws Anda.
Saya curiga mungkin ada cara lain untuk memasang sertifikat. Mungkin Anda dapat menghubungi otoritas sertifikat dan adakah cara agar sertifikat Anda diterbitkan ulang.
sumber