解决动态IP或拨号上网客户端访问公网Postgresql的授权问题

Postgresql数据库出于安全考虑,对于所有连接的客户端需要授权才能访问。

但对于服务器在公网,自己在家办公的用户其公网IP并不固定,或者都不知道自己是通过几次转换访问的外网,因此很难通过IP段授权,如果只是开发测试库可以考虑直接对所有IP开发权限,具体如下:


步骤1

修改postgresql.conf文件,将数据库服务器的监听模式修改为监听所有主机发出的连接请求。

定位到#listen_addresses=’localhost’。

(Postgresql安装完成后,认是只接受来在本机localhost的连接请 求。)

将行开头都#去掉,将行内容修改为listen_addresses=’*'来允许数据库服务器监听来自任何主机的连接请求。


步骤2

修改pg_hba.conf文件,配置用户的访问权限(#开头的行是注释内容):

# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 ident
host all all 0.0.0.0/0 md5

说明:新增上面红色标注的行,0.0.0.0/0代表所有网段的所有地址。


步骤3

重启Postgresql,service postgresql-9.4 restart

相关文章

项目需要,有个数据需要导入,拿到手一开始以为是mysql,结果...
本文小编为大家详细介绍“怎么查看PostgreSQL数据库中所有表...
错误现象问题原因这是在远程连接时pg_hba.conf文件没有配置正...
因本地资源有限,在公共测试环境搭建了PGsql环境,从数据库本...
wamp 环境 这个提示就是说你的版本低于10了。 先打印ph...
psycopg2.OperationalError: SSL SYSCALL error: EOF detect...