Lai gan PostgreSQL nepiedāvā iebūvētas šifrēšanas opcijas, varat iestatīt datu šifrēšanu miera stāvoklī, izmantojot trešās puses šifrēšanas metodes. Šodienas apmācība ir vērsta uz Transparent Data Encryption (TDE) metodes izmantošanu, lai iespējotu failu sistēmas līmeņa šifrēšanu.
Kā iestatīt datu šifrēšanu miera stāvoklī programmā PostgreSQL
Iestatot datu šifrēšanu miera stāvoklī PostgreSQL, mērķis ir padarīt datus nelasāmus failu sistēmā, pieprasot atšifrēšanas atslēgu. Tādā veidā tiek novērsta nesankcionēta piekļuve.
Kad PostgreSQL darbojas jūsu serverī, varat iestatīt failu sistēmas līmeņa šifrēšanu, izmantojot trešās puses rīkus, piemēram, Linux vienotās atslēgas iestatīšanu (LUKS). Jūs varat atrast savai sistēmai piemērotu risinājumu. Šeit mēs strādājam ar Ubuntu un iestatām datu šifrēšanu, veicot šādas darbības.
1. darbība. Instalējiet failu sistēmas šifrēšanas rīku
Kad esat izvēlējies šifrēšanas metodi, jums ir jāinstalē nepieciešamie rīki. Mēs izvēlamies failu sistēmas līmeņa šifrēšanas metodi un instalējam LUKS. Lai instalētu LUKS, instalējiet šifrēšanas iestatījumu šādi:
sudo apt-get install šifrēšanas iestatīšana
Nospiediet “y”, lai turpinātu instalēšanu un nodrošinātu, ka viss tiek instalēts, kā paredzēts.
2. darbība: iestatiet šifrētu konteineru
Tā kā mēs iestatām failu sistēmas līmeņa šifrēšanu, mūsu diskā ir jāizveido šifrēts direktorijs, kurā ir PostgreSQL dati. Pārbaudiet operētājsistēmā pieejamās ierīces, izmantojot šādu komandu:
sudo fdisk -l
Pēc tam atlasiet atbilstošo ierīci un palaidiet šādu komandu. Šeit mēs izmantojam /dev/sdb ierīci. Jums tiks piedāvāts apstiprināt darbību, ierakstot “JĀ” un pēc tam ievadot ieejas frāzi.
Pēc tam jums tas ir jāšifrē, izmantojot LUKS, izpildot šādu komandu:
3. darbība. Formatējiet konteineru
Izveidotajam konteineram tas ir jāformatē. Mēs izmantojam opciju “mkfs.ext4”, izpildot šādu kodu:
sudo mkfs.ext4 / izstrādātājs / kartētājs / postgres_encrypted
4. darbība. Uzstādiet konteineru
Pēc tam uzstādīsim šifrēto konteineru. Sāciet, izveidojot direktoriju mapē /mnt/ sekojoši:
sudo mkdir / mnt / postgresKad direktorijs ir izveidots, turpiniet un pievienojiet šifrēto konteineru, izmantojot komandu “mount” un norādiet ceļu.
sudo mount / izstrādātājs / kartētājs / postgres_encrypted / mnt / postgres /5. darbība: pārvietojiet PostgreSQL datus
Līdz šim mēs esam izveidojuši šifrētu konteineru, lai saglabātu savus PostgreSQL datus, taču mums tie vēl nav jāpārvieto. Pirms datu pārvietošanas mums ir jāpārtrauc PostgreSQL pakalpojums.
sudo systemctl stop postgresqlLai pārvietotu PostgreSQL datus, palaidiet šo komandu “copy” un nokopējiet to iepriekš izveidotajā direktorijā:
sudo rsync -no / bija / lib / postgresql / mnt / postgresPēc tam dublējiet sākotnējos PostgreSQL datus, pārvietojot tos uz dublējuma vietu.
sudo mv / bija / lib / postgresql / bija / lib / postgresql_backup
Pēc tam jums ir jāizveido simboliska saite direktorijai, lai ātri piekļūtu.
Tieši tā. Mums izdevās nokopēt un pārvietot PostgreSQL datus uz mūsu failu sistēmas līmeņa šifrēto konteineru, lai nodrošinātu, ka dati tiek aizsargāti.
6. darbība: rediģējiet PostgreSQL konfigurācijas failu
Data_directory konfigurācijas failā atspoguļo vērtīgo PostgreSQL datu atrašanās vietu. Tomēr mums tas ir jārediģē, lai tas atbilstu PostgreSQL datu atrašanās vietai mūsu izveidotajā šifrētajā konteinerā. Tātad, atveriet PostgreSQL konfigurācijas failu, izmantojot teksta redaktoru. Atrodiet sadaļu data_directory. Pirms rediģēšanas tas parādās, kā parādīts tālāk. Ceļš var atšķirties atkarībā no jūsu sistēmā instalētās PostgreSQL versijas.
Mainiet ceļu, lai novirzītu uz šifrēto konteineru, ko izveidojām 4. darbībā. Mūsu gadījumā jaunais ceļš ir šāds:
7. darbība: saglabājiet, izejiet un restartējiet
Saglabājiet un izejiet no PostgreSQL konfigurācijas faila. Pēc tam palaidiet vai restartējiet PostgreSQL. Jums izdevās iestatīt datu šifrēšanu miera stāvoklī programmā PostgreSQL.
Tieši tā! Varat turpināt droši lietot PostgreSQL un izbaudīt jauno failu sistēmas līmeņa šifrēšanu.
Secinājums
Datu miera šifrēšanas iestatīšana programmā PostgreSQL ietver izmantojamās šifrēšanas metodes noteikšanu un pēc tam tās iestatīšanu. Mēs izvēlējāmies TDE šifrēšanu, izmantojot LUKS, lai iestatītu failu sistēmas līmeņa šifrēšanu. Turklāt mēs detalizēti aprakstījām katru darbību, kas jāveic, lai to iestatītu. Tieši tā! Izmēģiniet to un izpildiet norādītās darbības.