Mengelola enkripsi saat transit

Halaman ini menjelaskan cara mengelola enkripsi dalam transit untuk instance Anda.

Untuk ringkasan enkripsi dalam transit untuk Memorystore for Valkey, lihat Tentang enkripsi dalam transit.

Anda hanya dapat mengaktifkan enkripsi saat transit saat pertama kali membuat instance Memorystore untuk Valkey. Enkripsi saat transit tidak dapat dinonaktifkan untuk instance yang dibuat dengan cara ini.

Membuat instance dengan enkripsi saat transit

Konsol

Ikuti langkah-langkah di Membuat instance Memorystore for Valkey.

gcloud

Untuk membuat instance Valkey yang memiliki enkripsi saat transit, jalankan perintah create:

gcloud memorystore instances create INSTANCE \
--location=REGION_ID \
--endpoints='[{"connections": [{"pscAutoConnection": {"network": "projects/PROJECT_ID/global/networks/NETWORK_ID", "projectId": "PROJECT_ID"}}]}]' \
--replica-count=REPLICA_COUNT \
--node-type=NODE_TYPE \
--shard-count=SHARD_COUNT \
--transit-encryption-mode=server-authentication

Ganti kode berikut:

  • INSTANCE adalah ID instance Memorystore for Valkey yang Anda buat. ID instance Anda harus terdiri dari 1 hingga 63 karakter dan hanya menggunakan huruf kecil, angka, atau tanda hubung. ID ini harus dimulai dengan huruf kecil dan diakhiri dengan huruf kecil atau angka.

  • REGION_ID adalah region tempat Anda ingin menempatkan instance.

  • PROJECT_ID adalah ID project tempat Anda ingin membuat instance.

  • NETWORK_ID adalah ID jaringan yang ingin Anda gunakan untuk membuat instance.

  • REPLICA_COUNT adalah jumlah replika yang Anda inginkan (per shard). Nilai yang diterima adalah 0, 1, dan 2.

  • NODE_TYPE adalah jenis node yang Anda pilih. Nilai yang diterima adalah:

    • shared-core-nano
    • standard-small
    • highmem-medium
    • highmem-xlarge
  • SHARD_COUNT menentukan jumlah shard dalam instance Anda. Jumlah shard menentukan total kapasitas memori untuk menyimpan data instance. Untuk melihat detail selengkapnya tentang spesifikasi instance, lihat Spesifikasi instance dan node.

Contoh:

gcloud memorystore instances create my-instance \
--location=us-central1 \
--endpoints='[{"connections": [{"pscAutoConnection": {"network": "projects/my-project/global/networks/my-network", "projectId": "my-project"}}]}] \
--replica-count=1 \
--node-type=highmem-medium \
--shard-count=3 \
--transit-encryption-mode=server-authentication

Mendownload certificate authority

Jika enkripsi dalam transit diaktifkan di instance Anda, Anda akan melihat sertifikat Otoritas Sertifikat saat menjalankan perintah get-certificate-authority:

gcloud memorystore instances get-certificate-authority INSTANCE

Ganti kode berikut:

  • INSTANCE adalah ID instance Memorystore for Valkey Anda.

Isi respons mencakup sertifikat untuk semua Otoritas Sertifikat yang berlaku.

Menginstal Certificate Authority di klien Anda

Anda harus menginstal Otoritas Sertifikat instance Anda di klien yang terhubung. Penginstalan CA dapat bervariasi bergantung pada jenis klien. Langkah-langkah di bawah menjelaskan cara menginstal CA di VM Linux Compute Engine.

  1. Hubungkan dengan SSH ke klien Linux Compute Engine Anda.

  2. Buat file bernama server_ca.pem di klien Anda:

    sudo vim /tmp/server_ca.pem
    
  3. Download Otoritas Sertifikat dan tempelkan ke file server_ca.pem yang dibuat sebelumnya.

    Teks CA harus diformat dengan benar. File server_ca.pem Anda akan terlihat seperti ini:

    -----BEGIN CERTIFICATE-----
    MIIDnTCCAoWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBhTEtMCsGA1UELhMkNzYx
    NTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2YxOWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29n
    bGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVkaXMgU2VydmVyIENBMRQwEgYDVQQKEwtH
    b29nbGUsIEluYzELMAkGA1UEBhMCVVMwHhcNMjAwOTE3MjEzNDE1WhcNMzAwOTE1
    MjEzNTE1WjCBhTEtMCsGA1UELhMkNzYxNTc4OGMtMTI2Yi00Nzk0LWI2MWMtY2Yx
    OWE2Y2Y1ZjNiMTEwLwYDVQQDEyhHb29nbGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVk
    aXMgU2VydmVyIENBMRQwEgYDVQQKEwtHb29nbGUsIEluYzELMAkGA1UEBhMCVVMw
    ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCyDKmDHZm6tzMhNtKOnp8H
    8+zTv1qA6OkBToVqCjKTTMGO18ovNtAAMjbGvclLuJNLbA2WTTWVttHen6Cn82h0
    3gG9HMk9AwK1cVT7gW072h++TRsYddIRlwnSweRWL8jUX+PNt7CjFqH+sma/Hb1m
    CktHdBOa897JiYHrMVNTcpS8SFwwz05yHUTEVGlHdkvlaJXfHLe6keCMABLyjaMh
    1Jl4gZI2WqLMV680pJusK6FI6q/NmqENFc9ywMEg395lHTK9w9e014WIXg0q7sU3
    84ChVVS2yYOMEUWeov4Qx6XeVfA4ss5t7OCqsMQkvslkE90mJZcVvhBj3QvTH9Rz
    AgMBAAGjFjAUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEB
    AJkn+MDE4V10DZn4uEc0s0Mg4FEMC1fDewmDYwSNnxRlzfEi+wAX2AaqrJ4m4Qa7
    xIyuSYxArEOY6QeyJyw7/06dom8aAv4aO2p8hE04Ih6QwaTMFIlT2Jf6TidVd3eT
    wfjwFJVoJ+dgxsaCv2uMFZWee5aRHmKzj9LhqPwpWnTs9Q/qmOheUNoe2/1i8yvn
    662M7RZMR7fZH6ETsdz5w1nPXXiRqJ7K0EGKoPNjMlYK3/U1X3sazI4tpMNgTdxG
    rnNh9Sd9REMBmDCPj9dUI9k4hQX4yQZp96fnLT6cet22OPajEKnpzyqJs1s4iX/g
    lEtWs4V/YBhKA56CW6ASZS8=
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    MIIDnTCCAoWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBhTEtMCsGA1UELhMkYjg4
    ZTUzYTMtODdmNC00N2VhLWJjN2MtYTdhMzM4NmIwZmU4MTEwLwYDVQQDEyhHb29n
    bGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVkaXMgU2VydmVyIENBMRQwEgYDVQQKEwtH
    b29nbGUsIEluYzELMAkGA1UEBhMCVVMwHhcNMjAwOTE4MjEzMTI3WhcNMzAwOTE2
    MjEzMjI3WjCBhTEtMCsGA1UELhMkYjg4ZTUzYTMtODdmNC00N2VhLWJjN2MtYTdh
    MzM4NmIwZmU4MTEwLwYDVQQDEyhHb29nbGUgQ2xvdWQgTWVtb3J5c3RvcmUgUmVk
    aXMgU2VydmVyIENBMRQwEgYDVQQKEwtHb29nbGUsIEluYzELMAkGA1UEBhMCVVMw
    ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEO4Zs/So5DA6wtftkAElD
    8BVREob4gby2mGBYAtd3JJQKFC+zIqCf2DhrWihrCeXhsdsZqJUF16E3MsCCWS2T
    UWt6T37zObU2fzKmb7X+TSw1tunIUcIXwWzoMhqdGrIvfI9guMbF+KssQIjDMs9M
    G/hY6cY1NB5THOxXqcxzYrwSKB1EE160EDz4RgKAYQhw7AyVOBBAbWqA5pTEDuUy
    qpsz+NFpKYTwaeTpzil0xIl0JJS3DOd4G7ZnMG2wFT2j3wt+P0SkAPuOWgmX82iO
    gGmKoaCh3KcICie/rZRTfsRPjMm+yswRQRDeLB5eoMmH+gbUInVZU0qOJ/7gOYEb
    AgMBAAGjFjAUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDQYJKoZIhvcNAQELBQADggEB
    AF4xlEbwLUK5VjoKlJBtKXLYrYcW+AbQLhZQFP8exE8bOW7p39h+5J0nl3ItPxu6
    97BCt1P5TFisba8pBxaExiDsYmjKQrhtizMkzl5h9hGksOgoLlAqaaxfA97+Q9Tq
    5gaYChESur/159Z3jiM47obKoZmHfgSgr//7tjII7yZxUGhOjIVffv/fEa4aixqM
    0yH1V1s8hWHZeui2VFrHmTxY20IH9ktyedjSUgnFXzsEH6sbR18p0wBZqyrrtURs
    DaUIeoOHfHgEJM8k/wphSJI0V6pMC6nax2JhexLTRiUsiGTLRDe3VtsdWqS2DLa9
    9DmrfdF0eFrfWw3VRNLwwXg=
    -----END CERTIFICATE-----
    

    File Anda, seperti yang terlihat pada contoh sebelumnya, harus menggunakan panduan berikut:

    • Salin seluruh Certificate Authority termasuk baris -----BEGIN CERTIFICATE----- dan -----END CERTIFICATE-----.

    • Pastikan teks CA sepenuhnya rata kiri. Tidak boleh ada spasi di depan setiap baris CA.

    • Setiap Otoritas Sertifikat harus ditambahkan di baris baru. Tidak boleh ada baris kosong di antara CA.

Mengonfigurasi klien untuk enkripsi saat transit

Klien yang Anda gunakan untuk terhubung ke instance harus mendukung TLS atau menggunakan sidecar pihak ketiga untuk mengaktifkan TLS.

Jika klien Anda mendukung TLS, konfigurasikan agar mengarah ke IP instance Valkey, port 6379, dan file yang berisi Certificate Authority. Jika Anda memilih untuk menggunakan sidecar, sebaiknya gunakan Stunnel.

Menghubungkan ke instance Memorystore secara aman menggunakan Stunnel dan telnet

Untuk mengetahui petunjuk tentang penggunaan Stunnel untuk mengaktifkan enkripsi saat transit pada klien Compute Engine, lihat Menghubungkan ke instance Memorystore secara aman menggunakan Stunnel dan telnet.

Mengelola rotasi Certificate Authority

Anda harus menginstal semua Otoritas Sertifikat yang dapat didownload di klien yang mengakses instance Anda.

Menginstal CA baru, selain CA sebelumnya, setelah tersedia adalah cara paling sederhana untuk memastikan Anda memiliki CA yang diperlukan saat peristiwa rotasi Otoritas Sertifikat terjadi.

Yang perlu Anda lakukan untuk memastikan Anda memiliki CA yang diperlukan adalah memastikan bahwa CA yang disimpan di file klien Anda cocok dengan yang ditampilkan saat mendownload Certificate Authority. CA baru dan CA lama aktif selama rotasi untuk memastikan waktu non-operasional minimal.

Contoh kode untuk menghubungkan ke instance yang menggunakan enkripsi saat transit

Untuk melihat contoh kode yang kompatibel dengan Valkey tentang cara menyiapkan library klien untuk terhubung ke instance yang menggunakan enkripsi saat transit, lihat Contoh kode library klien enkripsi saat transit.