Meskipun PostgreSQL tidak menawarkan opsi enkripsi bawaan, Anda dapat mengatur enkripsi data saat disimpan menggunakan metode enkripsi pihak ketiga. Tutorial hari ini berfokus pada penggunaan metode Enkripsi Data Transparan (TDE) untuk mengaktifkan enkripsi tingkat sistem file.
Cara Mengatur Enkripsi Data Saat Istirahat di PostgreSQL
Saat menyetel enkripsi data saat istirahat di PostgreSQL, tujuannya adalah membuat data tidak dapat dibaca di sistem file dengan memerlukan kunci dekripsi. Dengan begitu, akses tidak sah dapat dihilangkan.
Saat PostgreSQL berjalan di server Anda, Anda dapat mengatur enkripsi tingkat sistem file menggunakan alat pihak ketiga seperti Linux Unified Key Setup (LUKS). Anda dapat menemukan solusi yang tepat untuk sistem Anda. Di sini, kami bekerja dengan Ubuntu dan mengatur enkripsi data menggunakan langkah-langkah berikut.
Langkah 1: Instal Alat Enkripsi Sistem File
Setelah Anda memilih metode enkripsi, Anda harus menginstal alat yang diperlukan. Kami memilih metode enkripsi tingkat sistem file dan menginstal LUKS. Untuk menginstal LUKS, instal cryptsetup sebagai berikut:
sudo instalasi apt-get pengaturan kripto
Tekan “y” untuk melanjutkan instalasi dan memastikan semuanya terinstal sesuai yang diharapkan.
Langkah 2: Siapkan Kontainer Terenkripsi
Karena kita sedang menyiapkan enkripsi tingkat sistem file, kita harus membuat direktori terenkripsi pada disk kita yang berisi data PostgreSQL. Periksa perangkat yang tersedia di sistem operasi Anda dengan perintah berikut:
sudo fdisk -l
Selanjutnya, pilih perangkat yang sesuai dan jalankan perintah berikut. Di sini, kami menggunakan /dev/sdb perangkat. Anda akan diminta untuk mengonfirmasi tindakan dengan mengetik “YA” dan kemudian memasukkan frasa sandi.
Anda kemudian harus mengenkripsinya menggunakan LUKS dengan menjalankan perintah berikut:
Langkah 3: Format Wadah
Untuk container yang dibuat, kita harus memformatnya. Kami menggunakan opsi “mkfs.ext4” dengan menjalankan kode berikut:
sudo mkfs.ext4 / dev / pembuat peta / postgres_enkripsi
Langkah 4: Pasang Kontainer
Selanjutnya, mari kita pasang wadah terenkripsi. Mulailah dengan membuat direktori di /menit/ sebagai berikut:
sudo mkdir / mnt / postgresSetelah direktori dibuat, lanjutkan dan pasang wadah terenkripsi menggunakan perintah “mount” dan tentukan jalurnya.
sudo gunung / dev / pembuat peta / postgres_enkripsi / mnt / postgres /Langkah 5: Pindahkan Data PostgreSQL
Sejauh ini, kami membuat wadah terenkripsi untuk menyimpan data PostgreSQL, namun kami belum memindahkan datanya. Sebelum memindahkan data, kita harus menghentikan layanan PostgreSQL.
sudo systemctl menghentikan postgresqlUntuk memindahkan data PostgreSQL, jalankan perintah “copy” berikut dan pastikan Anda menyalinnya ke direktori yang telah kita buat sebelumnya:
sudo rsync -dari / dulu / lib / postgresql / mnt / postgresSelanjutnya, backup data PostgreSQL asli dengan memindahkannya ke lokasi cadangan.
sudo mv / dulu / lib / postgresql / dulu / lib / postgresql_backup
Anda kemudian perlu membuat tautan simbolik untuk direktori tersebut untuk akses cepat.
Itu dia. Kami berhasil menyalin dan memindahkan data PostgreSQL ke wadah terenkripsi tingkat sistem file untuk memastikan bahwa kami mengamankan data yang disimpan.
Langkah 6: Edit File Konfigurasi PostgreSQL
data_directory dalam file konfigurasi mencerminkan lokasi data PostgreSQL yang berharga. Namun kita harus mengeditnya agar sesuai dengan lokasi data PostgreSQL di container terenkripsi yang kita buat. Jadi, buka file konfigurasi PostgreSQL menggunakan editor teks. Temukan bagian data_directory. Tampilannya seperti berikut ini sebelum kita mengeditnya. Jalurnya mungkin berbeda tergantung pada versi PostgreSQL yang diinstal pada sistem Anda.
Ubah jalur untuk mengarahkan ke wadah terenkripsi yang kita buat pada langkah 4. Dalam kasus kami, jalur baru adalah sebagai berikut:
Langkah 7: Simpan, Keluar, dan Mulai Ulang
Simpan dan keluar dari file konfigurasi PostgreSQL. Selanjutnya, mulai atau mulai ulang PostgreSQL. Anda berhasil mengatur enkripsi data saat istirahat di PostgreSQL.
Itu dia! Anda dapat terus menggunakan PostgreSQL dengan aman dan menikmati enkripsi tingkat sistem file yang baru.
Kesimpulan
Menyiapkan enkripsi data saat tidak aktif di PostgreSQL melibatkan penentuan metode enkripsi apa yang akan digunakan dan kemudian menyiapkannya. Kami memilih enkripsi TDE menggunakan LUKS untuk menyiapkan enkripsi tingkat sistem file. Selain itu, kami merinci setiap langkah yang harus diikuti untuk menyiapkannya. Itu dia! Cobalah dan ikuti langkah-langkah yang disediakan.