miércoles, 16 de enero de 2013

PostgreSql: No pg_hba.conf entry for host

En PostgreSql tenemos los siguientes ficheros de configuración:
  • pg_hba.conf: Se encarga de controlar el acceso y las acciones de máquinas a la BBDD.
  • pg_ident.conf: Configuración de los accesos de tipo ident.
  • postgresql.conf: Configuración propia de la BBDD.
Si al intentar conectar contra una BBDD nos de el error:

Fatal: No pg_hba.conf entry for host "10.1.0.218", user "gefjano", database "gefjano"

Significa que no tenemos registrado el acceso de la máquina 10.1.0.218 ni configurado el tipo de acceso (se puede resgistrar el acceso para una máquina o para un segmento de red).
Para habilitarselo es tan sencillo como editar el fichero pg_hba.conf e incluirla. Para ello muestro el apartado referente al la configuración de accesos.

# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
# "local" is for Unix domain socket connections only
local   all         all                                       trust
# IPv4 local connections:
host    all         all         127.0.0.1/32         trust
# IPv6 local connections:
host    all         all         ::1/128                   trust
host    all         all         10.0.10.0/24       trust
host    all         all         10.0.0.0/24           trust
host    all         all         192.168.1.0/24     trust
host    replication all   10.0.10.36/32     trust

Como podemos ver tenemos que definir el tipo, la base de datos (all para todas), el usuario, la ip o el rango de red y el método.
Para el caso que he expuesto anteriormente tendríamos que generar la siguiente entrada:

host    all         all         10.1.0.218/24           trust

Tras esto tenemos que reiniciar el servidor para que coja la nueva configuración.


Referencia: PostgreSql

No hay comentarios:

Publicar un comentario