Nors PostgreSQL nesiūlo integruotų šifravimo parinkčių, galite nustatyti ramybės duomenų šifravimą naudodami trečiųjų šalių šifravimo metodus. Šiandienos pamokoje pagrindinis dėmesys skiriamas skaidrių duomenų šifravimo (TDE) metodo naudojimui, kad būtų galima įjungti failų sistemos lygio šifravimą.
Kaip nustatyti duomenų šifravimą ramybės būsenoje „PostgreSQL“.
„PostgreSQL“ nustatant ramybės duomenų šifravimą, reikalaujama iššifravimo rakto, kad failų sistemoje duomenys būtų neįskaitomi. Tokiu būdu pašalinama neteisėta prieiga.
Kai jūsų serveryje veikia PostgreSQL, galite nustatyti failų sistemos lygio šifravimą naudodami trečiosios šalies įrankius, tokius kaip Linux vieningojo rakto sąranka (LUKS). Galite rasti savo sistemai tinkamą sprendimą. Čia mes dirbame su Ubuntu ir nustatome duomenų šifravimą atlikdami šiuos veiksmus.
1 veiksmas: įdiekite failų sistemos šifravimo įrankį
Pasirinkę šifravimo metodą, turite įdiegti reikiamus įrankius. Mes pasirenkame failų sistemos lygio šifravimo metodą ir įdiegiame LUKS. Norėdami įdiegti LUKS, įdiekite kriptovaliutą taip:
sudo apt-get install šifravimo nustatymas
Paspauskite „y“, kad tęstumėte diegimą ir įsitikintumėte, kad viskas įdiegiama taip, kaip tikėtasi.
2 veiksmas: nustatykite šifruotą konteinerį
Kadangi nustatome failų sistemos lygio šifravimą, savo diske turime sukurti šifruotą katalogą, kuriame yra PostgreSQL duomenys. Patikrinkite galimus įrenginius savo operacinėje sistemoje naudodami šią komandą:
sudo fdisk -l
Tada pasirinkite tinkamą įrenginį ir paleiskite šią komandą. Čia mes naudojame /dev/sdb prietaisas. Būsite paraginti patvirtinti veiksmą įvesdami „TAIP“, tada įveskite slaptafrazę.
Tada turite užšifruoti jį naudodami LUKS, vykdydami šią komandą:
3 veiksmas: suformatuokite konteinerį
Sukurtam konteineriui turime jį suformatuoti. Mes naudojame parinktį „mkfs.ext4“, vykdydami šį kodą:
sudo mkfs.ext4 / dev / kartografas / postgres_encrypted
4 veiksmas: sumontuokite konteinerį
Tada pritvirtinkime šifruotą konteinerį. Pradėkite kurdami katalogą /mnt/ taip:
sudo mkdir / mnt / postgresSukūrę katalogą, eikite į priekį ir prijunkite užšifruotą konteinerį naudodami komandą „mount“ ir nurodykite kelią.
sudo kalnas / dev / kartografas / postgres_encrypted / mnt / postgres /5 veiksmas: perkelkite PostgreSQL duomenis
Iki šiol sukūrėme užšifruotą talpyklą, skirtą „PostgreSQL“ duomenims saugoti, tačiau dar turime perkelti duomenis. Prieš perkeldami duomenis, turime sustabdyti PostgreSQL paslaugą.
sudo systemctl sustabdyti postgresqlNorėdami perkelti PostgreSQL duomenis, paleiskite šią komandą „copy“ ir įsitikinkite, kad nukopijavote ją į katalogą, kurį sukūrėme anksčiau:
sudo rsync -apie / buvo / lib / postgresql / mnt / postgresTada sukurkite originalių PostgreSQL duomenų atsarginę kopiją, perkeldami juos į atsarginės kopijos vietą.
sudo mv / buvo / lib / postgresql / buvo / lib / postgresql_backup
Tada turite sukurti simbolinę nuorodą į katalogą, kad galėtumėte greitai pasiekti.
Viskas. Mums pavyko nukopijuoti ir perkelti „PostgreSQL“ duomenis į mūsų failų sistemos lygio šifruotą konteinerį, kad užtikrintume, jog duomenys bus apsaugoti.
6 veiksmas: redaguokite „PostgreSQL“ konfigūracijos failą
Data_directory konfigūracijos faile atspindi vertingą PostgreSQL duomenų vietą. Tačiau turime jį redaguoti, kad atitiktų PostgreSQL duomenų vietą mūsų sukurtame šifruotame konteineryje. Taigi, atidarykite PostgreSQL konfigūracijos failą naudodami teksto rengyklę. Raskite skyrių data_directory. Prieš redaguojant jis atrodo taip, kaip parodyta toliau. Kelias gali skirtis priklausomai nuo jūsų sistemoje įdiegtos PostgreSQL versijos.
Pakeiskite kelią, kad nukreiptumėte į užšifruotą konteinerį, kurį sukūrėme atlikdami 4 veiksmą. Mūsų atveju naujas kelias yra toks:
7 veiksmas: išsaugokite, išeikite ir paleiskite iš naujo
Išsaugokite ir išeikite iš PostgreSQL konfigūracijos failo. Tada paleiskite arba iš naujo paleiskite PostgreSQL. Jums pavyko nustatyti duomenų šifravimą ramybės būsenoje „PostgreSQL“.
Viskas! Galite toliau saugiai naudoti PostgreSQL ir mėgautis nauju failų sistemos lygio šifravimu.
Išvada
Norint nustatyti „PostgreSQL“ duomenų šifravimą ramybės būsenoje, reikia nustatyti, kokį šifravimo metodą naudoti, ir tada jį nustatyti. Mes pasirinkome TDE šifravimą naudodami LUKS, kad nustatytume failų sistemos lygio šifravimą. Be to, išsamiai aprašėme kiekvieną žingsnį, kurį reikia atlikti norint jį nustatyti. Viskas! Išbandykite ir atlikite nurodytus veiksmus.