![Cum să atribuiți ieșirea unei comenzi Linux unei variabile](/f/eb70be240eb1b821e056f337d3ef2211.png?width=100&height=100)
PostgreSQL (uneori denumit Postgres) este cel mai avansat sistem de baze de date cu scop general și relațional obiect cu sursă deschisă, cu o arhitectură dovedită, care rulează pe toate sistemele de operare majore. Este un sistem de baze de date de înaltă performanță, stabil, scalabil și extensibil, care oferă integritate uimitoare a datelor și acceptă programe de completare puternice.
Important, PostgreSQL vă permite să vă definiți propriile tipuri de date, să adăugați funcții personalizate, chiar să scrieți coduri din diferite limbaje de programare, cum ar fi C / C ++, Java etc., fără a recompila baza de date.
PostgreSQL este folosit de companii de renume tehnologie precum Apple, Fujitsu, Red Hat, Cisco, Juniper Network etc.
În acest articol, vă vom arăta cum să instalați, să securizați și să configurați PostgreSQL server de baze de date în Debian 10.
A instala PostgreSQL server de baze de date, utilizați valoarea implicită
Manager de pachete APT, care se va instala PostgreSQL 11 server și client.# apt install postgresql-11 postgresql-client-11.
Pe Debian, ca oricare alți demoni, Postgres baza de date este inițializată imediat după finalizarea instalării pachetului, așa cum se arată în următoarea captură de ecran.
Pentru a verifica dacă Postgres baza de date este cu adevărat inițializată, puteți utiliza fișierul pg_deja utilitar care verifică starea conexiunii unui server PostgreSQL, după cum urmează.
# pg_deja
În plus, sub systemd, Postgres serviciul este, de asemenea, pornit automat și activat pentru a începe la pornirea sistemului. Pentru a vă asigura că serviciul funcționează bine, rulați următoarea comandă.
# systemctl status postgresql.
Următoarele sunt alte utile comenzi systemctl pentru a gestiona serviciul Postgres în sistem.
# systemctl începe postgresql. # systemctl reporniți postgresql. # systemctl stop postgresql. # systemctl reload postgresql #tho reîncarcă configurația serviciului.
În mod implicit, fișierul Postgres folosește conceptul de roluri pentru a gestiona permisiunile de acces la baza de date, iar rolurile bazei de date sunt complet concepute separat de utilizatorii sistemului de operare. Un rol poate fi un utilizator sau un grup, iar un rol care are dreptul de autentificare se numește utilizator.
Un sistem proaspăt inițializat conține întotdeauna un rol predefinit numit postgres, are același nume cu contul de utilizator al sistemului de operare numit postgres, care este utilizat pentru a accesa fișierul psql (Coajă Postgres) și alte programe de baze de date.
Contul de utilizator al sistemului Postgres nu este protejat folosind o parolă, pentru a o securiza, puteți crea o parolă folosind utilitate passwd.
# passwd postgres.
De asemenea Postgres rolul (sau utilizatorul bazei de date administrative, dacă doriți) nu este securizat în mod implicit. De asemenea, trebuie să-l securizați cu o parolă. Acum comutați la postgres contul de utilizator al sistemului și postgres rol (nu uitați să setați o parolă puternică și sigură) așa cum se arată.
# su - postgres. # psql -c "ALTERAȚI postgrele UTILIZATORULUI CU PAROLĂ 'securepass_here';"
Apoi ieșiți din postgres cont pentru a continua cu ghidul.
Principalul Postgres fișierul de configurare se află la /etc/postgresql/11/main/postgresql.conf. Pe lângă acest fișier, Postgres folosește alte două fișiere de configurare editate manual, care controlează autentificarea clientului.
Autentificarea clientului este controlată de /etc/postgresql/11/main/pg_hba.conf Fișier de configurare. Postgres oferă multe metode diferite de autentificare a clientului, inclusiv autentificare bazată pe parolă. Conexiunile clientului sunt autentificate pe baza adresei gazdei clientului, a bazei de date și a utilizatorului.
Dacă alegeți să utilizați autentificare bazată pe parolă, puteți implementa una dintre aceste metode: md5 sau parola care funcționează în mod similar, cu excepția modului în care parola este transmisă prin conexiune, și anume MD5-hash și respectiv text clar.
Folosind autentificare parolă md5 evită detectarea parolelor de către hackeri și evită stocarea parolelor pe server în text simplu. Metoda parolei poate fi utilizată în siguranță numai dacă conexiunea este protejată prin criptare SSL.
Pentru acest ghid, vom arăta cum să configurați autentificare parolă md5 pentru autentificarea clientului.
# vim /etc/postgresql/11/main/pg_hba.conf
Căutați următoarea linie și schimbați metoda de autentificare în md5
așa cum se arată în captura de ecran.
local toate toate md5.
Salvați modificările din fișier și părăsiți-l. Apoi aplicați modificările recente repornind Postgres serviciu după cum urmează.
# systemctl reporniți postgresql.
În această ultimă secțiune, vom arăta cum să creați un nou utilizator de bază de date și un rol de bază de date pentru a-l gestiona. Mai întâi, treceți la postgres cont și deschideți shell-ul Postgres după cum urmează.
# su - postgres. $ psql.
Pentru a crea o bază de date numită „Test_db” rulați următoarea comandă SQL.
postgres = # CREATE DATABASE test_db;
Apoi creați un utilizator al bazei de date (un rol cu drepturi de autentificare) care va gestiona noua bază de date după cum urmează.
postgres = # CREATE USER test_user PASSWORD ‘[e-mail protejat]_Aici'; #assume funcția de autentificare în mod implicit.
Pentru a vă conecta la test_db ca utilizator utilizator_test, executați următoarea comandă.
$ psql -d test_db -U test_user.
Pentru mai multe informații, consultați Documentația PostgreSQL 11.
Asta dacă pentru moment! În acest ghid, am arătat cum se instalează, se securizează și se configurează PostgreSQL server de baze de date în Debian 10. Aveți vreo întrebare sau gânduri de împărtășit? Utilizați formularul de comentarii de mai jos pentru a ne contacta.