Mengkonfigurasi SSL/TLS sertifikat untuk koneksi Aurora DSQL - Amazon Aurora DSQL

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengkonfigurasi SSL/TLS sertifikat untuk koneksi Aurora DSQL

Aurora DSQL membutuhkan semua koneksi untuk menggunakan enkripsi Transport Layer Security (TLS). Untuk membuat koneksi aman, sistem klien Anda harus mempercayai Amazon Root Certificate Authority (Amazon Root CA 1). Sertifikat ini sudah diinstal sebelumnya pada banyak sistem operasi. Bagian ini memberikan instruksi untuk memverifikasi sertifikat Amazon Root CA 1 yang sudah diinstal sebelumnya pada berbagai sistem operasi, dan memandu Anda melalui proses menginstal sertifikat secara manual jika belum ada.

Kami merekomendasikan menggunakan PostgreSQL versi 17.

penting

Untuk lingkungan produksi, sebaiknya gunakan mode verify-full SSL untuk memastikan tingkat keamanan koneksi tertinggi. Mode ini memverifikasi bahwa sertifikat server ditandatangani oleh otoritas sertifikat tepercaya dan bahwa nama host server cocok dengan sertifikat.

Memverifikasi sertifikat pra-instal

Di sebagian besar sistem operasi, Amazon Root CA 1 sudah diinstal sebelumnya. Untuk memvalidasi ini, Anda dapat mengikuti langkah-langkah di bawah ini.

Linux (RedHat/CentOS/Fedora)

Jalankan perintah berikut di terminal Anda:

trust list | grep "Amazon Root CA 1"

Jika sertifikat diinstal, Anda melihat output berikut:

label: Amazon Root CA 1

macOS

  1. Buka Pencarian Sorotan (Perintah+Spasi)

  2. Cari Akses Gantungan Kunci

  3. Pilih Akar Sistem di bawah Gantungan Kunci Sistem

  4. Cari Amazon Root CA 1 dalam daftar sertifikat

Windows

catatan

Karena masalah yang diketahui dengan klien Windows psql, menggunakan sertifikat root sistem (sslrootcert=system) dapat mengembalikan kesalahan berikut:. SSL error: unregistered scheme Anda dapat mengikuti Menghubungkan dari Windows sebagai cara alternatif untuk terhubung ke cluster Anda menggunakan SSL.

Jika Amazon Root CA 1 tidak diinstal di sistem operasi Anda, ikuti langkah-langkah di bawah ini.

Instalasi sertifikat

Jika Amazon Root CA 1 sertifikat tidak diinstal sebelumnya pada sistem operasi Anda, Anda harus menginstalnya secara manual untuk membuat koneksi aman ke cluster Aurora DSQL Anda.

Instalasi sertifikat Linux

Ikuti langkah-langkah ini untuk menginstal sertifikat Amazon Root CA pada sistem Linux.

  1. Unduh Sertifikat Root:

    wget https://www.amazontrust.com/repository/AmazonRootCA1.pem
  2. Salin sertifikat ke toko kepercayaan:

    sudo cp ./AmazonRootCA1.pem /etc/pki/ca-trust/source/anchors/
  3. Perbarui toko kepercayaan CA:

    sudo update-ca-trust
  4. Verifikasi instalasi:

    trust list | grep "Amazon Root CA 1"

Instalasi sertifikat macOS

Langkah-langkah pemasangan sertifikat ini bersifat opsional. Ini Instalasi sertifikat Linux juga berfungsi untuk macOS.

  1. Unduh Sertifikat Root:

    wget https://www.amazontrust.com/repository/AmazonRootCA1.pem
  2. Tambahkan sertifikat ke gantungan kunci Sistem:

    sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain AmazonRootCA1.pem
  3. Verifikasi instalasi:

    security find-certificate -a -c "Amazon Root CA 1" -p /Library/Keychains/System.keychain

Menghubungkan dengan SSL/TLS verifikasi

Sebelum mengonfigurasi SSL/TLS sertifikat untuk koneksi aman ke cluster Aurora DSQL Anda, pastikan Anda memiliki prasyarat berikut.

  • PostgreSQL versi 17 diinstal

  • AWS CLI dikonfigurasi dengan kredensil yang sesuai

  • Informasi titik akhir cluster Aurora DSQL

Menghubungkan dari Linux

  1. Hasilkan dan atur token otentikasi:

    export PGPASSWORD=$(aws dsql generate-db-connect-admin-auth-token --region=your-cluster-region --hostname your-cluster-endpoint)
  2. Connect menggunakan sertifikat sistem (jika sudah diinstal sebelumnya):

    PGSSLROOTCERT=system \ PGSSLMODE=verify-full \ psql --dbname postgres \ --username admin \ --host your-cluster-endpoint
  3. Atau, sambungkan menggunakan sertifikat yang diunduh:

    PGSSLROOTCERT=/full/path/to/root.pem \ PGSSLMODE=verify-full \ psql --dbname postgres \ --username admin \ --host your-cluster-endpoint
catatan

Untuk selengkapnya tentang pengaturan PGSSLMODE, lihat sslmode di dokumentasi PostgreSQL 17 Database Connection Control Functions.

Menghubungkan dari macOS

  1. Hasilkan dan atur token otentikasi:

    export PGPASSWORD=$(aws dsql generate-db-connect-admin-auth-token --region=your-cluster-region --hostname your-cluster-endpoint)
  2. Connect menggunakan sertifikat sistem (jika sudah diinstal sebelumnya):

    PGSSLROOTCERT=system \ PGSSLMODE=verify-full \ psql --dbname postgres \ --username admin \ --host your-cluster-endpoint
  3. Atau, unduh sertifikat root dan simpan sebagai root.pem (jika sertifikat tidak diinstal sebelumnya)

    PGSSLROOTCERT=/full/path/to/root.pem \ PGSSLMODE=verify-full \ psql —dbname postgres \ --username admin \ --host your_cluster_endpoint
  4. Connect menggunakan psql:

    PGSSLROOTCERT=/full/path/to/root.pem \ PGSSLMODE=verify-full \ psql —dbname postgres \ --username admin \ --host your_cluster_endpoint

Menghubungkan dari Windows

Menggunakan Command Prompt

  1. Hasilkan token otentikasi:

    aws dsql generate-db-connect-admin-auth-token ^ --region=your-cluster-region ^ --expires-in=3600 ^ --hostname=your-cluster-endpoint
  2. Mengatur variabel lingkungan kata sandi:

    set "PGPASSWORD=token-from-above"
  3. Atur konfigurasi SSL:

    set PGSSLROOTCERT=C:\full\path\to\root.pem set PGSSLMODE=verify-full
  4. Connect ke database:

    "C:\Program Files\PostgreSQL\17\bin\psql.exe" --dbname postgres ^ --username admin ^ --host your-cluster-endpoint

Menggunakan PowerShell

  1. Hasilkan dan atur token otentikasi:

    $env:PGPASSWORD = (aws dsql generate-db-connect-admin-auth-token --region=your-cluster-region --expires-in=3600 --hostname=your-cluster-endpoint)
  2. Atur konfigurasi SSL:

    $env:PGSSLROOTCERT='C:\full\path\to\root.pem' $env:PGSSLMODE='verify-full'
  3. Connect ke database:

    "C:\Program Files\PostgreSQL\17\bin\psql.exe" --dbname postgres ` --username admin ` --host your-cluster-endpoint

Sumber daya tambahan