Vyhledávání na webu

Jak nainstalovat databázi PostgreSQL v Debianu 10


PostgreSQL (někdy označovaný jako Postgres) je nejpokročilejší open source univerzální a objektově relační databázový systém s osvědčenou architekturou, který běží na všech hlavních operačních systémech. Jedná se o vysoce výkonný, stabilní, škálovatelný a rozšiřitelný databázový systém, který poskytuje úžasnou integritu dat a podporuje výkonné doplňky.

Důležité je, že PostgreSQL vám umožňuje definovat vlastní datové typy, přidávat vlastní funkce a dokonce psát kód z různých programovacích jazyků, jako je C/C++, Java atd., aniž byste museli znovu kompilovat databázi.

PostgreSQL používají známé technologické společnosti jako Apple, Fujitsu, Red Hat, Cisco, Juniper Network atd.

V tomto článku vám ukážeme, jak nainstalovat, zabezpečit a nakonfigurovat databázový server PostgreSQL v Debianu 10.

Požadavek:

  1. Nainstalujte Debian 10 (Buster) Minimal Server

Instalace PostgreSQL serveru na Debian 10

Pro instalaci databázového serveru PostgreSQL použijte výchozího správce balíčků APT, který nainstaluje server a klienta PostgreSQL 11.

apt install postgresql-11 postgresql-client-11

V Debianu, stejně jako u všech ostatních démonů, je databáze Postgres inicializována ihned po dokončení instalace balíčku, jak ukazuje následující snímek obrazovky.

Chcete-li zkontrolovat, zda je databáze Postgres skutečně inicializována, můžete použít nástroj pg_isready, který kontroluje stav připojení serveru PostgreSQL, a to následovně.

pg_isready 

Kromě toho pod systemd se služba Postgres také spouští automaticky a umožňuje spuštění při startu systému. Chcete-li se ujistit, že služba funguje správně, spusťte následující příkaz.

systemctl status postgresql

Následují další užitečné příkazy systemctl pro správu služby Postgres pod systemd.

systemctl start postgresql
systemctl restart postgresql
systemctl stop postgresql
systemctl reload postgresql 		#this reloads the service configuration

Zabezpečení a konfigurace databáze PostgreSQL

Ve výchozím nastavení Postgres používá ke správě přístupových oprávnění k databázi koncept rolí a databázové role jsou koncepčně zcela odděleny od uživatelů operačního systému. Role může být uživatel nebo skupina a role, která má právo přihlášení, se nazývá uživatel.

Čerstvě inicializovaný systém vždy obsahuje jednu předdefinovanou roli s názvem postgres, má stejný název jako uživatelský účet operačního systému s názvem postgres, který se používá pro přístup k psql (Postgres shell) a další databázové programy.

Uživatelský účet systému Postgres není chráněn heslem, pro jeho zabezpečení si můžete vytvořit heslo pomocí nástroje passwd.

passwd postgres

Role Postgres (nebo administrátor databáze, chcete-li) není ve výchozím nastavení zabezpečena. Musíte jej také zabezpečit heslem. Nyní přepněte na uživatelský účet systému postgres a roli postgres (nezapomeňte nastavit silné a bezpečné heslo), jak je znázorněno.

su - postgres
psql -c "ALTER USER postgres WITH PASSWORD 'securepass_here';"

Poté opusťte účet postgres a pokračujte v průvodci.

Konfigurace ověřování klienta

Hlavní konfigurační soubor Postgres se nachází na adrese /etc/postgresql/11/main/postgresql.conf. Kromě tohoto souboru Postgres používá další dva ručně upravované konfigurační soubory, které řídí ověřování klienta.

Autentizace klienta je řízena konfiguračním souborem /etc/postgresql/11/main/pg_hba.conf. Postgres poskytuje mnoho různých metod ověřování klientů včetně autentizace na základě hesla. Klientská připojení se ověřují na základě adresy hostitele klienta, databáze a uživatele.

Pokud se rozhodnete použít ověření na základě hesla, můžete implementovat jednu z těchto metod: md5 nebo heslo, které fungují podobně, s výjimkou způsobu přenosu hesla přes připojení. , konkrétně MD5-hash a čistý text.

Použití ověřování heslem md5 zabrání odposlouchávání hesel hackery a zabrání ukládání hesel na serveru v prostém textu. Metodu hesla lze bezpečně použít pouze v případě, že je připojení chráněno šifrováním SSL.

V této příručce si ukážeme, jak nakonfigurovat ověření heslem md5 pro ověřování klienta.

vim /etc/postgresql/11/main/pg_hba.conf 

Vyhledejte následující řádek a změňte metodu ověřování na md5, jak je znázorněno na snímku obrazovky.

local   all             all                                     md5

Uložte změny do souboru a ukončete jej. Poté použijte poslední změny restartováním služby Postgres následujícím způsobem.

systemctl restart postgresql

Vytvoření nové databáze a databázové role/uživatele v PostgreSQL

V této poslední části si ukážeme, jak vytvořit nového databázového uživatele a databázovou roli pro jeho správu. Nejprve se přepněte na účet postgres a otevřete shell Postgres následovně.

su - postgres
psql

Chcete-li vytvořit databázi s názvem “test_db “, spusťte následující příkaz SQL.

postgres=# CREATE DATABASE test_db;

Poté vytvořte databázového uživatele (role s přihlašovacími právy), který bude novou databázi spravovat následovně.

postgres=#CREATE USER test_user PASSWORD ‘securep@ss_here’;     #assumes login function by default

Chcete-li se připojit k test_db jako uživatel test_user, spusťte následující příkaz.

 
psql -d  test_db  -U test_user

Další informace najdete v dokumentaci PostgreSQL 11.

Závěr

Tedy pokud zatím! V této příručce jsme si ukázali, jak nainstalovat, zabezpečit a nakonfigurovat databázový server PostgreSQL v Debianu 10. Máte nějakou otázku nebo nápad, o který byste se chtěli podělit? Chcete-li nás kontaktovat, použijte níže uvedený formulář pro komentáře.