GNU/Linux >> Linux Esercitazione >  >> Linux

Installa PostgreSQL su un server Ubuntu per le configurazioni di sicurezza

Stai pensando di installare PostgreSQL su un server Ubuntu e non sai da dove iniziare? Non cercare oltre perché sei fortunato. In questo tutorial imparerai i diversi modi per installare un server PostgreSQL Ubuntu ed eseguire le configurazioni di sicurezza di base per aiutarti a iniziare.

Continua a leggere e in pochissimo tempo eseguirai un server PostgreSQL!

Prerequisiti

Questo tutorial sarà una dimostrazione pratica. Se desideri seguire, assicurati di avere quanto segue.

  • Un server Ubuntu. Questo tutorial utilizza Ubuntu 20.04.
  • Un account utente non root con privilegi sudo.

Installa PostgreSQL su Ubuntu

A partire da una nuova installazione del server Ubuntu, puoi installare PostgreSQL in due modi. Il modo in cui scegli dipende dal fatto che tu preferisca la comodità (meno passaggi) o assicurati di avere l'ultima versione.

Metodo 1:installa PostgreSQL su Ubuntu (da Ubuntu Repository)

Per impostazione predefinita, i repository di Ubuntu contengono pacchetti Postgres, il che significa che puoi installare pacchetti PostgreSQL Ubuntu utilizzando Advanced Package Tool (APT) .

I pacchetti Postgres nei repository di Ubuntu potrebbero non essere sempre le ultime versioni. Se invece preferisci installare l'ultima versione, passa al Metodo 2.

1. Innanzitutto, apri una finestra del terminale sul tuo computer e SSH nel tuo server Ubuntu.

2. Quindi, esegui il comando seguente per aggiornare l'elenco dei pacchetti sul tuo server Ubuntu.

sudo apt update -y

3. Installa i pacchetti PostgreSQL eseguendo il comando seguente. Questo comando installerà anche il postgresql-contrib (funzionalità aggiuntive di Postgres) e postgresql-client (CLI di Postgres).

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

4. Dopo l'installazione, verificare lo stato dell'installazione di Postgres eseguendo il comando seguente.

sudo dpkg --status postgresql

Come puoi vedere di seguito, l'ultima versione installata dal repository di Ubuntu al momento della stesura di questo articolo è la versione 12.

Metodo 2:installa PostgreSQL su Ubuntu (dal repository ufficiale)

L'installazione di PostgreSQL dal repository ufficiale assicura di ottenere l'ultima versione. Tuttavia, questo metodo di installazione richiede più passaggi rispetto all'installazione con APT.

1. Innanzitutto, apri una finestra del terminale sul tuo computer e SSH nel tuo server Ubuntu.

2. Eseguire il comando seguente per creare un file denominato /etc/apt/sources.list.d/pgdg.list . Questo file contiene l'indirizzo del repository ufficiale di PostgreSQL specifico per la versione del tuo server Ubuntu.

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. Quindi, esegui il comando seguente aggiungi la chiave GPG PostgreSQL al tuo gestore di pacchetti. APT utilizzerà questa chiave per verificare l'autenticità dei pacchetti nel repository.

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

Vedrai una risposta OK se l'aggiunta della chiave è riuscita.

4. Ora aggiorna gli elenchi dei pacchetti, in modo che apt sa dove trovare i pacchetti PostgreSQL ufficiali.

sudo apt update -y

Come puoi vedere di seguito, il comando ora include l'indirizzo del repository ufficiale di PostgreSQL durante il controllo dei pacchetti.

5. Installa PostgreSQL su Ubuntu eseguendo il comando seguente. Attendi il completamento dell'installazione.

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

6. Conferma la versione di PostgreSQL che hai installato dal repository ufficiale eseguendo il comando seguente.

sudo dpkg --status postgresql

Come puoi vedere di seguito, la versione dal repository ufficiale è la versione 14 al momento della stesura di questo documento.

Avvio e verifica del servizio PostgreSQL

Una volta completata l'installazione, esegui systemctl di seguito comando per avviare il servizio PostgreSQL.

sudo systemctl start postgresql.service

Infine, verifica lo stato di PostgreSQL eseguendo il comando seguente.

sudo systemctl status postgresql.service

Lo stato del servizio dovrebbe essere active , come mostrato nell'immagine qui sotto.

Protezione dell'utente PostgreSQL predefinito e abilitazione della crittografia delle password

L'installazione di PostgreSQL crea un account utente predefinito chiamato postgres che ha accesso amministrativo completo a PostgreSQL. Ma questo account speciale non ha una password. Qualsiasi utente che può accedere al server Ubuntu può accedere a PostgreSQL come postgres utente senza fornire una password.

Considerando che il postgres l'account non è protetto, la prima azione da intraprendere è impostare una nuova password. Per farlo, procedi come di seguito.

1. Accedi alla shell di PostgreSQL (psql ) eseguendo il comando seguente.

sudo -u postgres psql

Come puoi vedere di seguito, qualsiasi utente che può accedere al server Ubuntu può anche accedere al database PostgreSQL senza fornire una password.

2. Eseguire il comando seguente al prompt per avviare una modifica della password. Fornisci una password complessa a tua scelta e premi Invio.

\password

3. Dopo aver impostato la nuova password, digitare \q e premi Invio per uscire da psql guscio.

4. Per impostazione predefinita, PostgreSQL invia le password in testo normale, il che può rappresentare un rischio per la sicurezza. Per correggere questo potenziale vettore di attacco, cambia la password PostgreSQL metodo di autenticazione a uno protetto, come md5 .

Apri il /etc/postgresql/12/main/pg_hba.conf file in nano per la modifica. Questo file è il file di configurazione principale per i metodi di autenticazione di PostgreSQL.

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

5. Trova la riga che recita come di seguito.

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

Una volta individuata la riga, sostituisci la parola peer con md5. Dopo aver modificato la riga, il tuo file dovrebbe ora apparire come l'immagine qui sotto. Infine, salva il file ed esci dall'editor.

Il metodo di autenticazione md5 utilizza un algoritmo message-digest per crittografare la password prima di inviarla al server.

6. Riavviare il server PostgreSQL per rendere effettive le modifiche.

sudo systemctl restart postgresql

7. Riconnettiti al server PostgreSQL come postgres utente.

sudo -u postgres psql

Immettere la password al prompt e premere Invio.

Creazione ed eliminazione di un database PostgreSQL

Ora che hai installato e configurato il tuo server PostgreSQL, ora puoi iniziare a creare un database. Dopotutto, cos'è un RDBMS senza un database? Segui i passaggi seguenti per testare il tuo server creando ed eliminando un database.

1. Accedi alla shell di PostgreSQL (psql ) se non l'hai già fatto.

2. Eseguire il comando seguente per creare un nuovo database denominato ata_db .

Fai riferimento a Documentazione PostgreSQL per saperne di più sul database e sui diversi tipi di dati.

CREATE DATABASE ata_db;

3. Successivamente, conferma di aver creato correttamente il database elencando tutti i database disponibili sul server.

\l

Come puoi vedere di seguito, il nuovo database denominato ata_db che hai creato nel passaggio precedente ora esiste nel server.

4. Eseguire il comando seguente per connettersi a ata_db Banca dati.

\c ata_db;

L'immagine seguente conferma che la connessione al nuovo database è riuscita. Puoi vedere un messaggio di stato che dice a quale database ti sei connesso e con quale account utente.

Ora puoi creare tabelle ed esegui la crea , leggi , aggiorna e elimina (CRUD) azioni sul database.

5. Se alla fine non hai più bisogno del database e devi eliminarlo, esegui i seguenti comandi in psql per eliminare il database.

La prima riga si disconnette dal database ata_db commutando la connessione attiva al database postgres predefinito. Non puoi eliminare un database se è aperto.

La seconda riga elimina il database.

\c postgres
DROP DATABASE ata_db;

6. Infine, elenca di nuovo tutti i database sul tuo server PostgreSQL. Vedrai che il ata_db database non esiste più, come mostrato di seguito.

\l

Vedrai che il database ata_db non esiste più, come mostrato di seguito.

Conclusione

In questo tutorial, hai imparato come installare PostgreSQL su un server Ubuntu e configurare le impostazioni di sicurezza di base. Hai anche imparato a creare, connettere ed eliminare un nuovo database sul tuo server PostgreSQL.

Tieni presente che ciò che hai imparato qui sono solo le basi. Ci sono altre cose che puoi fare con PostgreSQL, come la configurazione dell'autenticazione basata su certificato SSL , creazione di nuovi utenti del database e configurazione della replica.

Con questa nuova conoscenza, ora sei in una posizione migliore per utilizzare PostgreSQL nelle tue applicazioni .


Linux
  1. Come installare PostgreSQL e pgAdmin4 su Ubuntu 20.04

  2. Come installare PostgreSQL su Ubuntu 16.04

  3. Graylog Monitoring Server su Ubuntu Linux per Monitoring Server/Services

  4. Come installare localizzare su un server Ubuntu

  5. Come installare un server PostgreSQL su Ubuntu 18.04

Come installare Mumble Server su Ubuntu 15.04

Come installare NGINX su Ubuntu 20.04

Come installare Ansible Server su Ubuntu 18.04

Come installare TimescaleDB su Ubuntu 18.04

Come installare XWiki su Ubuntu 20.04

Come installare ClickHouse su Ubuntu 20.04