Aktifkan koneksi terenkripsi untuk instans PostgreSQL DB di Amazon RDS - AWS Prescriptive Guidance

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

Aktifkan koneksi terenkripsi untuk instans PostgreSQL DB di Amazon RDS

Rohit Kapoor, Amazon Web Services

Ringkasan

Amazon Relational Database Service (Amazon RDS) mendukung enkripsi SSL untuk instans PostgreSQL DB. Menggunakan SSL, Anda dapat mengenkripsi koneksi PostgreSQL antara aplikasi dan Amazon RDS for PostgreSQL DB instans. Secara default, Amazon RDS SSL/TLS for PostgreSQL menggunakan dan mengharapkan semua klien terhubung dengan menggunakan enkripsi. SSL/TLS Amazon RDS for PostgreSQL mendukung TLS versi 1.1 dan 1.2.

Pola ini menjelaskan bagaimana Anda dapat mengaktifkan koneksi terenkripsi untuk instans Amazon RDS for PostgreSQL DB. Anda dapat menggunakan proses yang sama untuk mengaktifkan koneksi terenkripsi untuk Amazon Aurora PostgreSQL Edisi yang kompatibel.

Prasyarat dan batasan

Arsitektur

Mengaktifkan koneksi terenkripsi untuk instans PostgreSQL DB di Amazon RDS

Alat

  • pgAdmin adalah platform administrasi dan pengembangan open-source untuk PostgreSQL. Anda dapat menggunakan pgAdmin di Linux, Unix, macOS, dan Windows untuk mengelola objek database Anda di PostgreSQL 10 dan yang lebih baru.

  • Editor PostgreSQL menyediakan antarmuka yang lebih ramah pengguna untuk membantu Anda membuat, mengembangkan, dan menjalankan kueri, dan mengedit kode sesuai dengan kebutuhan Anda.

Praktik terbaik

  • Pantau koneksi database yang tidak aman.

  • Audit hak akses basis data.

  • Pastikan bahwa backup dan snapshot dienkripsi saat istirahat.

  • Pantau akses basis data.

  • Hindari grup akses yang tidak terbatas.

  • Tingkatkan notifikasi Anda dengan Amazon GuardDuty.

  • Pantau kepatuhan kebijakan secara teratur.

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Muat sertifikat tepercaya ke komputer Anda.

Untuk menambahkan sertifikat ke toko Otoritas Sertifikasi Root Tepercaya untuk komputer Anda, ikuti langkah-langkah berikut. (Instruksi ini menggunakan Window Server sebagai contoh.)

  1. Di Windows Server, pilih Mulai, Jalankan, lalu ketik mmc.

  2. Di konsol, pilih File, Tambah/Hapus Snap-in.

  3. Di bawah Snap-in yang tersedia, pilih Sertifikat, lalu pilih Tambah.

  4. Di bawah Snap-in ini akan selalu mengelola sertifikat untuk, pilih Akun komputer, Berikutnya.

  5. Pilih Komputer lokal, Selesai.

  6. Jika Anda tidak memiliki snap-in lagi untuk ditambahkan ke konsol, pilih OK.

  7. Di pohon konsol, klik dua kali Sertifikat.

  8. Klik kanan Otoritas Sertifikasi Root Tepercaya.

  9. Pilih Semua Tugas, Impor untuk mengimpor sertifikat yang diunduh.

  10. Ikuti langkah-langkah di Wisaya Impor Sertifikat.

DevOps insinyur, insinyur migrasi, DBA
TugasDeskripsiKeterampilan yang dibutuhkan

Buat grup parameter dan atur parameter rds.force_ssl.

Jika instance PostgreSQL DB memiliki grup parameter kustom, edit grup parameter dan ubah ke 1. rds.force_ssl

Jika instans DB menggunakan grup parameter default yang belum rds.force_ssl diaktifkan, buat grup parameter baru. Anda dapat memodifikasi grup parameter baru dengan menggunakan Amazon RDS API atau secara manual seperti pada petunjuk berikut.

Untuk membuat grup parameter baru:

  1. Masuk ke konsol AWS Management dan buka konsol Amazon RDS untuk Wilayah AWS yang menghosting instans DB.

  2. Di panel navigasi, pilih Grup parameter.

  3. Pilih Buat grup parameter, dan atur nilai berikut: 

    • Untuk keluarga grup Parameter, pilih postgres14.

    • <database_instance>Untuk nama Grup, ketik pgsql- -ssl.

    • Untuk Deskripsi, masukkan deskripsi bentuk bebas untuk grup parameter yang Anda tambahkan.

    • Pilih Buat.

  4. Pilih grup parameter yang Anda buat.

  5. Dari Tindakan grup parameter, pilih Edit.

  6. Temukan rds.force_ssl dan ubah pengaturannya menjadi 1.

    catatan

    Lakukan pengujian sisi klien sebelum mengubah parameter ini.

  7. Pilih Simpan perubahan.

Untuk mengaitkan grup parameter dengan instance PostgreSQL DB Anda:

  1. Di konsol Amazon RDS, di panel navigasi, pilih Databases, lalu pilih instans PostgreSQL DB.

  2. Pilih Ubah.

  3. Di bawah Konfigurasi tambahan, pilih grup parameter baru, lalu pilih Lanjutkan.

  4. Di bawah Jadwalkan modifikasi, pilih Terapkan segera.

  5. Pilih Ubah instans DB.

Untuk informasi selengkapnya, lihat dokumentasi Amazon RDS.

DevOps insinyur, insinyur migrasi, DBA

Memaksa koneksi SSL.

Connect ke instans Amazon RDS for PostgreSQL DB. Upaya koneksi yang tidak menggunakan SSL ditolak dengan pesan kesalahan. Untuk informasi selengkapnya, lihat dokumentasi Amazon RDS.

DevOps insinyur, insinyur migrasi, DBA
TugasDeskripsiKeterampilan yang dibutuhkan

Instal ekstensi SSL.

  1. Luncurkan koneksi psql atau pgAdmin sebagai DBA.

  2. Panggil fungsi ssl_is_used () untuk menentukan apakah SSL sedang digunakan.

    select ssl_is_used();

    Fungsi kembali t jika koneksi menggunakan SSL; jika tidak, ia kembalif.

  3. Instal ekstensi SSL.

    create extension sslinfo; show ssl; select ssl_cipher();

Untuk informasi selengkapnya, lihat dokumentasi Amazon RDS.

DevOps insinyur, insinyur migrasi, DBA
TugasDeskripsiKeterampilan yang dibutuhkan

Konfigurasikan klien untuk SSL.

Dengan menggunakan SSL, Anda dapat memulai server PostgreSQL dengan dukungan untuk koneksi terenkripsi yang menggunakan protokol TLS. Server mendengarkan koneksi standar dan SSL pada port TCP yang sama, dan bernegosiasi dengan klien penghubung apakah akan menggunakan SSL. Secara default, ini adalah opsi klien.

Jika Anda menggunakan klien psql:

  1. Pastikan sertifikat Amazon RDS telah dimuat ke komputer lokal Anda.

  2. Luncurkan koneksi klien SSL dengan menambahkan yang berikut ini:

    psql postgres -h SOMEHOST.amazonaws.com -p 8192 -U someuser sslmode=verify-full sslrootcert=rds-ssl-ca-cert.pem select ssl_cipher();

Untuk klien PostgreSQL lainnya:

  • Ubah parameter kunci publik aplikasi masing-masing. Ini mungkin tersedia sebagai opsi, sebagai bagian dari string koneksi Anda, atau sebagai properti di halaman koneksi di alat GUI. 

Tinjau halaman berikut untuk klien ini:

DevOps insinyur, insinyur migrasi, DBA

Pemecahan Masalah

IsuSolusi

Tidak dapat mengunduh sertifikat SSL.

Periksa koneksi Anda ke situs web, dan coba lagi unduh sertifikat ke komputer lokal Anda.

Sumber daya terkait