Tutorial ini menjelaskan cara menggunakan Certificate Manager untuk men-deploy sertifikat regional yang dikelola Google dengan CA Service ke Load Balancer Aplikasi eksternal regional atau ke Load Balancer Aplikasi internal regional.
Tujuan
Tutorial ini menunjukkan kepada Anda cara menyelesaikan tugas-tugas berikut:
- Buat sertifikat yang dikelola Google dengan CA Service menggunakan Certificate Manager.
- Deploy sertifikat ke load balancer yang didukung menggunakan proxy HTTPS target.
Untuk mengetahui informasi selengkapnya tentang proses deployment sertifikat, lihat Ringkasan deployment.
Sebelum memulai
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
Pastikan Anda memiliki peran berikut untuk menyelesaikan tugas dalam tutorial ini:
- Certificate Manager Owner: Diperlukan untuk membuat dan mengelola resource Certificate Manager.
- Admin Load Balancer Compute: Diperlukan untuk membuat dan mengelola proxy target HTTPS.
- Admin Layanan CA: Diperlukan untuk melakukan tindakan dalam Layanan CA.
Untuk informasi selengkapnya, lihat referensi berikut:
- Peran dan izin untuk Certificate Manager
- Peran dan izin IAM Compute Engine untuk Compute Engine
- Izin dan peran untuk CA Service
Buat kumpulan CA. Anda harus membuat dan mengaktifkan setidaknya satu CA dalam kumpulan CA ini.
Konfigurasikan integrasi CA Service dengan Certificate Manager
Konfigurasikan Pengelola Sertifikat untuk berintegrasi dengan Layanan CA sebagai berikut:
Buat akun layanan Certificate Manager di project Google Cloud target:
gcloud beta services identity create \ --service=certificatemanager.googleapis.com \ --project=PROJECT_ID
Ganti
PROJECT_ID
dengan ID project Google Cloud target.
Perintah tersebut akan menampilkan nama identitas layanan yang dibuat, seperti yang ditunjukkan pada contoh berikut:
service-520498234@gcp-sa-certificatemanager.iam.gserviceaccount.com
Beri akun layanan Certificate Manager peran Pemohon Sertifikat Layanan CA dalam kumpulan CA target sebagai berikut:
gcloud privateca pools add-iam-policy-binding CA_POOL \ --location LOCATION \ --member "serviceAccount:SERVICE_ACCOUNT" \ --role roles/privateca.certificateRequester
Ganti kode berikut:
CA_POOL
: ID kumpulan CA target.LOCATION
: lokasi Google Cloud target. Anda harus menentukan lokasi yang sama dengan kumpulan CA, resource konfigurasi penerbitan sertifikat, dan sertifikat terkelola.SERVICE_ACCOUNT
: nama lengkap akun layanan yang Anda buat di langkah 1.
Buat resource konfigurasi penerbitan sertifikat untuk kumpulan CA Anda:
gcloud beta certificate-manager issuance-configs create ISSUANCE_CONFIG_NAME \ --ca-pool=CA_POOL \ --location=LOCATION> \ [--lifetime=CERTIFICATE_LIFETIME] \ [--rotation-window-percentage=ROTATION_WINDOW_PERCENTAGE] \ [--key-algorithm=KEY_ALGORITHM]
Ganti kode berikut:
ISSUANCE_CONFIG_NAME
: nama unik resource konfigurasi penerbitan sertifikat.CA_POOL
: jalur resource lengkap dan nama kumpulan CA yang ingin Anda tetapkan ke resource konfigurasi penerbitan sertifikat ini.LOCATION
: lokasi Google Cloud target. Anda harus menentukan lokasi yang sama dengan kumpulan CA, resource konfigurasi penerbitan sertifikat, dan sertifikat terkelola.CERTIFICATE_LIFETIME
: masa berlaku sertifikat dalam hari. Nilai yang valid adalah dari 21 hingga 30 hari dalam format durasi standar. Defaultnya adalah 30 hari (30D
). Setelan ini opsional.ROTATION_WINDOW_PERCENTAGE
: persentase masa aktif sertifikat saat perpanjangan dipicu. Nilai defaultnya adalah 66 persen. Anda harus menetapkan persentase periode rotasi dalam kaitannya dengan masa berlaku sertifikat, sehingga perpanjangan sertifikat terjadi setidaknya 7 hari setelah sertifikat diterbitkan dan setidaknya 7 hari sebelum masa berlaku sertifikat berakhir. Setelan ini bersifat opsional.KEY_ALGORITHM
: algoritma enkripsi yang digunakan untuk membuat kunci pribadi. Nilai yang valid adalahecdsa-p256
ataursa-2048
. Defaultnya adalahrsa-2048
. Setelan ini bersifat opsional.
Untuk mengetahui informasi selengkapnya tentang resource konfigurasi penerbitan sertifikat, baca Mengelola konfigurasi penerbitan sertifikat.
Membuat sertifikat regional yang dikelola Google
Buat sertifikat regional yang dikelola Google yang diterbitkan oleh Layanan CA Anda menggunakan resource konfigurasi penerbitan sertifikat yang dibuat pada langkah sebelumnya:
gcloud
Jalankan perintah berikut:
gcloud beta certificate-manager certificates create CERTIFICATE_NAME \ --domains="DOMAIN_NAMES" \ --issuance-config="ISSUANCE_CONFIG_NAME" \ --location="LOCATION"
Ganti kode berikut:
CERTIFICATE_NAME
: nama unik sertifikat.DOMAIN_NAMES
: daftar domain target yang dibatasi koma untuk sertifikat ini. Setiap nama domain harus berupa nama domain yang sepenuhnya memenuhi syarat, sepertimyorg.example.com
.ISSUANCE_CONFIG_NAME
: nama resource konfigurasi penerbitan sertifikat yang merujuk ke kumpulan CA target.LOCATION
: lokasi Google Cloud target. Anda harus menentukan lokasi yang sama dengan kumpulan CA, resource konfigurasi penerbitan sertifikat, dan sertifikat terkelola.
API
Buat sertifikat dengan membuat permintaan POST
ke
metode certificates.create
sebagai berikut:
POST /v1/projects/PROJECT_ID/locations/LOCATION/certificates?certificate_id=CERTIFICATE_NAME" { name: "/projects/example-project/locations/LOCATION/certificates/my-cert", "managed": { "domains": ["DOMAIN_NAME"], "issuanceConfig": "ISSUANCE_CONFIG_NAME", }, }
Ganti kode berikut:
PROJECT_ID
: ID project Google Cloud target.LOCATION
: lokasi Google Cloud target. Anda harus menentukan lokasi yang sama dengan kumpulan CA, resource konfigurasi penerbitan sertifikat, dan sertifikat terkelola.CERTIFICATE_NAME
: nama unik sertifikat.DOMAIN_NAME
: domain target untuk sertifikat ini. Nama domain harus berupa nama domain yang sepenuhnya memenuhi syarat, sepertiexample.com
,www.example.com
.ISSUANCE_CONFIG_NAME
: nama resource konfigurasi penerbitan sertifikat yang merujuk ke kumpulan CA target.
Untuk ringkasan proses deployment sertifikat, lihat Ringkasan deployment.
Memastikan sertifikat aktif
Gunakan perintah berikut untuk memverifikasi bahwa sertifikat aktif sebelum men-deploy-nya ke load balancer Anda. Diperlukan waktu beberapa menit agar
status sertifikat berubah menjadi ACTIVE
.
gcloud beta certificate-manager certificates describe CERTIFICATE_NAME \ --location=LOCATION
Ganti kode berikut:
CERTIFICATE_NAME
: nama unik sertifikat.LOCATION
: lokasi Google Cloud target. Anda harus menentukan lokasi yang sama dengan kumpulan CA, resource konfigurasi penerbitan sertifikat, dan sertifikat terkelola.
Perintah menampilkan output yang mirip dengan berikut ini:
certificatePem: myPEM createTime: '2021-10-20T12:19:53.370778666Z' expireTime: '2022-05-07T05:03:49Z' managed: domains: - myorg.example.com issuanceConfig: projects/myproject/locations/mylocation/issuanceConfigs/myissuanceConfig state: ACTIVE name: projects/myproject/locations/mylocation/certificates/mycertificate scope: myScope subjectAlternativeNames:- - myorg.example.com updateTime: '2021-10-20T12:19:55.083385630Z'
Men-deploy sertifikat regional yang dikelola Google ke load balancer
Untuk men-deploy sertifikat regional yang dikelola Google, buat proxy target HTTPS dan lampirkan sertifikatnya ke proxy.
Membuat proxy target HTTPS
Untuk membuat proxy target HTTPS dan melampirkan sertifikat, jalankan perintah berikut:
gcloud compute target-https-proxies create PROXY_NAME \ --url-map=URL_MAP \ --region=REGION \ --certificate-manager-certificates=CERTIFICATE_NAME
Ganti kode berikut:
PROXY_NAME
: nama unik proxy.URL_MAP
: nama peta URL. Anda telah membuat peta URL saat membuat load balancer.REGION
: region tempat Anda membuat proxy target HTTPS.CERTIFICATE_NAME
: nama sertifikat.
Untuk memverifikasi apakah proxy target sudah dibuat, jalankan perintah berikut:
gcloud compute list target-https-proxies
Membuat aturan penerusan
Siapkan aturan penerusan dan selesaikan penyiapan load balancer.
- Jika Anda menggunakan Load Balancer Aplikasi eksternal regional, lihat Menyiapkan Load Balancer Aplikasi eksternal regional dengan backend grup instance VM.
- Jika Anda menggunakan Load Balancer Aplikasi internal regional, lihat Menyiapkan Load Balancer Aplikasi internal regional dengan backend grup instance VM.
Pembersihan
Untuk mengembalikan perubahan yang Anda buat dalam tutorial ini, selesaikan langkah-langkah berikut:
Hapus sertifikat yang dikelola Google:
gcloud certificate-manager certificates delete CERTIFICATE_NAME --location=LOCATION
Ganti kode berikut:
CERTIFICATE_NAME
: nama sertifikatLOCATION
: lokasi Google Cloud target
Hapus resource konfigurasi penerbitan sertifikat:
gcloud certificate-manager issuance-configs delete ISSUANCE_CONFIG_NAME --location=LOCATION
Ganti kode berikut:
CERTIFICATE_NAME
: nama sertifikatLOCATION
: lokasi Google Cloud target
Hapus kumpulan CA seperti yang dijelaskan di Menghapus kumpulan CA.
Perlu diingat bahwa untuk menonaktifkan CA terakhir yang Anda aktifkan dalam kumpulan CA yang dirujuk dalam resource konfigurasi penerbitan sertifikat, atau untuk menghapus kumpulan CA yang direferensikan, Anda harus terlebih dahulu menghapus setiap resource konfigurasi penerbitan sertifikat yang mereferensikan kumpulan CA tersebut.
Pemecahan masalah
Untuk mengetahui langkah-langkah pemecahan masalah, baca Masalah yang terkait dengan sertifikat yang diterbitkan oleh instance Layanan CA.