Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengelola sertifikat server di IAM
Untuk mengaktifkan koneksi HTTPS ke situs web atau aplikasi Anda di AWS, Anda memerlukan sertifikat server SSL/TLS. Untuk sertifikat di Wilayah yang didukung olehAWS Certificate Manager (ACM), kami menyarankan agar Anda menyediakan, mengelola, dan menerapkan sertifikat server Anda. Di Wilayah yang tidak didukung, Anda harus menggunakan IAM sebagai manajer sertifikat. Untuk mempelajari Regions yang didukung ACM, lihat AWS Certificate Managertitik akhir dan kuota di bagian Referensi Umum AWS.
ACM adalah alat pilihan untuk menyediakan, mengelola, dan menerapkan sertifikat server Anda. Dengan ACM Anda dapat meminta sertifikat atau menerapkan ACM yang ada atau sertifikat eksternal keAWS sumber daya. 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 tentang cara menggunakan ACM, lihat PanduanAWS Certificate Manager Pengguna. Untuk informasi selengkapnya tentang meminta sertifikat ACM, lihat Meminta Sertifikat Publik atau Minta Sertifikat Privat di PanduanAWS Certificate Manager 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 menerapkan sertifikat server di semua Wilayah, tetapi Anda harus mendapatkan sertifikat dari penyedia eksternal untuk menggunakan digunakan denganAWS. 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.
Daftar Isi
Mengunggah sertifikat server (API AWS)
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
NotBefore
sertifikat) atau setelah kedaluwarsa (tanggalNotAfter
sertifikat). -
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 Pemecahan Masalah.
-
Sertifikat, kunci pribadi, dan rantai sertifikat harus semuanya dikode PEM. Untuk membantu mengonversi item ini ke format PEM, lihat Pemecahan Masalah.
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 nilai—kunci. Misalnya, Anda dapat menambahkan tombol tanda
Department
dan nilai tandaEngineering
untuk 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 unggahan Anda. Jika Anda ingin menandai sertifikat, ganti pasangan nilai-kunci dengan nilai Anda sendiri ExampleKey
Ketik perintah pada satu garis kontinu. Contoh berikut mencakup jeda baris dan ruang tambahan untuk memudahkan Anda membaca.ExampleValue
aws iam upload-server-certificate --server-certificate-name
ExampleCertificate
--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 menggunakan digunakan dengan Amazon CloudFront, Anda harus menentukan alur menggunakan--path
pilihan. Jalur harus dimulai dengan /cloudfront
dan harus menyertakan garis miring yang menelusur (misalnya, /cloudfront/test/
).
Untuk menggunakanAWS Tools for Windows PowerShell untuk mengunggah sertifikat, gunakan Publish-IAMServerCertificate.
Mengambil sertifikat server (API AWS)
Untuk menggunakan API IAM untuk mengunggah sertifikat, kirim permintaan GetServerCertificate. Contoh berikut ini menunjukkan cara melakukan ini dengan AWS CLI. Ganti ExampleCertificate
dengan nama sertifikat untuk diambil.
aws iam get-server-certificate --server-certificate-name
ExampleCertificate
Ketika perintah sebelumnya berhasil, perintah mengembalikan sertifikat, rantai sertifikat (jika salah satu diunggah), dan metadata tentang sertifikat tersebut.
catatan
Anda tidak dapat mengunduh atau mengambil kunci pribadi dari IAM setelah Anda mengunggahnya.
Untuk menggunakanAWS Tools for Windows PowerShell untuk mengambil sertifikat, gunakan Get-IAMServerCertificate.
Daftar sertifikat server (API AWS)
Untuk menggunakan API IAM untuk mengunggah sertifikat, kirim permintaan ListServerCertificates. Contoh berikut ini menunjukkan cara melakukan ini dengan AWS CLI.
aws iam list-server-certificates
Jika perintah sebelumnya berhasil, perintah akan mengembalikan daftar yang berisi metadata setiap sertifikat.
Untuk menggunakan daftar sertifikat server yang Anda unggah, gunakan Get-IAMServerCertificates.AWS Tools for Windows PowerShell
Penandaan dan Penghapusan Tanda Sertifikat Server (API AWS)
Anda dapat melampirkan tanda ke sumber daya IAM untuk mengatur dan mengontrol akses ke mereka. Untuk menggunakan API IAM untuk menandai sertifikat server yang ada, kirim TagServerCertificatepermintaan. Contoh berikut ini menunjukkan cara melakukan ini dengan AWS CLI.
aws iam tag-server-certificate --server-certificate-name
ExampleCertificate
--tags '{"Key": "ExampleKey
", "Value": "ExampleValue
"}'
Ketika perintah sebelumnya berhasil, tidak ada output yang dihasilkan.
Untuk menggunakan API IAM untuk mengunggah sertifikat server, kirim UntagServerCertificatepermintaan. Contoh berikut ini menunjukkan cara melakukan ini dengan AWS CLI.
aws iam untag-server-certificate --server-certificate-name
ExampleCertificate
--tag-keysExampleKeyName
Ketika perintah sebelumnya berhasil, tidak ada output yang dihasilkan.
Mengganti nama sertifikat server atau memperbarui jalurnya (API AWS)
Untuk menggunakan API IAM untuk mengganti nama sertifikat server atau memperbarui jalurnya, kirim permintaan UpdateServerCertificate. 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-name
ExampleCertificate
--new-server-certificate-nameCloudFrontCertificate
--new-path/cloudfront/
Ketika perintah sebelumnya berhasil, itu tidak mengembalikan keluaran apa pun.
Untuk menggunakanAWS Tools for Windows PowerShell untuk mengganti nama sertifikat server atau memperbarui jalurnya, gunakan Update-IAMServerCertificate.
Menghapus sertifikat server (API AWS)
Untuk menggunakan API IAM untuk menghapus sertifikat server, kirim permintaan DeleteServerCertificate. Contoh berikut ini menunjukkan cara melakukan ini dengan AWS CLI.
Untuk menggunakan perintah contoh berikut, ganti ExampleCertificate
dengan nama sertifikat untuk dihapus.
aws iam delete-server-certificate --server-certificate-name
ExampleCertificate
Ketika perintah sebelumnya berhasil, itu tidak mengembalikan keluaran apa pun.
Untuk menggunakanAWS Tools for Windows PowerShell untuk menghapus sertifikat server, gunakan Hapus-IAMServerCertificate.
Pemecahan Masalah
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 bukan dalam format yang tepat untuk mengunggah 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.der
dengan nama pilihan file output untuk memuat sertifikat yang dienkode PEM.Certificate.pem
openssl x509 -inform DER -in
Certificate.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.der
dengan nama pilihan file output untuk memuat kunci pribadi yang dienkode PEM.PrivateKey.pem
openssl rsa -inform DER -in
PrivateKey.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.pem
dengan nama pilihan file output untuk memuat kunci pribadi tidak terenkripsi yang dienkode PEM.PrivateKey.pem
openssl rsa -in
EncryptedPrivateKey.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.p12
dengan nama pilihan file output untuk memuat bundel sertifikat yang dienkode PEM.CertificateBundle.pem
openssl pkcs12 -in
CertificateBundle.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.p7b
dengan nama pilihan file output untuk memuat bundel sertifikat yang dienkode PEM.CertificateBundle.pem
openssl pkcs7 -in
CertificateBundle.p7b
-print_certs -outCertificateBundle.pem