Configura la crittografia dei dati inattivi in ​​PostgreSQL

Configura La Crittografia Dei Dati Inattivi In Postgresql



Devi proteggere i tuoi dati ogni volta che lavori con qualsiasi database. Per PostgreSQL, è possibile proteggere i dati inattivi. La logica prevede la protezione dei dati mentre sono archiviati sul disco. In questo modo avrai una linea di difesa in più per proteggere i tuoi dati da un utente malintenzionato.

Sebbene PostgreSQL non offra opzioni di crittografia integrate, puoi impostare la crittografia dei dati inattivi utilizzando metodi di crittografia di terze parti. Il tutorial di oggi si concentra sull'utilizzo del metodo Transparent Data Encryption (TDE) per abilitare la crittografia a livello di file system.

Come impostare la crittografia dei dati a riposo in PostgreSQL

Quando si imposta la crittografia dei dati inattivi in ​​PostgreSQL, l'obiettivo è rendere i dati illeggibili sul filesystem richiedendo una chiave di decrittografia. In questo modo si elimina l’accesso non autorizzato.







Quando PostgreSQL è in esecuzione sul tuo server, puoi impostare la crittografia a livello di file system utilizzando strumenti di terze parti come Linux Unified Key Setup (LUKS). Puoi trovare la soluzione adatta al tuo sistema. Qui stiamo lavorando con Ubuntu e configuriamo la crittografia dei dati utilizzando i seguenti passaggi.



Passaggio 1: installare lo strumento di crittografia del file system

Una volta selezionato il metodo di crittografia, è necessario installare gli strumenti richiesti. Selezioniamo il metodo di crittografia a livello di file system e installiamo LUKS. Per installare LUKS, installare cryptsetup come segue:



sudo apt-get install cryptsetup





Premi 'y' per continuare l'installazione e assicurarti che tutto venga installato come previsto.

Passaggio 2: imposta un contenitore crittografato

Poiché stiamo configurando la crittografia a livello di file system, dobbiamo creare una directory crittografata sul nostro disco che contenga i dati PostgreSQL. Controlla i dispositivi disponibili sul tuo sistema operativo con il seguente comando:



sudo fdisk -l

Successivamente, seleziona il dispositivo appropriato ed esegui il comando seguente. Qui usiamo il /dev/sdb dispositivo. Ti verrà richiesto di confermare l'azione digitando 'SÌ' e quindi inserendo una passphrase.

È quindi necessario crittografarlo utilizzando LUKS eseguendo il comando seguente:

Passaggio 3: formattare il contenitore

Per il contenitore creato, dobbiamo formattarlo. Usiamo l'opzione 'mkfs.ext4' eseguendo il seguente codice:

sudo mkfs.ext4 / dev / mappatore / postgres_crittografato

Passaggio 4: montare il contenitore

Successivamente, montiamo il contenitore crittografato. Inizia creando una directory nel file /mnt/ come segue:

sudo mkdir / mnt / postgres

Una volta creata la directory, vai avanti e monta il contenitore crittografato utilizzando il comando 'mount' e specifica il percorso.

sudo montare / dev / mappatore / postgres_crittografato / mnt / postgres /

Passaggio 5: spostare i dati PostgreSQL

Finora abbiamo creato un contenitore crittografato per archiviare i nostri dati PostgreSQL, ma dobbiamo ancora spostare i dati. Prima di spostare i dati, dobbiamo arrestare il servizio PostgreSQL.

sudo systemctl interrompe postgresql

Per spostare i dati PostgreSQL, esegui il seguente comando 'copia' e assicurati di copiarlo nella directory che abbiamo creato in precedenza:

sudo rsync -Di / era / lib / postgresql / mnt / postgres

Successivamente, esegui il backup dei dati PostgreSQL originali spostandoli in una posizione di backup.

sudo mv / era / lib / postgresql / era / lib / postgresql_backup


È quindi necessario creare un collegamento simbolico alla directory per un accesso rapido.

sudo ln -S / mnt / postgres / postgresql / era / lib / postgresql

Questo è tutto. Siamo riusciti a copiare e spostare i dati PostgreSQL nel nostro contenitore crittografato a livello di file system per garantire la protezione dei dati inattivi.

Passaggio 6: modifica il file di configurazione PostgreSQL

La directory_dati nel file di configurazione riflette la preziosa posizione dei dati PostgreSQL. Tuttavia, dobbiamo modificarlo in modo che corrisponda alla posizione dei dati PostgreSQL nel contenitore crittografato che abbiamo creato. Quindi, apri il file di configurazione PostgreSQL utilizzando un editor di testo. Individua la sezione data_directory. Appare come mostrato di seguito prima di modificarlo. Il percorso potrebbe differire a seconda della versione di PostgreSQL installata sul tuo sistema.

Modifica il percorso per indirizzarlo al contenitore crittografato che abbiamo creato nel passaggio 4. Nel nostro caso, il nuovo percorso è il seguente:

Passaggio 7: salva, esci e riavvia

Salva ed esci dal file di configurazione PostgreSQL. Successivamente, avvia o riavvia PostgreSQL. Sei riuscito a configurare la crittografia dei dati inattivi in ​​PostgreSQL.

Questo è tutto! Puoi continuare a utilizzare PostgreSQL in modo sicuro e goderti la nuova crittografia a livello di file system.

Conclusione

L'impostazione della crittografia dei dati inattivi in ​​PostgreSQL implica determinare quale metodo di crittografia utilizzare e quindi configurarlo. Abbiamo selezionato la crittografia TDE utilizzando LUKS per impostare una crittografia a livello di file system. Inoltre, abbiamo dettagliato ogni passaggio da seguire per configurarlo. Questo è tutto! Provalo e segui i passaggi forniti.