servidor puerto postgres nuevo iniciar iii habilitar español crear conectar como postgresql ubuntu psql centos7

postgresql - puerto - "Psql: no se pudo conectar al servidor: conexión rechazada" Error al conectarse a la base de datos remota



pgadmin iii en español (6)

Asegúrese de que la configuración se aplique correctamente en el archivo de configuración.

vim /etc/postgresql/x.x/main/postgresql.conf

Intente lo siguiente para ver los registros y encontrar su problema.

tail /var/log/postgresql/postgresql-x.x-main.log

Estoy tratando de conectarme a una base de datos postgres instalada en un servidor remoto usando el siguiente comando:

psql -h host_ip -U db_username -d db_username

Este es el error que se produce:

psql: no se pudo conectar al servidor: conexión rechazada ¿Se está ejecutando el servidor en el host "" y está aceptando conexiones TCP / IP en el puerto 5432?

  1. La versión instalada de Postgres es 9.4.
  2. Sistema operativo host: Ubuntu 15.04
  3. Sistema operativo cliente: Centos 7

Ya probé lo siguiente, pero el problema sigue sin resolverse:

  1. Editado el archivo pg_hba.conf para incluir

alojar todos todos 0.0.0.0/0 md5

  1. Edité ''postgresql.conf'' y cambié el parámetro de escucha a

listen_addresses = ''*''

  1. Servicio de postgres reiniciado.
  2. Firewall y iptables deshabilitados en host y cliente.
  3. Lo comprobé ejecutando el comando psql localmente y funcionó.
  4. Probé la segunda solución dada en esta question . Ejecutar nmap me dio el siguiente resultado:

Starting Nmap 6.47 ( http://nmap.org ) at 2015-09-07 18:08 IST Nmap scan report for 10.17.250.250 Host is up (0.0000040s latency). Not shown: 997 closed ports PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 80/tcp open http

Me estoy perdiendo de algo. Espero que alguien pueda ayudar.


Compruebe el puerto definido en postgresql.conf . Mi instalación de postgres 9.4 usa el puerto 5433 lugar de 5432


Creo que estás usando el nombre de la máquina en lugar de la dirección IP del host.

Recibí el mismo error cuando intenté con el nombre de la máquina. Porque, está permitido solo cuando el cliente y el host están bajo la misma red y tienen el mismo sistema operativo instalado.


En mi caso, no cambié la política de seguridad predeterminada de Azure en el portal de administración. El original es el puerto 22 permitido y el resto está denegado. Mientras agrego el puerto 5432, todo se vuelve bueno.


He luchado con esto cuando intento conectarme de forma remota a una nueva instalación de PostgreSQL en mi Raspberry Pi. Aquí está el desglose completo de lo que hice para resolver este problema:

Primero, abra el archivo de configuración de PostgreSQL y asegúrese de que el servicio escuche fuera de localhost.

sudo [editor] /etc/postgresql/[version]/main/postgresql.conf

nano , pero puede usar el editor de su elección, y mientras tengo instalada la versión 9.1 , ese directorio será para la versión que tenga instalada.

Busque en la sección titulada ''Conexiones y autenticación''. La primera configuración debería ser ''listen_addresses'' , y podría verse así:

#listen_addresses = ''localhost'' # what IP address(es) to listen on;

Los comentarios a la derecha dan buenas instrucciones sobre cómo cambiar este campo, y el uso del ''*'' sugerido para todos funcionará bien.

Tenga en cuenta que este campo está comentado con #. Según los comentarios, el valor predeterminado será ''localhost'', por lo que no basta con cambiar el valor a ''*'' , también debe descomentar la configuración eliminando el # inicial.

Ahora debería verse así:

listen_addresses = ''*'' # what IP address(es) to listen on;

También puede verificar la siguiente configuración, ''puerto'', para asegurarse de que se está conectando correctamente. 5432 es el valor predeterminado, y es el puerto al que psql intentará conectarse si no especifica uno.

Guarde y cierre el archivo, luego abra el archivo de configuración de autenticación de cliente, que se encuentra en el mismo directorio:

sudo [editor] /etc/postgresql/[version]/main/pg_hba.conf

Recomiendo leer el archivo si desea restringir el acceso, pero para las conexiones abiertas básicas, saltará a la parte inferior del archivo y agregará una línea como esta:

host all all all md5

Puede presionar tabulador en lugar de espacio para alinear los campos con las columnas existentes si lo desea.

Personalmente, en vez de eso agregué una fila que se veía así:

host [database_name] pi 192.168.1.0/24 md5

Esto restringe la conexión a un solo usuario y solo a una base de datos en la subred de la red de área local.

Una vez que haya guardado los cambios en el archivo, deberá reiniciar el servicio para implementar los cambios.

sudo service postgresql restart

Ahora puede verificar que el servicio esté escuchando abiertamente en el puerto correcto usando el siguiente comando:

sudo netstat -ltpn

Si no lo ejecuta como elevado (usando sudo ), no le dirá los nombres de los procesos que escuchan en esos puertos.

Uno de los procesos debe ser Postgres, y la dirección local debe estar abierta (0.0.0.0) y no restringida únicamente al tráfico local (127.0.0.1). Si no está abierto, deberá revisar los archivos de configuración y reiniciar el servicio. Puede confirmar de nuevo que el servicio está escuchando en el puerto correcto (el valor predeterminado es 5432 , pero su configuración podría ser diferente).

Finalmente, podrá conectarse exitosamente desde una computadora remota usando el comando:

psql -h [server ip address] -p [port number, optional if 5432] -U [postgres user name] [database name]


cd /etc/postgresql/9.x/main/

abrir archivo llamado postgresql.conf

sudo vi postgresql.conf

agrega esta linea a ese archivo

listen_addresses = ''*''

a continuación, abra el archivo llamado pg_hba.conf

sudo vi pg_hba.conf

y agrega esta linea a ese archivo

host all all 0.0.0.0/0 md5

Permite el acceso a todas las bases de datos para todos los usuarios con una contraseña encriptada.

reinicia tu servidor

sudo /etc/init.d/postgresql restart