While setting up a new PostgreSQL server, I noticed that I was getting a connection refused
error while trying to connect to it. After checking the firewall settings and finding everything in order, I decided to check things in the host.
I used ss to inspect connections listening on port 5432 (Default port used by PostgreSQL):
1
2
3
$ ss -tna src :5432
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 127.0.0.1:5432 0.0.0.0:*
The output shows that the server is only listening on 127.0.0.1
, while we need to allow connections from any IP address.
To fix this we need to modify postgresql.conf
. To find the file:
1
2
3
4
5
6
SELECT
name, setting
FROM
pg_settings
WHERE
name = 'config_file';
Then, to allow connections from any host, we need to add this:
1
listen_addresses = '*'
And restart the server:
1
sudo systemctl restart postgresql
postgresql
linux
]