Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Kelola sertifikat server di IAM
Untuk mengaktifkan koneksi HTTPS ke situs web atau aplikasi Anda AWS, Anda memerlukan sertifikat server SSL/TLS. Untuk sertifikat di Wilayah yang didukung oleh AWS Certificate Manager (ACM), kami menyarankan Anda menggunakan ACM untuk menyediakan, mengelola, dan menyebarkan sertifikat server Anda. Di Wilayah yang tidak didukung, Anda harus menggunakan IAM sebagai manajer sertifikat. Untuk mempelajari Wilayah mana yang didukung ACM, lihat AWS Certificate Manager titik akhir dan kuota di. Referensi Umum AWS
penting
ACM adalah alat pilihan untuk menyediakan, mengelola, dan menerapkan sertifikat server Anda. Dengan ACM Anda dapat meminta sertifikat atau menyebarkan ACM atau sertifikat eksternal yang ada ke sumber daya. AWS Sertifikat yang disediakan oleh ACM gratis dan diperbarui secara otomatis. Di Wilayah yang Didukung, Anda dapat menggunakan ACM untuk mengelola sertifikat server dari konsol atau terprogram. Untuk informasi selengkapnya tentang penggunaan ACM, lihat Panduan AWS Certificate Manager Pengguna. Untuk informasi selengkapnya tentang meminta sertifikat ACM, lihat Meminta Sertifikat Publik atau Meminta Sertifikat Pribadi di AWS Certificate Manager Panduan Pengguna. Untuk informasi tentang mengimpor sertifikat pihak ke tiga ke ACM, lihat Mengimpor Sertifikat di Panduan Pengguna AWS Certificate Manager .
Gunakan IAM sebagai manajer sertifikat hanya ketika Anda harus mendukung koneksi HTTPS di Wilayah yang tidak didukung oleh ACM. IAM mengenkripsi kunci pribadi Anda dengan aman dan menyimpan versi terenkripsinya dalam penyimpanan sertifikat IAM SSL. IAM mendukung penerapan sertifikat server di semua Wilayah, tetapi Anda harus mendapatkan sertifikat dari penyedia eksternal untuk digunakan. AWS Anda tidak dapat mengunggah sertifikat ACM ke IAM. Sebagai tambahan, Anda tidak dapat mengelola sertifikat Anda dari Konsol IAM.
Untuk informasi selengkapnya tentang mengunggah sertifikat pihak ketiga ke IAM, lihat topik berikut.
Topik
Unggah sertifikat server (AWS API)
Untuk mengunggah sertifikat server ke IAM, Anda harus memberikan sertifikat yang sesuai dengan kunci pribadi. Jika sertifikat tidak ditandatangani sendiri, Anda juga harus memberikan rantai sertifikat. (Anda tidak memerlukan rantai sertifikat saat mengunggah sertifikat yang ditandatangani sendiri.) Sebelum Anda mengunggah sertifikat, pastikan bahwa Anda memiliki semua item ini dan bahwa mereka memenuhi kriteria berikut:
-
Sertifikat harus valid pada saat diunggah. Anda tidak dapat mengunggah sertifikat sebelum periode validitas dimulai (tanggal
NotBeforesertifikat) atau setelah kedaluwarsa (tanggalNotAftersertifikat). -
Kunci pribadi harus tidak dienkripsi. Anda tidak dapat mengunggah kunci pribadi yang dilindungi oleh kata sandi atau frasa sandi. Untuk membantu mendekripsi kunci pribadi terenkripsi, lihat Memecahkan masalah sertifikat server.
-
Sertifikat, kunci pribadi, dan rantai sertifikat harus semuanya dikode PEM. Untuk membantu mengonversi item ini ke format PEM, lihat Memecahkan masalah sertifikat server.
Untuk menggunakan API IAM untuk mengunggah sertifikat, kirim permintaan UploadServerCertificate. Contoh berikut ini menunjukkan cara melakukan dengan AWS Command Line Interface (AWS CLI)
-
Sertifikat yang dienkode PEM disimpan dalam file dengan nama
Certificate.pem. -
Rantai sertifikat yang dienkode PEM disimpan dalam file dengan nama
CertificateChain.pem. -
Sertifikat yang dienkode PEM, kunci pribadi tidak dienkripsi, disimpan dalam file dengan nama
PrivateKey.pem. -
(Opsional) Anda ingin menandai sertifikat server dengan pasangan kunci-nilai. Misalnya, Anda dapat menambahkan tombol tanda
Departmentdan nilai tandaEngineeringuntuk membantu Anda mengidentifikasi dan mengatur sertifikat Anda.
Untuk menggunakan perintah contoh berikut, ganti nama file berikut dengan nama Anda sendiri. Ganti ExampleCertificate dengan nama untuk sertifikat yang Anda unggah. Jika Anda ingin menandai sertifikat, ganti pasangan nilai kunci ExampleKey dan ExampleValue tag dengan nilai Anda sendiri. Ketik perintah pada satu garis kontinu. Contoh berikut mencakup jeda baris dan ruang tambahan untuk memudahkan Anda membaca.
aws iam upload-server-certificate --server-certificate-nameExampleCertificate--certificate-body file://Certificate.pem--certificate-chain file://CertificateChain.pem--private-key file://PrivateKey.pem--tags '{"Key": "ExampleKey", "Value": "ExampleValue"}'
Ketika perintah sebelumnya berhasil, perintah mengembalikan metadata tentang sertifikat yang diunggah, termasuk Amazon Resource Name (ARN), nama ramah, pengenalnya (ID), tanggal kedaluwarsanya, tanda, dan banyak lagi.
catatan
Jika Anda mengunggah sertifikat server untuk digunakan dengan Amazon CloudFront, Anda harus menentukan jalur menggunakan --path opsi. Jalur harus dimulai dengan /cloudfront dan harus menyertakan garis miring yang menelusur (misalnya, /cloudfront/test/).
Untuk menggunakan untuk AWS Tools for Windows PowerShell mengunggah sertifikat, gunakan Publish- IAMServer Certificate.
AWS Operasi API untuk sertifikat server
Gunakan perintah berikut untuk melihat, menandai, mengganti nama, dan menghapus sertifikat server.
-
Gunakan GetServerCertificateuntuk mengambil sertifikat. Permintaan ini mengembalikan sertifikat, rantai sertifikat (jika ada yang diunggah), dan metadata tentang sertifikat.
catatan
Anda tidak dapat mengunduh atau mengambil kunci pribadi dari IAM setelah Anda mengunggahnya.
-
Gunakan Get- IAMServer Certificate untuk mengambil sertifikat.
-
Gunakan ListServerCertificatesuntuk mencantumkan sertifikat server yang diunggah. Permintaan mengembalikan daftar yang berisi metadata tentang setiap sertifikat.
-
Gunakan Get- IAMServer Certificates untuk mencantumkan sertifikat server yang Anda unggah.
-
Gunakan TagServerCertificateuntuk menandai sertifikat server yang ada.
-
Gunakan UntagServerCertificateuntuk menghapus tag sertifikat server.
-
Gunakan UpdateServerCertificateuntuk mengganti nama sertifikat server atau memperbarui jalurnya.
Contoh berikut ini menunjukkan cara melakukan ini dengan AWS CLI.
Untuk menggunakan perintah contoh berikut, ganti nama sertifikat lama dan baru serta jalur sertifikat, lalu ketik perintah pada satu baris berkelanjutan. Contoh berikut mencakup jeda baris dan ruang tambahan untuk memudahkan Anda membaca.
aws iam update-server-certificate --server-certificate-nameExampleCertificate--new-server-certificate-nameCloudFrontCertificate--new-path/cloudfront/Untuk menggunakan AWS Tools for Windows PowerShell untuk mengganti nama sertifikat server atau memperbarui jalurnya, gunakan Update- IAMServer Certificate.
-
Gunakan DeleteServerCertificateuntuk menghapus sertifikat server.
Untuk menggunakan AWS Tools for Windows PowerShell untuk menghapus sertifikat server, gunakan Hapus- IAMServer Sertifikat.
Memecahkan masalah sertifikat server
Sebelum Anda dapat mengunggah sertifikat ke IAM, Anda harus memastikan bahwa sertifikat, kunci pribadi, dan rantai sertifikat semuanya dikode PEM. Anda juga harus memastikan bahwa kunci pribadi tidak terenkripsi. Lihat contoh-contoh berikut.
contoh Contoh sertifikat yang dienkode PEM
-----BEGIN CERTIFICATE-----Base64-encoded certificate-----END CERTIFICATE-----
contoh Contoh kunci pribadi yang dienkode PEM, tidak terenkripsi
-----BEGIN RSA PRIVATE KEY-----Base64-encoded private key-----END RSA PRIVATE KEY-----
contoh Contoh rantai sertifikat yang dienkode PEM
Rantai sertifikat berisi satu atau beberapa sertifikat. Anda dapat menggunakan editor teks, perintah penyalinan di Windows, atau perintah cat Linux untuk menggabungkan file sertifikat Anda ke dalam rantai. Jika Anda menyertakan beberapa sertifikat, setiap sertifikat harus mensertifikasi sertifikat sebelumnya. Anda mencapai ini dengan menggabungkan sertifikat, termasuk sertifikat CA akar terakhir.
Contoh berikut berisi tiga sertifikat, tetapi rantai sertifikat Anda mungkin memuat lebih banyak atau lebih sedikit sertifikat.
-----BEGIN CERTIFICATE-----Base64-encoded certificate-----END CERTIFICATE----- -----BEGIN CERTIFICATE-----Base64-encoded certificate-----END CERTIFICATE----- -----BEGIN CERTIFICATE-----Base64-encoded certificate-----END CERTIFICATE-----
Jika item ini tidak dalam format yang tepat untuk diunggah ke IAM, Anda dapat menggunakan OpenSSL
- Untuk mengonversikan sertifikat atau rantai sertifikat dari DER ke PEM
-
Gunakan perintah OpenSSL x509
, seperti pada contoh berikut. Di perintah contoh berikut, ganti dengan nama file yang berisi sertifikat yang dienkode DER Anda. GantiCertificate.derdengan nama pilihan file output untuk memuat sertifikat yang dienkode PEM.Certificate.pemopenssl x509 -inform DER -inCertificate.der-outform PEM -outCertificate.pem - Untuk mengonversi kunci pribadi dari DER ke PEM
-
Gunakan perintah OpenSSL rsa
, seperti pada contoh berikut. Di perintah contoh berikut, ganti dengan nama file yang berisi kunci pribadi yang dienkode DER Anda. GantiPrivateKey.derdengan nama pilihan file output untuk memuat kunci pribadi yang dienkode PEM.PrivateKey.pemopenssl rsa -inform DER -inPrivateKey.der-outform PEM -outPrivateKey.pem - Untuk mendekripsi kunci pribadi terenkripsi (hapus kata sandi atau frasa sandi)
-
Gunakan perintah OpenSSL rsa
, seperti pada contoh berikut. Untuk menggunakan perintah contoh berikut, ganti dengan nama file yang berisi kunci pribadi Anda yang dienkripsi. GantiEncryptedPrivateKey.pemdengan nama pilihan file output untuk memuat kunci pribadi tidak terenkripsi yang dienkode PEM.PrivateKey.pemopenssl rsa -inEncryptedPrivateKey.pem-outPrivateKey.pem - Untuk mengonversi bundel sertifikat dari PKCS#12 (PFX) ke PEM
-
Gunakan perintah OpenSSL pkcs12
, seperti pada contoh berikut. Di perintah contoh berikut, ganti dengan nama file yang berisi bundel sertifikat yang dienkode PKCS#12 Anda. GantiCertificateBundle.p12dengan nama pilihan file output untuk memuat bundel sertifikat yang dienkode PEM.CertificateBundle.pemopenssl pkcs12 -inCertificateBundle.p12-outCertificateBundle.pem-nodes - Untuk mengonversi bundel sertifikat dari PKCS#7 ke PEM
-
Gunakan perintah OpenSSL pkcs7
, seperti pada contoh berikut. Di perintah contoh berikut, ganti dengan nama file yang berisi bundel sertifikat yang dienkode PKCS#7 Anda. GantiCertificateBundle.p7bdengan nama pilihan file output untuk memuat bundel sertifikat yang dienkode PEM.CertificateBundle.pemopenssl pkcs7 -inCertificateBundle.p7b-print_certs -outCertificateBundle.pem