GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Installieren Sie PostgreSQL auf einem Ubuntu-Server für Sicherheitskonfigurationen

Planen Sie die Installation von PostgreSQL auf einem Ubuntu-Server und sind sich nicht sicher, wo Sie anfangen sollen? Suchen Sie nicht weiter, denn Sie haben Glück. In diesem Tutorial lernen Sie die verschiedenen Möglichkeiten kennen, einen PostgreSQL-Ubuntu-Server zu installieren und grundlegende Sicherheitskonfigurationen durchzuführen, um Ihnen den Einstieg zu erleichtern.

Lesen Sie weiter, und Sie werden in kürzester Zeit einen PostgreSQL-Server betreiben!

Voraussetzungen

Dieses Tutorial wird eine praktische Demonstration sein. Wenn Sie mitmachen möchten, stellen Sie sicher, dass Sie Folgendes haben.

  • Ein Ubuntu-Server. Dieses Tutorial verwendet Ubuntu 20.04.
  • Ein Nicht-Root-Benutzerkonto mit sudo-Berechtigungen.

Installieren Sie PostgreSQL auf einem Ubuntu

Beginnend mit einer neuen Ubuntu-Serverinstallation können Sie PostgreSQL auf zwei Arten installieren. Für welche Methode Sie sich entscheiden, hängt davon ab, ob Sie die Bequemlichkeit (weniger Schritte) bevorzugen oder sicherstellen möchten, dass Sie die neueste Version haben.

Methode 1:Installieren Sie PostgreSQL auf einem Ubuntu (aus dem Ubuntu-Repository)

Standardmäßig enthalten die Repositorys von Ubuntu Postgres-Pakete, was bedeutet, dass Sie PostgreSQL-Ubuntu-Pakete mit dem Advanced Package Tool (APT) installieren können .

Die Postgres-Pakete in den Ubuntu-Repositorys sind möglicherweise nicht immer die neuesten Versionen. Wenn Sie stattdessen lieber die neueste Version installieren möchten, fahren Sie mit Methode 2 fort.

1. Öffnen Sie zunächst ein Terminalfenster auf Ihrem Computer und verbinden Sie sich per SSH mit Ihrem Ubuntu-Server.

2. Führen Sie als Nächstes den folgenden Befehl aus, um die Paketliste auf Ihrem Ubuntu-Server zu aktualisieren.

sudo apt update -y

3. Installieren Sie die PostgreSQL-Pakete, indem Sie den folgenden Befehl ausführen. Dieser Befehl installiert auch postgresql-contrib (zusätzliche Postgres-Funktionen) und postgresql-client (Postgres-CLI).

sudo apt install -y postgresql postgresql-contrib postgresql-client

4. Überprüfen Sie nach der Installation den Installationsstatus von Postgres, indem Sie den folgenden Befehl ausführen.

sudo dpkg --status postgresql

Wie Sie unten sehen können, ist die neueste Version, die zum Zeitpunkt dieses Schreibens aus dem Ubuntu-Repository installiert wurde, Version 12.

Methode 2:Installieren Sie PostgreSQL auf Ubuntu (aus dem offiziellen Repository)

Die Installation von PostgreSQL aus dem offiziellen Repository stellt sicher, dass Sie die neueste Version erhalten. Aber diese Installationsmethode erfordert mehr Schritte im Vergleich zur Installation mit APT.

1. Öffnen Sie zunächst ein Terminalfenster auf Ihrem Computer und verbinden Sie sich per SSH mit Ihrem Ubuntu-Server.

2. Führen Sie den folgenden Befehl aus, um eine Datei namens /etc/apt/sources.list.d/pgdg.list zu erstellen . Diese Datei enthält die Adresse des offiziellen PostgreSQL-Repositorys, die für Ihre Ubuntu-Serverversion spezifisch ist.

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

3. Führen Sie als Nächstes den folgenden Befehl aus, um den PostgreSQL-GPG-Schlüssel zu Ihrem Paketmanager hinzuzufügen. APT verwendet diesen Schlüssel, um die Authentizität der Pakete im Repository zu überprüfen.

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

Sie sehen eine OK-Antwort, wenn das Hinzufügen des Schlüssels erfolgreich war.

4. Aktualisieren Sie nun die Paketlisten, sodass apt weiß, wo die offiziellen PostgreSQL-Pakete zu finden sind.

sudo apt update -y

Wie Sie unten sehen können, enthält der Befehl jetzt die Adresse des offiziellen PostgreSQL-Repositorys, wenn nach Paketen gesucht wird.

5. Installieren Sie PostgreSQL unter Ubuntu, indem Sie den folgenden Befehl ausführen. Warten Sie, bis die Installation abgeschlossen ist.

sudo apt install -y postgresql postgresql-contrib postgresql-client

6. Bestätigen Sie die PostgreSQL-Version, die Sie aus dem offiziellen Repository installiert haben, indem Sie den folgenden Befehl ausführen.

sudo dpkg --status postgresql

Wie Sie unten sehen können, ist die Version aus dem offiziellen Repository zum jetzigen Zeitpunkt Version 14.

Starten und Überprüfen des PostgreSQL-Dienstes

Führen Sie nach Abschluss der Installation den folgenden systemctl aus Befehl zum Starten des PostgreSQL-Dienstes.

sudo systemctl start postgresql.service

Überprüfen Sie abschließend den PostgreSQL-Status, indem Sie den folgenden Befehl ausführen.

sudo systemctl status postgresql.service

Der Dienststatus sollte active sein , wie im Bild unten gezeigt.

Sichern des standardmäßigen PostgreSQL-Benutzers und Aktivieren der Passwortverschlüsselung

Die PostgreSQL-Installation erstellt ein Standardbenutzerkonto namens postgres die vollständigen administrativen Zugriff auf PostgreSQL hat. Dieses spezielle Konto hat jedoch kein Passwort. Jeder Benutzer, der sich beim Ubuntu-Server anmelden kann, kann als postgres auf PostgreSQL zugreifen Benutzer ohne Angabe eines Passworts.

In Anbetracht dessen, dass die postgres Konto ungeschützt ist, sollten Sie als Erstes ein neues Passwort festlegen. Gehen Sie dazu wie folgt vor.

1. Melden Sie sich bei der PostgreSQL-Shell an (psql ), indem Sie den folgenden Befehl ausführen.

sudo -u postgres psql

Wie Sie unten sehen können, kann jeder Benutzer, der sich beim Ubuntu-Server anmelden kann, auch ohne Angabe eines Passworts auf die PostgreSQL-Datenbank zugreifen.

2. Führen Sie an der Eingabeaufforderung den folgenden Befehl aus, um eine Kennwortänderung einzuleiten. Geben Sie ein sicheres Passwort Ihrer Wahl ein und drücken Sie die Eingabetaste.

\password

3. Nachdem Sie das neue Passwort festgelegt haben, geben Sie \q ein und drücken Sie die Eingabetaste, um psql zu verlassen Schale.

4. Standardmäßig sendet PostgreSQL Passwörter im Klartext, was ein Sicherheitsrisiko darstellen kann. Um diesen potenziellen Angriffsvektor zu korrigieren, ändern Sie die PostgreSQL-Passwort-Authentifizierungsmethode zu einem gesicherten wie md5 .

Öffnen Sie die /etc/postgresql/12/main/pg_hba.conf Datei in Nano zum Bearbeiten. Diese Datei ist die Hauptkonfigurationsdatei für die Authentifizierungsmethoden von PostgreSQL.

sudo nano /etc/postgresql/12/main/pg_hba.conf

5. Suchen Sie die Zeile, die wie folgt lautet.

# Database administrative login by Unix domain socket
local   all             postgres                                peer

Sobald Sie die Zeile gefunden haben, ersetzen Sie das Wort peer durch md5. Nach dem Bearbeiten der Zeile sollte Ihre Datei nun wie das folgende Bild aussehen. Zuletzt speichern Sie die Datei und beenden Sie den Editor.

Die md5-Authentifizierungsmethode verwendet einen Message-Digest-Algorithmus, um das Passwort zu verschlüsseln, bevor es an den Server gesendet wird.

6. Starten Sie den PostgreSQL-Server neu, damit die Änderungen wirksam werden.

sudo systemctl restart postgresql

7. Verbinden Sie sich erneut mit dem PostgreSQL-Server als postgres Benutzer.

sudo -u postgres psql

Geben Sie das Passwort an der Eingabeaufforderung ein und drücken Sie die Eingabetaste.

Erstellen und Löschen einer PostgreSQL-Datenbank

Nachdem Sie Ihren PostgreSQL-Server installiert und konfiguriert haben, können Sie nun mit dem Erstellen einer Datenbank beginnen. Was ist schließlich ein RDBMS ohne Datenbank? Führen Sie die folgenden Schritte aus, um Ihren Server zu testen, indem Sie eine Datenbank erstellen und löschen.

1. Melden Sie sich bei der PostgreSQL-Shell an (psql ), falls noch nicht geschehen.

2. Führen Sie den folgenden Befehl aus, um eine neue Datenbank namens ata_db zu erstellen .

Siehe PostgreSQL-Dokumentation um mehr über die Datenbank und die verschiedenen Datentypen zu erfahren.

CREATE DATABASE ata_db;

3. Bestätigen Sie als Nächstes, dass Sie die Datenbank erfolgreich erstellt haben, indem Sie alle verfügbaren Datenbanken auf dem Server auflisten.

\l

Wie Sie unten sehen können, existiert die neue Datenbank mit dem Namen ata_db, die Sie im vorherigen Schritt erstellt haben, jetzt auf dem Server.

4. Führen Sie den folgenden Befehl aus, um eine Verbindung zu ata_db herzustellen Datenbank.

\c ata_db;

Das folgende Bild bestätigt, dass die Verbindung mit der neuen Datenbank erfolgreich war. Sie können eine Statusmeldung sehen, mit der Sie sich verbunden haben und mit welchem ​​Benutzerkonto.

Sie können jetzt Tabellen erstellen und führen Sie das Erstellen durch , lesen , aktualisieren , und löschen (CRUD)-Aktionen in der Datenbank.

5. Wenn Sie die Datenbank irgendwann nicht mehr benötigen und löschen müssen, führen Sie die folgenden Befehle in psql aus um die Datenbank zu löschen.

Die erste Zeile trennt die Verbindung zur ata_db-Datenbank, indem die aktive Verbindung zur standardmäßigen Postgres-Datenbank umgeschaltet wird. Sie können eine Datenbank nicht löschen, wenn sie geöffnet ist.

Die zweite Zeile löscht die Datenbank.

\c postgres
DROP DATABASE ata_db;

6. Listen Sie abschließend noch einmal alle Datenbanken auf Ihrem PostgreSQL-Server auf. Sie werden sehen, dass die ata_db Datenbank existiert nicht mehr, wie unten gezeigt.

\l

Sie werden sehen, dass die ata_db-Datenbank nicht mehr existiert, wie unten gezeigt.

Schlussfolgerung

In diesem Tutorial haben Sie gelernt, wie Sie PostgreSQL auf einem Ubuntu-Server installieren und grundlegende Sicherheitseinstellungen konfigurieren. Außerdem haben Sie gelernt, wie Sie eine neue Datenbank auf Ihrem PostgreSQL-Server erstellen, verbinden und löschen.

Denken Sie daran, dass das, was Sie hier gelernt haben, nur die Grundlagen sind. Mit PostgreSQL können Sie noch mehr tun, z. B. die Konfiguration der SSL-Zertifikat-basierten Authentifizierung , Erstellen neuer Datenbankbenutzer und Einrichten der Replikation.

Mit diesem neuen Wissen sind Sie jetzt besser in der Lage, PostgreSQL in Ihren Anwendungen zu verwenden .


Linux
  1. So installieren Sie PostgreSQL und pgAdmin4 unter Ubuntu 20.04

  2. So installieren Sie PostgreSQL unter Ubuntu 16.04

  3. Graylog-Überwachungsserver unter Ubuntu Linux für Überwachungsserver/-dienste

  4. So installieren Sie auf einem Ubuntu-Server

  5. So installieren Sie einen PostgreSQL-Server unter Ubuntu 18.04

So installieren Sie Mumble Server unter Ubuntu 15.04

So installieren Sie NGINX unter Ubuntu 20.04

So installieren Sie Ansible Server unter Ubuntu 18.04

So installieren Sie TimescaleDB unter Ubuntu 18.04

So installieren Sie XWiki unter Ubuntu 20.04

So installieren Sie ClickHouse unter Ubuntu 20.04