Izinkan saya menjelaskan pertanyaan saya terlebih dahulu. Saya membeli sertifikat dari CA dan menggunakan format berikut untuk menghasilkan csr dan kunci pribadi:
openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr
Ketika saya membuka file server.key, saya melihat bahwa itu dimulai dengan "----- BEGIN PRIVATE KEY -----"
Saya menggunakan sertifikat SSL di server saya dan semuanya terlihat baik-baik saja.
Sekarang saya ingin mengunggah sertifikat yang sama ke AWS IAM sehingga saya dapat menggunakannya untuk load balancer beanstalk. Saya menggunakan perintah berikut dari dokumen aws ini http://docs.aws.amazon.com/IAM/latest/UserGuide/InstallCert.html#SubmitCSRCertAuth
iam-servercertupload -b public_key_certificate_file -k privatekey.pem -s certificate_object_name
Saya mengubah nama file cert sesuai kebutuhan tetapi tetap mendapatkan kesalahan ini: "400 MalformedCertificate Invalid Private Key."
Yang menarik adalah, di halaman dokumen aws, contoh kunci privat yang mereka tampilkan dimulai dengan "------- Begin RSA Private Key --------"
Apakah ada cara untuk mengonversi kunci pribadi saya menjadi kunci pribadi RSA menggunakan openssl?
sumber
Invalid PEM structure, '-----BEGIN...' missing.
dari alat seperti Cyberduck sementara SSH murni dengan kunci yang sama berfungsi.A client error (MalformedCertificate) occurred when calling the UploadServerCertificate operation: Unable to parse certificate. Please ensure the certificate is in PEM format.
dan menjalankan ini pada kunci pribadi saya memperbaikinya!Private Key
dari sebuahRSA Private Key
?openssl pkcs8 -topk8 -nocrypt -in privkey.pem
akan menulis PKCS8 ke STDOUTIni mungkin bisa membantu (jangan menulis garis miring terbalik '\' dalam perintah, ini dimaksudkan untuk menunjukkan bahwa "semuanya harus dalam satu baris"):
Tampaknya semua perintah (berwarna abu-abu) menggunakan semua jenis file kunci (berwarna hijau) sebagai argumen "dalam". Itu bagus.
Berikut adalah perintahnya lagi untuk memudahkan copy-paste:
dan
sumber
Untuk Mengonversi "BEGIN OPENSSH PRIVATE KEY" menjadi "BEGIN RSA PRIVATE KEY"
sumber