Sediakan Penyulitan Data semasa Rehat dalam PostgreSQL

Sediakan Penyulitan Data Semasa Rehat Dalam Postgresql



Anda mesti melindungi data anda setiap kali anda bekerja dengan mana-mana pangkalan data. Untuk PostgreSQL, adalah mungkin untuk melindungi data dalam keadaan rehat. Logiknya melibatkan keselamatan data anda semasa ia disimpan pada cakera. Dengan cara itu, anda akan mempunyai satu lagi barisan pertahanan untuk melindungi data anda daripada penyerang.

Walaupun PostgreSQL tidak menawarkan pilihan penyulitan terbina dalam, anda boleh menyediakan penyulitan data semasa rehat menggunakan kaedah penyulitan pihak ketiga. Tutorial hari ini memberi tumpuan kepada menggunakan kaedah Penyulitan Data Telus (TDE) untuk mendayakan penyulitan peringkat sistem fail.

Bagaimana untuk Menetapkan Penyulitan Data semasa Rehat dalam PostgreSQL

Apabila menetapkan penyulitan data dalam keadaan rehat dalam PostgreSQL, matlamatnya adalah untuk menjadikan data tidak boleh dibaca pada sistem fail dengan memerlukan kunci penyahsulitan. Dengan cara itu, akses yang tidak dibenarkan dihapuskan.







Apabila PostgreSQL berjalan pada pelayan anda, anda boleh menyediakan penyulitan peringkat sistem fail menggunakan alat pihak ketiga seperti Linux Unified Key Setup (LUKS). Anda boleh mencari penyelesaian yang sesuai untuk sistem anda. Di sini, kami bekerja dengan Ubuntu dan menyediakan penyulitan data menggunakan langkah berikut.



Langkah 1: Pasang Alat Penyulitan Sistem Fail

Sebaik sahaja anda memilih kaedah penyulitan, anda mesti memasang alat yang diperlukan. Kami memilih kaedah penyulitan peringkat sistem fail dan memasang LUKS. Untuk memasang LUKS, pasang cryptsetup seperti berikut:



sudo apt-get install cryptsetup





Tekan 'y' untuk meneruskan pemasangan dan memastikan semuanya dipasang seperti yang diharapkan.

Langkah 2: Sediakan Bekas Disulitkan

Memandangkan kami menyediakan penyulitan peringkat sistem fail, kami mesti mencipta direktori yang disulitkan pada cakera kami yang mengandungi data PostgreSQL. Semak peranti yang tersedia pada sistem pengendalian anda dengan arahan berikut:



sudo fdisk -l

Seterusnya, pilih peranti yang sesuai dan jalankan arahan berikut. Di sini, kami menggunakan /dev/sdb peranti. Anda akan digesa untuk mengesahkan tindakan dengan menaip 'YA' dan kemudian masukkan frasa laluan.

Anda kemudian mesti menyulitkannya menggunakan LUKS dengan menjalankan arahan berikut:

Langkah 3: Formatkan Bekas

Untuk bekas yang dibuat, kita mesti memformatkannya. Kami menggunakan pilihan 'mkfs.ext4' dengan menjalankan kod berikut:

sudo mkfs.ext4 / dev / pemeta / postgres_encrypted

Langkah 4: Pasangkan Bekas

Seterusnya, mari lekapkan bekas yang disulitkan. Mulakan dengan mencipta direktori dalam /mnt/ seperti berikut:

sudo mkdir / mnt / postgres

Setelah direktori dibuat, teruskan dan lekapkan bekas yang disulitkan menggunakan arahan 'mount' dan tentukan laluan.

sudo lekapkan / dev / pemeta / postgres_encrypted / mnt / postgres /

Langkah 5: Alihkan Data PostgreSQL

Setakat ini, kami mencipta bekas yang disulitkan untuk menyimpan data PostgreSQL kami, tetapi kami masih belum mengalihkan data tersebut. Sebelum memindahkan data, kita mesti menghentikan perkhidmatan PostgreSQL.

sudo systemctl hentikan postgresql

Untuk mengalihkan data PostgreSQL, jalankan arahan 'salin' berikut dan pastikan anda menyalinnya ke direktori yang kami buat sebelum ini:

sudo rsync -daripada / adalah / lib / postgresql / mnt / postgres

Seterusnya, sandarkan data PostgreSQL asal dengan mengalihkannya ke lokasi sandaran.

sudo mv / adalah / lib / postgresql / adalah / lib / postgresql_backup


Anda kemudiannya perlu mencipta pautan simbolik untuk direktori untuk akses pantas.

sudo ln -s / mnt / postgres / postgresql / adalah / lib / postgresql

itu sahaja. Kami berjaya menyalin dan mengalihkan data PostgreSQL ke bekas disulitkan peringkat sistem fail kami untuk memastikan kami melindungi data dalam keadaan rehat.

Langkah 6: Edit Fail Konfig PostgreSQL

Direktori_data dalam fail konfigurasi mencerminkan lokasi data PostgreSQL yang berharga. Walau bagaimanapun, kami mesti mengeditnya agar sepadan dengan lokasi data PostgreSQL dalam bekas yang disulitkan yang kami buat. Jadi, buka fail konfigurasi PostgreSQL menggunakan editor teks. Cari bahagian data_directory. Ia kelihatan seperti yang ditunjukkan dalam berikut sebelum kami mengeditnya. Laluan mungkin berbeza bergantung pada versi PostgreSQL yang dipasang pada sistem anda.

Tukar laluan untuk menghala ke bekas yang disulitkan yang kami buat dalam langkah 4. Dalam kes kami, laluan baharu adalah seperti berikut:

Langkah 7: Simpan, Keluar dan Mulakan Semula

Simpan dan keluar dari fail konfigurasi PostgreSQL. Seterusnya, mulakan atau mulakan semula PostgreSQL. Anda berjaya menyediakan penyulitan data dalam keadaan rehat dalam PostgreSQL.

Itu sahaja! Anda boleh terus menggunakan PostgreSQL dengan selamat dan menikmati penyulitan peringkat sistem fail baharu.

Kesimpulan

Menyediakan penyulitan data dalam keadaan rehat dalam PostgreSQL melibatkan penentuan kaedah penyulitan yang hendak digunakan dan kemudian menyediakannya. Kami memilih penyulitan TDE menggunakan LUKS untuk menyediakan penyulitan peringkat sistem fail. Selain itu, kami memperincikan setiap langkah yang perlu diikuti untuk menyediakannya. Itu sahaja! Cubalah dan ikuti langkah yang disediakan.