Sett opp datakryptering i hvile i PostgreSQL

Sett Opp Datakryptering I Hvile I Postgresql



Du må sikre dataene dine når du arbeider med en database. For PostgreSQL er det mulig å sikre dataene i ro. Logikken innebærer å sikre dataene dine mens de er lagret på disken. På den måten vil du ha enda en forsvarslinje for å beskytte dataene dine mot en angriper.

Selv om PostgreSQL ikke tilbyr innebygde krypteringsalternativer, kan du konfigurere datakrypteringen i hvile ved å bruke tredjeparts krypteringsmetoder. Dagens veiledning fokuserer på å bruke Transparent Data Encryption (TDE)-metoden for å aktivere kryptering på filsystemnivå.

Hvordan sette opp datakryptering i hvile i PostgreSQL

Når du setter datakrypteringen i hvile i PostgreSQL, er målet å gjøre dataene uleselige på filsystemet ved å kreve en dekrypteringsnøkkel. På den måten elimineres uautorisert tilgang.







Når PostgreSQL kjører på serveren din, kan du sette opp kryptering på filsystemnivå ved å bruke tredjepartsverktøy som Linux Unified Key Setup (LUKS). Du kan finne den riktige løsningen for systemet ditt. Her jobber vi med Ubuntu og setter opp datakrypteringen ved å bruke følgende trinn.



Trinn 1: Installer filsystemkrypteringsverktøyet

Når du har valgt krypteringsmetoden, må du installere de nødvendige verktøyene. Vi velger krypteringsmetoden på filsystemnivå og installerer LUKS. For å installere LUKS, installer kryptoppsettet som følger:



sudo apt-get install kryptoppsett





Trykk 'y' for å fortsette installasjonen og sikre at alt installeres som forventet.

Trinn 2: Sett opp en kryptert beholder

Siden vi setter opp kryptering på filsystemnivå, må vi lage en kryptert katalog på disken vår som inneholder PostgreSQL-dataene. Sjekk tilgjengelige enheter på operativsystemet ditt med følgende kommando:



sudo fdisk -l

Deretter velger du riktig enhet og kjører følgende kommando. Her bruker vi /dev/sdb enhet. Du vil bli bedt om å bekrefte handlingen ved å skrive 'JA' og deretter angi en passordfrase.

Du må deretter kryptere den ved å bruke LUKS ved å kjøre følgende kommando:

Trinn 3: Formater beholderen

For den opprettede beholderen må vi formatere den. Vi bruker alternativet 'mkfs.ext4' ved å kjøre følgende kode:

sudo mkfs.ext4 / dev / kartlegger / postgres_encrypted

Trinn 4: Monter beholderen

La oss deretter montere den krypterte beholderen. Start med å lage en katalog i /mnt/ følgende:

sudo mkdir / mnt / postgres

Når katalogen er opprettet, fortsett og monter den krypterte beholderen ved å bruke 'mount'-kommandoen og spesifiser banen.

sudo montere / dev / kartlegger / postgres_encrypted / mnt / postgres /

Trinn 5: Flytt PostgreSQL-dataene

Så langt har vi laget en kryptert beholder for å lagre PostgreSQL-dataene våre, men vi har ennå ikke flyttet dataene. Før vi flytter dataene, må vi stoppe PostgreSQL-tjenesten.

sudo systemctl stopp postgresql

For å flytte PostgreSQL-dataene, kjør følgende 'copy'-kommando og sørg for at du kopierer den til katalogen vi opprettet tidligere:

sudo rsync -av / var / lib / postgresql / mnt / postgres

Deretter sikkerhetskopierer du de originale PostgreSQL-dataene ved å flytte dem til en sikkerhetskopiplassering.

sudo mv / var / lib / postgresql / var / lib / postgresql_backup


Du må deretter opprette en symbolsk lenke for katalogen for rask tilgang.

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

Det er det. Vi klarte å kopiere og flytte PostgreSQL-dataene til vår krypterte beholder på filsystemnivå for å sikre at vi sikrer dataene i ro.

Trinn 6: Rediger PostgreSQL-konfigurasjonsfilen

Data_katalogen i konfigurasjonsfilen gjenspeiler den dyrebare PostgreSQL-dataplasseringen. Vi må imidlertid redigere den for å matche plasseringen til PostgreSQL-dataene i den krypterte beholderen vi opprettet. Så åpne PostgreSQL-konfigurasjonsfilen ved hjelp av et tekstredigeringsprogram. Finn datakatalogdelen. Det vises som vist i det følgende før vi redigerer det. Banen kan variere avhengig av PostgreSQL-versjonen som er installert på systemet ditt.

Endre banen for å lede til den krypterte beholderen som vi opprettet i trinn 4. I vårt tilfelle er den nye banen som følger:

Trinn 7: Lagre, avslutt og start på nytt

Lagre og avslutt PostgreSQL-konfigurasjonsfilen. Deretter starter eller starter du PostgreSQL på nytt. Du klarte å sette opp datakrypteringen i hvile i PostgreSQL.

Det er det! Du kan fortsette å bruke PostgreSQL sikkert og nyte den nye krypteringen på filsystemnivå.

Konklusjon

Å sette opp datakrypteringen i hvile i PostgreSQL innebærer å bestemme hvilken krypteringsmetode som skal brukes og deretter sette den opp. Vi valgte TDE-kryptering ved å bruke LUKS for å sette opp en kryptering på filsystemnivå. Dessuten har vi detaljert hvert trinn som skal følges for å konfigurere det. Det er det! Prøv det ut og følg de angitte trinnene.