关于阿里云服务器ECS安装postgres后外网无法访问
昨天晚上安装postgres后,本地电脑访问阿里云ECS,发现5432端口不通,但是阿里云服务器上是可以telnet 5432端口,
于是开始排查原因:
1 可能是本地防火墙,但是查看后,发现默认是关闭状态;
2 ECS安全组默认没有开放5432,于是在控制台添加了开放5432端口策略,但是仍然不能访问;
3 通过netstat -nutlp|grep 5432 发现pg监听端口默认是127.0.0.1,找到原因根源,于是打开postgres.conf配置文件,打开注释
,修改为*,并修改pg_hba.conf,修改ipv4下面的127.0.0.1/32为 0.0.0.0/0;
安装PostgreSQL数据库之后,默认只能本地访问连接。如果想在其他主机上访问PostgreSQL数据库服务器,就需要进行相应的配置。
1、修改postgresql.conf文件
在安装目录下data/postgresql.confi文件中将
#listen_addresses='localhost’修改为listen_addresses = ‘*’
2、修改pg_hba.conf文件
在data/pg_hba.conf中
TYPE DATABASE USER ADDRESS METHOD
IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 0.0.0.0/0 md5
其中0.0.0.0/0表示运行任意ip地址访问。
若设置为 192.168.1.0/24 则表示允许来自ip为192.168.1.0 ~ 192.168.1.255之间的访问。
3、设置好后重启服务即可被远程连接。```