Menyiapkan kunci enkripsi untuk server

Anda dapat menyiapkan kunci enkripsi untuk mengenkripsi sandi server. Kunci ini adalah kunci enkripsi yang dikelola pelanggan (CMEK) yang dapat Anda kelola menggunakan Cloud Key Management Service (Cloud KMS). Anda dapat menyiapkannya saat menyediakan server baru atau saat menginstal ulang server yang sudah ada. Anda dapat menggunakan kunci enkripsi dengan beberapa server.

Penggunaan kunci enkripsi bersifat opsional. Namun, setelah menyiapkan kunci enkripsi, Anda harus menggunakannya. Anda tidak dapat mengubah setelan ini. Namun, Anda dapat mengubah kunci atau versinya.

Fitur ini hanya tersedia untuk OS Linux yang didukung oleh Solusi Bare Metal.

Sebelum memulai

  1. Menggunakan Cloud KMS, buat kunci enkripsi.

    Untuk membuat kunci enkripsi, ikuti langkah-langkah berikut:

    1. Di project tempat Anda ingin membuat kunci, aktifkan Cloud KMS API.

      Lakukan hal ini hanya sekali per project.

    2. Tetapkan peran berikut ke akun layanan Solusi Bare Metal Anda. Lakukan hal ini hanya sekali per project.

      • roles/cloudkms.viewer: verifikasi bahwa CryptoKeyVersion tersedia untuk digunakan.
      • roles/cloudkms.publicKeyViewer: ambil kunci publik.

      Untuk mempelajari cara memberikan peran, lihat Memberikan peran pada resource.

      Untuk menetapkan peran ini, gunakan perintah gcloud projects add-iam-policy-binding.

      gcloud projects add-iam-policy-binding KMS_PROJECT_ID \
      --member serviceAccount:service-PROJECT_NUMBER@gcp-sa-bms.iam.gserviceaccount.com \
      --role roles/cloudkms.publicKeyViewer
      
      gcloud projects add-iam-policy-binding KMS_PROJECT_ID \
      --member serviceAccount:service-PROJECT_NUMBER@gcp-sa-bms.iam.gserviceaccount.com \
      --role roles/cloudkms.viewer
      

      Ganti kode berikut:

      • KMS_PROJECT_ID: project yang berisi kunci Cloud KMS Anda
      • PROJECT_NUMBER: project yang berisi server Solusi Bare Metal Anda
    3. Buat kunci dekripsi asimetris.

      Anda dapat membuat kunci dan versi sebanyak yang diperlukan.

Menyiapkan kunci enkripsi saat menyediakan server

Anda dapat menyiapkan kunci enkripsi untuk server Solusi Bare Metal baru saat menyediakannya melalui Google Cloud formulir penerimaan konsol.

Untuk menyiapkan kunci enkripsi saat menyediakan server, lihat Menggunakan formulir penerimaan konsol untuk memasukkan pilihan Anda. Google Cloud

Menyiapkan kunci enkripsi saat menginstal ulang server

Untuk menyiapkan kunci enkripsi saat menginstal ulang server, lihat Mengubah OS untuk server.

Melihat kunci enkripsi dan sandi server

Untuk melihat kunci enkripsi dan sandi server, ikuti langkah-langkah berikut:

Konsol

  1. Buka halaman Servers.

    Buka Server

  2. Klik nama server.

    Di halaman Server details, lihat kunci enkripsi di kolom Password encryption key.

  3. Untuk melihat akun pengguna dan sandi terenkripsi yang sesuai, buka bagian User Accounts.

gcloud

Gunakan perintah gcloud alpha bms instances auth-info:

gcloud alpha bms instances auth-info SERVER_NAME --project=PROJECT_ID --region=REGION

Ganti kode berikut:

  • SERVER_NAME: nama server Solusi Bare Metal
  • PROJECT_ID: ID project
  • REGION: region server Solusi Bare Metal

Mendekripsi sandi

Untuk mendapatkan sandi mentah, ikuti langkah-langkah berikut:

  1. Dapatkan teks sandi. Gunakan perintah gcloud alpha bms instances auth-info.

    gcloud alpha bms instances auth-info SERVER_NAME \
    --project=PROJECT_ID \
    --region=REGION \
    --format='value(userAccounts.USERNAME.ENCRYPTED_PASSWORD_FILE)' | tr -d ' \n' | base64 -d > CIPHERTEXT_FILE
    

    Ganti kode berikut:

    • SERVER_NAME: nama server Solusi Bare Metal Anda
    • PROJECT_ID: ID project Solusi Bare Metal Anda
    • REGION: lokasi server Solusi Bare Metal Anda
    • USERNAME: nama pengguna akun yang terkait dengan sandi yang ingin Anda dekripsi. Nilainya adalah root atau customeradmin.
    • ENCRYPTED_PASSWORD_FILE: file tempat Anda menyimpan sandi terenkripsi. Untuk menghindari masalah dengan format sandi setelah menyalinnya, hapus spasi dan karakter baris baru ('\n').
    • CIPHERTEXT_FILE: nama file teks sandi

    Contoh:

    gcloud alpha bms instances auth-info my-instance \
    --region=europe-west3 \
    --project=project-testing \
    --format='value(userAccounts.customeradmin.encryptedPassword)' | tr -d ' \n' | base64 -d > ciphertext
    

    Untuk mendapatkan teks sandi dari sandi yang disalin dari konsol, gunakan perintah berikut: Google Cloud

    cat ENCRYPTED_PASSWORD_FILE | tr -d ' \n' | base64 -d > CIPHERTEXT_FILE
    

    Ganti kode berikut:

    • ENCRYPTED_PASSWORD_FILE: file tempat Anda menyimpan sandi terenkripsi. Untuk menghindari masalah dengan format sandi setelah menyalinnya, hapus spasi dan karakter baris baru ('\n').
    • CIPHERTEXT_FILE: nama file teks sandi

    Contoh:

    cat encrypted_password | tr -d ' \n' | base64 -d > ciphertext
    
  2. Dekripsi sandi. Ikuti langkah-langkah di Mendekripsi data.

Langkah berikutnya