PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Accedi al server PostgreSQL dalla LAN

Innanzitutto, modifica il file postgresql.conf e imposta ascolta_indirizzi . Il valore predefinito di 'localhost' ascolterà solo sull'adattatore di loopback. Puoi cambiarlo in '*', che significa ascoltare su tutti gli indirizzi, o elencare in modo specifico l'indirizzo IP delle interfacce da cui vuoi che accetti le connessioni. Nota che questo è l'indirizzo IP che l'interfaccia gli ha assegnato, che puoi vedere usando ifconfig o ip addr comandi.

Devi riavviare postgresql affinché le modifiche a listen_addresses abbiano effetto.

Successivamente, in pg_hba.conf , avrai bisogno di una voce come questa:

# TYPE  DATABASE        USER            ADDRESS                 METHOD
host    {dbname}        {user}          192.168.1.0/24          md5

{dbname} è il nome del database a cui stai consentendo l'accesso. Puoi mettere "tutto" per tutti i database.

{utente} è l'utente autorizzato a connettersi. Nota che questo è l'utente postgresql, non necessariamente l'utente unix.

La parte INDIRIZZO è l'indirizzo di rete e la maschera che si desidera consentire. La maschera che ho specificato funzionerà per 192.168.1.x come richiesto.

La parte METHOD è il metodo di autenticazione da utilizzare. Ci sono un certo numero di opzioni lì. md5 significa che utilizzerà una password con hash md5. La "fiducia" che avevi nel tuo campione significa nessuna autenticazione:questo non è assolutamente raccomandato.

Le modifiche a pg_hba.conf avranno effetto dopo aver ricaricato il server. Puoi farlo usando pg_ctl reload (o tramite gli script init, a seconda della distribuzione del tuo sistema operativo).