我一直在try 编辑pg_hba.conf文件,以便能够仅使用IP地址访问服务器,到目前为止,还没有成功.

例如,我可以使用«localhost»进行访问,但我想使用路由给我的IP地址进行访问,该地址类似于192.168.1.十、

我是米·普格·巴.形态:

# TYPE  DATABASE        USER            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
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local   replication     postgres                                trust
#host    replication     postgres        127.0.0.1/32            trust
#host    replication     postgres        ::1/128                 trust
host all all 0.0.0.0/0 trust

有什么帮助吗?

推荐答案

首先,编辑postgresql.conf文件,并设置为listen_addresses."localhost"的默认值将仅在环回适配器上侦听.您可以将其更改为"*",意思是监听所有地址,或者具体列出您希望它接受连接的接口的IP地址.请注意,这是接口分配给它的IP地址,可以使用ifconfigip addr命令查看.

必须重新启动postgresql,更改才能生效.

接下来,在pg_hba.conf中,你需要这样一个条目:

# TYPE  DATABASE        USER            ADDRESS                 METHOD
host    {dbname}        {user}          192.168.1.0/24          md5

{dbname}是您允许访问的数据库名称.可以为所有数据库设置"all".

{user}是允许连接的用户.请注意,这是postgresql用户,不一定是unix用户.

地址部分是您希望允许的网络地址和掩码.我指定的掩码适用于192.168.1.按照你的要求.

方法部分是要使用的身份验证方法.这里有很多 Select .md5意味着它将使用md5哈希密码你的样本中的"信任"意味着根本没有身份验证——这绝对不推荐.

对pg_hba的更改.conf将在重新加载服务器后生效.您可以使用pg_ctl reload(或通过init脚本,具体取决于您的OS发行版)来实现这一点.

Postgresql相关问答推荐

使用Spring data jpa和CriteriaQuery在jsonb列中搜索操作

多克.波斯格雷斯.PgAdmin4

当条件的计算结果为假(或真)时停止执行查询

ST_Intersects 太慢

AWS RDS Postgres 性能缓慢的数据传输

计算每行的多列中的非 NULL 元素

从网址获取第一个字符串

Docker - 判断 postgres 是否准备好

使用 try/except 与 psycopg2 或with closing?

Postgres 中的相似函数与 pg_trgm

SQL:列为某个值时的唯一约束

使用 pg-promise 插入多条记录

SQL:多次重复结果行,并对行进行编号

PostgreSQL 嵌套 CTE 和 UNION

可以为空的列在 PostgreSQL 中是否会占用额外的空间?

如何在 redshift 中对字段进行 GROUP BY 和 CONCATENATE

删除空行

PostgreSQL 无法启动:server.key具有组或世界访问权限

在 PostgreSQL 中使用 CASE 一次影响多个列

提高查询速度:simple SELECT in big postgres table