Richten Sie die Datenverschlüsselung im Ruhezustand in PostgreSQL ein

Richten Sie Die Datenverschlusselung Im Ruhezustand In Postgresql Ein



Sie müssen Ihre Daten schützen, wann immer Sie mit einer Datenbank arbeiten. Für PostgreSQL ist es möglich, die Daten im Ruhezustand zu sichern. Die Logik besteht darin, Ihre Daten zu sichern, während sie auf der Festplatte gespeichert sind. Auf diese Weise verfügen Sie über eine weitere Verteidigungslinie, um Ihre Daten vor einem Angreifer zu schützen.

Obwohl PostgreSQL keine integrierten Verschlüsselungsoptionen bietet, können Sie die Datenverschlüsselung im Ruhezustand mithilfe der Verschlüsselungsmethoden von Drittanbietern einrichten. Das heutige Tutorial konzentriert sich auf die Verwendung der TDE-Methode (Transparent Data Encryption), um die Verschlüsselung auf Dateisystemebene zu ermöglichen.

So richten Sie die Datenverschlüsselung im Ruhezustand in PostgreSQL ein

Beim Festlegen der Datenverschlüsselung im Ruhezustand in PostgreSQL besteht das Ziel darin, die Daten im Dateisystem unlesbar zu machen, indem ein Entschlüsselungsschlüssel erforderlich ist. Auf diese Weise wird ein unbefugter Zugriff ausgeschlossen.







Wenn PostgreSQL auf Ihrem Server ausgeführt wird, können Sie die Verschlüsselung auf Dateisystemebene mit Tools von Drittanbietern wie dem Linux Unified Key Setup (LUKS) einrichten. Bei uns finden Sie die passende Lösung für Ihr System. Hier arbeiten wir mit Ubuntu und richten die Datenverschlüsselung mit den folgenden Schritten ein.



Schritt 1: Installieren Sie das Filesystem Encryption Tool

Nachdem Sie die Verschlüsselungsmethode ausgewählt haben, müssen Sie die erforderlichen Tools installieren. Wir wählen die Verschlüsselungsmethode auf Dateisystemebene und installieren LUKS. Um LUKS zu installieren, installieren Sie das Cryptsetup wie folgt:



Sudo apt-get installieren cryptsetup





Drücken Sie „y“, um die Installation fortzusetzen und sicherzustellen, dass alles wie erwartet installiert wird.

Schritt 2: Richten Sie einen verschlüsselten Container ein

Da wir die Verschlüsselung auf Dateisystemebene einrichten, müssen wir auf unserer Festplatte ein verschlüsseltes Verzeichnis erstellen, das die PostgreSQL-Daten enthält. Überprüfen Sie die verfügbaren Geräte auf Ihrem Betriebssystem mit dem folgenden Befehl:



Sudo fdisk -l

Wählen Sie als Nächstes das entsprechende Gerät aus und führen Sie den folgenden Befehl aus. Hier verwenden wir die /dev/sdb Gerät. Sie werden aufgefordert, die Aktion zu bestätigen, indem Sie „JA“ eingeben und dann eine Passphrase eingeben.

Anschließend müssen Sie es mit LUKS verschlüsseln, indem Sie den folgenden Befehl ausführen:

Schritt 3: Formatieren Sie den Container

Für den erstellten Container müssen wir ihn formatieren. Wir verwenden die Option „mkfs.ext4“, indem wir den folgenden Code ausführen:

Sudo mkfs.ext4 / Entwickler / Mapper / postgres_encrypted

Schritt 4: Montieren Sie den Container

Als nächstes mounten wir den verschlüsselten Container. Erstellen Sie zunächst ein Verzeichnis im /mnt/ wie folgt:

Sudo mkdir / mnt / postgres

Sobald das Verzeichnis erstellt ist, mounten Sie den verschlüsselten Container mit dem Befehl „mount“ und geben Sie den Pfad an.

Sudo montieren / Entwickler / Mapper / postgres_encrypted / mnt / postgres /

Schritt 5: Verschieben Sie die PostgreSQL-Daten

Bisher haben wir einen verschlüsselten Container zum Speichern unserer PostgreSQL-Daten erstellt, müssen die Daten jedoch noch verschieben. Bevor wir die Daten verschieben, müssen wir den PostgreSQL-Dienst stoppen.

Sudo systemctl postgresql stoppen

Um die PostgreSQL-Daten zu verschieben, führen Sie den folgenden „Kopieren“-Befehl aus und stellen Sie sicher, dass Sie sie in das zuvor erstellte Verzeichnis kopieren:

Sudo rsync -von / War / lib / postgresql / mnt / postgres

Sichern Sie als Nächstes die ursprünglichen PostgreSQL-Daten, indem Sie sie an einen Sicherungsort verschieben.

Sudo mv / War / lib / postgresql / War / lib / postgresql_backup


Anschließend müssen Sie für einen schnellen Zugriff einen symbolischen Link für das Verzeichnis erstellen.

Sudo ln -S / mnt / postgres / postgresql / War / lib / postgresql

Das ist es. Es ist uns gelungen, die PostgreSQL-Daten zu kopieren und in unseren verschlüsselten Container auf Dateisystemebene zu verschieben, um sicherzustellen, dass wir die Daten im Ruhezustand schützen.

Schritt 6: Bearbeiten Sie die PostgreSQL-Konfigurationsdatei

Das Datenverzeichnis in der Konfigurationsdatei spiegelt den wertvollen PostgreSQL-Datenspeicherort wider. Wir müssen es jedoch bearbeiten, damit es mit dem Speicherort der PostgreSQL-Daten in dem von uns erstellten verschlüsselten Container übereinstimmt. Öffnen Sie also die PostgreSQL-Konfigurationsdatei mit einem Texteditor. Suchen Sie den Abschnitt data_directory. Es sieht wie im Folgenden gezeigt aus, bevor wir es bearbeiten. Der Pfad kann je nach der auf Ihrem System installierten PostgreSQL-Version unterschiedlich sein.

Ändern Sie den Pfad so, dass er zu dem verschlüsselten Container führt, den wir in Schritt 4 erstellt haben. In unserem Fall lautet der neue Pfad wie folgt:

Schritt 7: Speichern, beenden und neu starten

Speichern und beenden Sie die PostgreSQL-Konfigurationsdatei. Als nächstes starten oder starten Sie PostgreSQL neu. Sie haben es geschafft, die Datenverschlüsselung im Ruhezustand in PostgreSQL einzurichten.

Das ist es! Sie können PostgreSQL weiterhin sicher verwenden und die neue Verschlüsselung auf Dateisystemebene genießen.

Abschluss

Zum Einrichten der Datenverschlüsselung im Ruhezustand in PostgreSQL müssen Sie festlegen, welche Verschlüsselungsmethode verwendet werden soll, und diese dann einrichten. Wir haben die TDE-Verschlüsselung mit LUKS ausgewählt, um eine Verschlüsselung auf Dateisystemebene einzurichten. Darüber hinaus haben wir jeden Schritt detailliert beschrieben, der zur Einrichtung erforderlich ist. Das ist es! Probieren Sie es aus und befolgen Sie die angegebenen Schritte.