Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menerbitkan sertifikat melalui ACME
Setelah administrator PKI Anda menyiapkan endpoint ACME dengan validasi domain dan binding akun eksternal, pemilik aplikasi dapat menggunakan klien ACME untuk menerbitkan sertifikat. Bagian ini menjelaskan alur penerbitan, memberikan contoh singkat menggunakan Certbot, dan menjelaskan bagaimana ACME-issued sertifikat muncul di ACM.
Bagaimana penerbitan bekerja
Alur penerbitan sertifikat ACME mengikuti protokol RFC 8555:
-
Pendaftaran akun: Klien ACME mendaftarkan akun menggunakan kredensi EAB (ID kunci dan kunci MAC). Ini adalah langkah satu kali per klien ACME.
-
Urutan sertifikat: Klien membuat pesanan yang menentukan nama domain untuk sertifikat.
-
Otorisasi: Server ACME memeriksa validasi domain yang telah dikonfigurasi sebelumnya. Karena titik akhir menggunakan
PRE_APPROVEDotorisasi, tidak ada tantangan langsung yang diperlukan dari klien. -
Finalisasi: Klien mengirimkan Permintaan Penandatanganan Sertifikat (CSR) untuk menyelesaikan pesanan, dan ACM mengeluarkan sertifikat.
-
Unduh: Klien mengunduh rantai sertifikat yang dikeluarkan.
penting
Kunci pribadi dihasilkan oleh klien ACME dan tidak pernah meninggalkan sistem klien.
Contoh: Menerbitkan sertifikat dengan Certbot
Contoh ini menunjukkan cara mendaftarkan akun ACME dan meminta sertifikat menggunakan Certbot.
Prasyarat
-
Titik akhir ACME dalam
ACTIVEstatus (Anda memiliki URL direktori) -
Setidaknya satu validasi domain dalam
VALIDstatus untuk domain yang Anda inginkan -
Kredensi EAB (ID kunci dan kunci MAC) dari administrator PKI Anda
-
Certbot diinstal pada sistem Anda
Untuk mendaftarkan akun dan meminta sertifikat
penting
Penerbitan sertifikat melalui titik akhir ACM ACME dapat memakan waktu hingga dua menit. Konfigurasikan batas waktu penerbitan klien ACME Anda menjadi setidaknya 120 detik (2 menit) untuk mencegah klien keluar waktu sebelum sertifikat dikirimkan. Banyak klien ACME default ke 30-90 detik, yang tidak cukup.
Jalankan perintah berikut:
certbot certonly \ --standalone \ --non-interactive \ --agree-tos \ --emailuser@example.com\ --server https://acm-acme-enroll.region.api.aws/00000000-0000-0000-0000-000000000000/directory \ --eab-kidAAABBBCCC111222333\ --eab-hmac-keybase64encodedmackey\ --issuance-timeout 120 \ --domainwww.example.com
Setelah penerbitan berhasil, Certbot menyimpan sertifikat dan kunci pribadi di lokasi defaultnya (biasanya). /etc/letsencrypt/live/www.example.com/
Sertifikat ACME di ACM
Sertifikat yang dikeluarkan melalui ACME secara otomatis menerima sertifikat ACM standar ARN dan muncul di inventaris sertifikat ACM. Namun, ACME-issued sertifikat memiliki perbedaan penting dari sertifikat yang dikeluarkan melaluiRequestCertificate.
Perbedaan utama
-
Kunci pribadi adalah sisi klien: Kunci pribadi sertifikat dihasilkan dan disimpan oleh klien ACME. ACM tidak memiliki akses ke kunci pribadi.
-
Tidak dapat mengikat ke layanan terintegrasi: Karena AWS tidak memegang kunci pribadi, sertifikat ACME tidak dapat digunakan dengan Elastic Load Balancing CloudFront,, atau API Gateway.
-
Tidak dalam output daftar default: Sertifikat ACME tidak muncul dalam
ListCertificateshasil secara default. Anda harus menyertakanCertificateKeyPairOriginsfilter dengan nilaiACMEuntuk memasukkannya.SearchCertificatesmengembalikan sertifikat ACME secara default. -
Tidak dapat mengekspor melalui ACM:
ExportCertificateAPI tidak dapat digunakan karena sertifikat sudah diekspor menurut definisi karena klien memilikinya. -
Pencabutan hanya melalui ACME: Gunakan URL pencabutan sertifikat titik akhir ACME. ACM
RevokeCertificateAPI tidak berfungsi untuk ACME-issued sertifikat. -
Pembaruan digerakkan oleh klien: ACM tidak memperbarui sertifikat ACME secara otomatis. Klien ACME harus meminta sertifikat baru sebelum sertifikat yang sudah ada kedaluwarsa.
Melihat sertifikat ACME
Di konsol ACM, gunakan filter untuk menyertakan sertifikat dengan asal key pair ACME. Untuk informasi selengkapnya tentang menemukan sertifikat, lihatSertifikat pencarian.
Untuk daftar sertifikat ACME (AWS CLI)
Gunakan list-certificates dengan CertificateKeyPairOrigins filter:
aws acm list-certificates \ --certificate-key-pair-origins ACME
Untuk mencari sertifikat ACME (AWS CLI)
Gunakan search-certificates dengan CertificateKeyPairOrigin filter untuk menemukan sertifikat ACME dengan kriteria tambahan:
aws acm search-certificates \ --filter-statement '{"Filter": {"AcmCertificateMetadataFilter": {"CertificateKeyPairOrigin": "ACME"}}}'
Anda juga dapat mencari sertifikat yang dikeluarkan melalui titik akhir atau akun ACME tertentu dengan memfilter pada atau. AcmeEndpointArn AcmeAccountId
Untuk melihat detail sertifikat (AWS CLI)
Jalankan perintah berikut:
aws acm describe-certificate \ --certificate-arn arn:aws:acm:region:account-id:certificate/certificate-id
Mencabut sertifikat ACME
Untuk mencabut sertifikat yang dikeluarkan melalui ACME, gunakan titik akhir pencabutan sertifikat protokol ACME. Klien ACME menangani ini.
catatan
ACME-issued sertifikat tidak dapat dicabut menggunakan ACM APIRevokeCertificate. Anda harus mencabut sertifikat ini melalui titik akhir ACME yang menerbitkannya.
Contoh berikut menunjukkan pencabutan menggunakan Certbot:
certbot revoke \ --cert-path /etc/letsencrypt/live/www.example.com/cert.pem \ --server https://acm-acme-enroll.region.api.aws/00000000-0000-0000-0000-000000000000/directory
Pencabutan diotorisasi oleh peran IAM yang terkait dengan pengikatan akun eksternal klien, sehingga kebijakan dan SCP IAM yang sama yang berlaku untuk tindakan standar berlaku di sini. acm:RevokeCertificate Untuk informasi selengkapnya tentang konfigurasi peran IAM yang diperlukan, lihatIAM untuk otomatisasi sertifikat ACME.
Perpanjangan sertifikat
Sertifikat ACME tidak diperpanjang oleh ACM. Klien ACME Anda bertanggung jawab untuk meminta sertifikat baru sebelum sertifikat saat ini kedaluwarsa. Sebagian besar klien ACME (termasuk Certbot) mendukung pembaruan otomatis melalui tugas terjadwal (seperti pekerjaan cron atau timer systemd).
Stabilitas ARN di seluruh pembaruan
Ketika klien ACME memperbarui sertifikat, ACM menentukan apakah penerbitan baru adalah pembaruan sertifikat yang ada atau sertifikat yang berbeda. Jika penerbitan berasal dari akun ACME yang sama dengan metadata sertifikat yang sama (seperti nama domain dan algoritma kunci), ACM memperbarui ARN sertifikat yang ada daripada membuat yang baru. Ini membuat ARN stabil di seluruh pembaruan, yang menyederhanakan pelacakan dan otomatisasi.
Jika sertifikat asli telah dihapus dari ACM (misalnya, karena kedaluwarsa lebih dari satu tahun yang lalu dan secara otomatis dihapus), penerbitan berikutnya dengan metadata yang sama menciptakan sertifikat ARN baru.
Contoh perpanjangan otomatis Certbot (biasanya dikonfigurasi secara otomatis selama instalasi Certbot):
certbot renew --quiet