全部产品
Search
文档中心

ApsaraDB RDS:Konfigurasikan sertifikat kustom

更新时间:Jul 02, 2025

Di ApsaraDB RDS for PostgreSQL, enkripsi SSL mendukung sertifikat yang dikelola oleh Alibaba Cloud dan sertifikat kustom. Topik ini menjelaskan cara mengonfigurasi sertifikat kustom untuk mengaktifkan enkripsi SSL.

Prasyarat

  • Instans RDS harus menjalankan PostgreSQL 10 atau versi lebih baru dan menggunakan disk cloud.

    Catatan

    Instans RDS tanpa server tidak didukung.

  • OpenSSL telah diinstal.

    Catatan

    Sistem operasi Linux disertai dengan OpenSSL. Jika Anda menggunakan sistem operasi Linux, Anda tidak perlu menginstal OpenSSL. Jika Anda menggunakan sistem operasi Windows, unduh paket perangkat lunak OpenSSL dan instal OpenSSL. Untuk informasi lebih lanjut, lihat halaman Win32/Win64 OpenSSL.

Catatan penggunaan

  • Setelah enkripsi SSL diaktifkan, pemanfaatan CPU dan latensi baca-tulis akan meningkat.

  • Setelah enkripsi SSL diaktifkan, Anda harus menutup koneksi yang ada dan membuat koneksi baru agar enkripsi SSL berlaku.

  • Saat mengonfigurasi sertifikat kustom, memodifikasi konten sertifikat kustom yang telah dikonfigurasi, atau menonaktifkan enkripsi SSL, instans RDS akan restart. Proses restart membutuhkan waktu sekitar 3 menit. Kami menyarankan Anda melakukan operasi ini selama jam-jam sepi.

Langkah 1: Buat sertifikat kustom

Peringatan

Saat membuat kunci privat untuk sertifikat server atau sertifikat tanda tangan sendiri, jangan aktifkan enkripsi kata sandi. Jika Anda mengaktifkan enkripsi kata sandi, enkripsi SSL tidak dapat diaktifkan.

Dalam contoh ini, Community Enterprise Operating System (CentOS) digunakan. Jika Anda menggunakan sistem operasi Windows, Anda dapat menjalankan perintah openssl berikut dengan cara yang sama seperti pada sistem operasi CentOS. Selain itu, Anda harus menyalin atau mengedit perintah secara manual alih-alih menggunakan perintah cp dan vim.

  1. Buat sertifikat tanda tangan sendiri dan kunci privat untuk sertifikat tersebut. Sertifikat tanda tangan sendiri disimpan dalam file bernama server-ca.crt. Kunci privat disimpan dalam file bernama server-ca.key.

    openssl req -new -x509 -days 365 -nodes -out server-ca.crt -keyout server-ca.key -subj "/CN=root-server-ca"
  2. Buat file permintaan penandatanganan sertifikat (CSR) dan kunci privat untuk sertifikat server. File CSR diberi nama server.csr. Kunci privat disimpan dalam file bernama server.key.

    Setiap sertifikat kustom dapat melindungi satu atau beberapa titik akhir. Anda dapat menggunakan salah satu metode berikut untuk menghasilkan file CSR:

    • Jika Anda ingin melindungi satu titik akhir, jalankan perintah berikut:

      openssl req -new -nodes -text -out server.csr -keyout server.key -subj "/CN=pgm-bpxxxxx.pg.rds.aliyuncs.com"
      Catatan

      Ganti pgm-bpxxxxx.pg.rds.aliyuncs.com dengan titik akhir yang ingin Anda lindungi. Untuk informasi lebih lanjut tentang cara melihat titik akhir, lihat Lihat dan Ubah Titik Akhir dan Nomor Port dari Instans ApsaraDB RDS for PostgreSQL.

    • Jika Anda ingin melindungi beberapa titik akhir, jalankan perintah berikut:

      1. Salin file openssl.cnf untuk penggunaan sementara.

        cp /etc/pki/tls/openssl.cnf  /tmp/openssl.cnf
        Catatan

        Jika Anda menggunakan sistem operasi Windows, file openssl.cnf disimpan di direktori Direktori instalasi OpenSSL\bin\cnf. Anda dapat menyalin file openssl.cnf ke direktori lain di komputer Anda.

      2. Jalankan perintah berikut untuk membuka file openssl.cnf:

        vim /tmp/openssl.cnf
      3. Masukkan i untuk mengaktifkan mode edit. Kemudian, tambahkan konten berikut ke file openssl.cnf:

        # Tambahkan konten berikut di akhir elemen [ req ].
        req_extensions = v3_req
        
        # Tambahkan elemen [ v3_req ].
        [ v3_req ]
        basicConstraints = CA:FALSE
        keyUsage = nonRepudiation, digitalSignature, keyEncipherment
        subjectAltName = @alt_names
        
        # Tambahkan elemen [ alt_names ]. Lalu, masukkan titik akhir yang ingin Anda lindungi setelah setiap catatan Sistem Nama Domain (DNS).
        [ alt_names ]
        DNS.1 = pgm-bpxxxxx.pg.rds.aliyuncs.com
        DNS.2 = pgm-bpxxxxx.pg.rds.aliyuncs.com
      4. Tekan Esc untuk keluar dari mode edit. Lalu, masukkan :wq untuk menyimpan file dan keluar.

      5. Buat file permintaan penandatanganan sertifikat (CSR) dan kunci privat untuk sertifikat server. File CSR diberi nama server.csr. Kunci privat disimpan dalam file bernama server.key.

        openssl req -new -nodes -text -out server.csr -keyout server.key -config /tmp/openssl.cnf

        Saat file server.csr sedang dibuat, Anda diminta untuk mengonfigurasi parameter berikut berdasarkan kebutuhan bisnis Anda.

        Parameter

        Deskripsi

        Nilai contoh

        Nama Negara

        Kode negara. Tentukan kode negara dua huruf yang ditentukan oleh Organisasi Internasional untuk Standardisasi (ISO).

        CN

        Nama Negara Bagian atau Provinsi

        Provinsi.

        ZheJiang

        Nama Lokalitas

        Kota.

        HangZhou

        Nama Organisasi

        Nama perusahaan.

        Alibaba

        Nama Unit Organisasi

        Nama departemen.

        Aliyun

        Nama Umum

        Nama domain yang ingin Anda lindungi menggunakan sertifikat. Nama domain ditentukan dalam file openssl.cnf. Anda tidak perlu mengonfigurasi parameter ini.

        -

        Alamat Email

        Anda tidak perlu mengonfigurasi parameter ini.

        -

        Kata sandi tantangan

        Anda tidak perlu mengonfigurasi parameter ini.

        -

        Nama perusahaan opsional

        Anda tidak perlu mengonfigurasi parameter ini.

        -

  3. Buat sertifikat server. Sertifikat server disimpan dalam file bernama server.crt.

    • Jika Anda ingin melindungi satu titik akhir, jalankan perintah berikut:

      openssl x509 -req -in server.csr -text -days 365 -CA server-ca.crt -CAkey server-ca.key -CAcreateserial  -out server.crt
    • Jika Anda ingin melindungi beberapa titik akhir, jalankan perintah berikut:

      openssl x509 -req -in server.csr -text -days 365 -CA server-ca.crt -CAkey server-ca.key -CAcreateserial  -out server.crt -extensions v3_req -extfile /tmp/openssl.cnf

Setelah menyelesaikan konfigurasi sebelumnya, jalankan perintah ls untuk melihat file yang dihasilkan:

# ls
server-ca.crt  server-ca.key  ca.srl  server.crt  server.csr  server.key

Daftar berikut menjelaskan file tersebut:

  • server.crt: file yang berisi sertifikat server

  • server.key: file yang berisi kunci privat dari sertifikat server

  • server-ca.crt: file yang berisi sertifikat tanda tangan sendiri

  • server-ca.key: file yang berisi kunci privat dari sertifikat tanda tangan sendiri

Langkah 2: Gunakan sertifikat kustom yang dibuat untuk mengaktifkan enkripsi SSL

Catatan

Setelah sertifikat kustom dikonfigurasi, status instans RDS berubah dari Running menjadi Modifying SSL. Setelah sekitar 3 menit, status berubah kembali menjadi Running.

  1. Pergi ke halaman Instances. Di bilah navigasi atas, pilih wilayah tempat instans RDS berada. Lalu, temukan instans RDS dan klik ID instans tersebut.

  2. Masuk ke konsol ApsaraDB RDS. Temukan instans RDS dan klik ID instans tersebut. Di panel navigasi di sebelah kiri, klik Data Security. Pada halaman yang muncul, klik tab SSL.

  3. Atur parameter Select Certificate Source ke Custom Certificate. Klik Configuration di sebelah Configure Database Certificate (to Prevent Database Disguise). Dalam kotak dialog yang muncul, konfigurasikan parameter Server Certificate dan Private Key of Server Certificate dan klik OK.

    使用自定义证书

    Parameter

    Deskripsi

    Server Certificate

    Konten file server.crt yang Anda buat. Untuk informasi lebih lanjut, lihat Langkah 1: Buat sertifikat kustom. Pastikan semua konten dari -----BEGIN CERTIFICATE----- hingga -----END CERTIFICATE----- disalin ke bidang ini.

    Private Key of Server Certificate

    Konten file server.key yang Anda buat. Untuk informasi lebih lanjut, lihat Langkah 1: Buat sertifikat kustom. Pastikan semua konten dari -----BEGIN PRIVATE KEY----- hingga -----END PRIVATE KEY----- disalin ke bidang ini.

    Saat meminta sertifikat kustom, Anda dapat memilih beberapa titik akhir yang ingin dilindungi. Jika Anda memilih beberapa titik akhir, Anda dapat menemukan beberapa catatan di parameter Protected Host.使用自定义证书

Langkah 3: Hubungkan ke instans RDS dari klien database

Anda dapat menghubungkan ke instans RDS dari klien melalui SSL. Untuk informasi lebih lanjut, lihat Hubungkan ke Instans ApsaraDB RDS for PostgreSQL melalui SSL.

Langkah 4: (Opsional) Perbarui sertifikat kustom yang dibuat

Catatan

Operasi ini memicu restart instans RDS. Lanjutkan dengan hati-hati.

Di tab SSL, klik Modify di sebelah Configure Database Certificate (to Prevent Database Disguise). Dalam kotak dialog yang muncul, masukkan sertifikat server baru yang ingin Anda gunakan dan kunci privat dari sertifikat server baru.更新证书

Langkah 5: (Opsional) Nonaktifkan enkripsi SSL

Catatan

Operasi ini memicu restart instans RDS Anda. Lanjutkan dengan hati-hati.

Di tab SSL, klik Disable SSL.closessl