`

PostgreSQL 配置文件之pg_hba.conf

 
阅读更多

PostgreSQL  配置文件之pg_hba.conf

 

 

该文件用于控制访问安全性,管理客户端对于PostgreSQL服务器的访问权限,内容包括:允许哪些用户连接到哪个数据库,允许哪些IP或者哪个网段的IP连接到本服务器,以及指定连接时使用的身份验证模式。

 



 

TYPE 定义了多种连接PostgreSQL的方式,一般分为:

 

loca

使用本地unix套接字

 

host

使用TCP/IP连接(包括SSL和非SSL),host结合IPv4地址/结合IPv6地址

 

hostssl

只能使用SSL TCP/IP连接

 

hostnossl

不能使用SSL TCP/IP连接

 

 

METHOD 为身份验证模式一般分为:identtrustmd5passwordpeerreject。其中identpeer模式仅适用于LinuxUnixMax,不适用于Windows

 

trust

该模式可以不用密码直接连接数据库,不安全

 

md5

该模式很常用,要求连接发起者携带用md5算法加密的密码

 

password

该模式是使用明文密码进行身份验证,也不安全,不推荐

 

ident

该模式下系统会将请求发起者的操作系统用户映射为PostgesSQL数据库内部用户,并以该内部用户的权限登录,且此时无需提供登录密码。操作系统用户与数据库内部用户之间的映射关系会记录在pg_ident.conf文件中。

 

peer

该模式使用连接发起端的操作系统名进行身份验证。仅限于LinuxBSDMac OS XSolaris,并且仅可用于本地服务器发起的连接。

 

reject

该模式表示拒绝所有请求。

 

多种身份验证模式可以同时使用,即使是针对同一个数据库。对于每一个连接请求,postgres服务器会按照pg_hba.conf文件中记录的规则条目自上而下进行检查。当匹配到第一条满足条件的规则,就不再向下检查。如果到文件末尾都没有搜到匹配的规则,那么按默认规则处理,即拒绝该链接。

 

注意,常见错误就是把规则放错,例如若将0.0.0.0/0 reject规则放到127.0.0.1/32 trust前面,那么所有本地用户都无法连接,即使下面有规则允许也不行。

 

 

例子:

1、允许IP10.0.8.100username以密码方式访问数据库dbname

host dbname username 10.0.8.100/32 md5

 

2、允许IP10.1.1.0~10.1.1.255网段的用户以密码方式登录数据库

host all all 10.1.1.0/24 md5

 

3、允许IP192.168.1.0的用户可以不使用密码直接登录数据库

host all all 192.168.1.0/32 trust

 

许多配置文件修改后需要重启postgres服务才能生效,但有的只需执行一下重新加载即可生效。重新加载并不会中断连接。

命令:pg_ctl reload -D your_data_directory_here

 

如果是在linux以服务的形式安装的,那么执行:

命令:service postgresql-9.5 reload

 

另外一种加载配置文件的方法是以超级用户登录到任何一个数据库后执行:

命令:select pg_reload_conf();

 

 

  • 大小: 7.9 KB
分享到:
评论

相关推荐

    pg_hba.conf

    可以直接粘贴,让服务器的数据库直接访问。

    应用层PostgreSQL数据库安装步骤.zip

    复制以上文件 pg_hba.conf 和 postgresql.conf ,并替换 /home/data/pgsql/data 下对应的文件 并根据当前服务器内存大小更改 postgresql.conf 中的 shared_buffered 参数(如果是数据库服务器,建议设置为总内存的...

    Linux怎么设置PostgreSQL远程访问

    安装PostgreSQL数据库之后,默认是只接受本地访问连接。如果想在其他主机上访问PostgreSQL数据库服务器,...修改pg_hba.conf文件,配置用户的访问权限(#开头的行是注释内容):  # TYPE DATABASE USER CIDR-ADDRE

    Linux使用脚本一键安装PostgreSQL

    3. PostgreSQL的配置文件包括pg_hba.conf和postgresql.conf 4. 安装脚本,可以通过此脚本实现一键安装/升级/卸载等一系列操作 安装脚本功能: 1. 一键安装PostgreSQL,并可以指定数据存放目录和CPU资源限制。命令...

    PostgreSQL:PostgreSQL

    # find / -name "postgresql.conf" ## /var/lib/pgsql/12/data/postgresql.conf ## [root@node01 postgresql]# find / -name "pg_hba.conf" ## /var/lib/pgsql/12/data/pg_hba.conf在postgresql.conf中编辑ip侦听...

    docker-postgresql:Docker postgresql 容器

    首先你的配置文件ph_hba.conf和postgresql.conf对PostgreSQL 默认更改为: 在postresql.conf : data_directory = '/data' listen_addresses = '*' 在pg_hba.conf : host all all 0.0.0.0/0 md5 然后在...

    GP日常维护手册-常用命令.doc

    GP日常维护手册-常用命令 Greenplum 日常维护手册 1.数据库启动:gpstart ...-u:不停止数据库,只加载pg_hba.conf 和postgresql.conf中运行时参数,当改动参数配置时候使用。 -f:强制停止数据库 -r: 重启数据库

    Posgresql主从流复制相关配置

    Postgresql9.6基于主从流复制的配置,包含主节点: postgresql.conf, pg_hba.conf,从节点: postgresql.conf,pg_hba.conf,recovery.conf

    lazona_connector

    要启用该功能,请在pg_hba.conf的底部添加一个新条目,您可以在/etc/postgresql/<postgresql>/main/pg_hba.conf找到该条目,如下所示。 # TYPE DATABASE USER ADDRESS METHODlocal lazona_connector <your>

    ssmu-powerlifting-play:[未维护] ssmu 举重俱乐部网站

    SSMU 力量举网站 ssmu 举重俱乐部网站,...编辑 pg_hba.conf 文件 find / -name "pg_hba.conf" 将点更改为 md5 创建数据库 CREATE DATABASE ssmu-powerlifting 创建表 psql -U postgres -d ssmupowerlifting -a

    postgresql-9.0.4-1 32位Windows安装程序

    postgresql-9.0.4-1 32位Windows安装程序 <注意> 1) 如果要通过远程桌面安装必须用 ... pg_hba.conf 文件 # IPv4 local connections: host all all 127.0.0.1/32 md5 host all all 172.23.1.0/24 trust

    docker-powa:PostgreSQL 工作负载分析器的 Docker 镜像

    pg_hba.conf 将以下行添加到 pg_hba.conf 以从任何地方为任何用户启用密码登录: host all all 0.0.0.0/0 md5 运行图像时,不要忘记为您的超级用户(您将用来访问 GUI 的用户)提供密码! 图形用户界面 powa-web ...

    pg-multi:Postgresql MasterSlave Chef 包装食谱

    pg_master.rb :设置一个主 Postgresql 服务器并创建一个复制用户,并在 pg_hba.conf 文件中设置授权。 pg_slave.rb : 设置一个从 Postgresql 流从复制服务器,指向在属性中定义的主节点。 从服务器默认配置为只读...

    Postgresql开启远程访问的步骤全纪录

    pg_hba.conf 然而由于系统安装的是Centos 7,而默认的Postgresql版本为9.2,于是安装了个9.6的版本,却发现在配置好远程无法访问。而默认的路径是找不到上述2个文件的,此时可以通过如下的方式查看其对应的文件的路径: ...

    zabbix4.4.3使用postgresql数据库

    一、安装postgresql数据库 win64安装postgresql10 下载 下载地址...配置pg_hba.conf文件,文件路径:~/postgre/10/data/ 找到#“ IPv4 local connections:”在下面新加一行 host all

    PHP连接及操作PostgreSQL数据库的方法详解

    本文实例讲述了PHP连接及操作PostgreSQL数据库的方法...在开始使用PHP连接PostgreSQL接口之前,请先在PostgreSQL安装目录中找到pg_hba.conf文件,并添加以下行: # IPv4 local connections: host all all 127.0.0.1/32

    qr-code-tracking

    如果在Vagrant虚拟机中运行数据库,则可能需要编辑/etc/postgres postgresql.conf和pg_hba.conf 。 节点适配器配置位于当前项目文件夹中的database.js中。 使用与database.js配置相同的用户名和密码创建一个Postgres...

    sar2pg:使用Grafana仪表板将Linux每日SAR输出摄取到PostgreSQL中

    数据库用户修改pg_hba.conf以允许访问Grafana 以升序将sql / alter-XXXX.sql文件加载到新数据库中在Grafana中为PostgreSQL数据库创建数据源用法加载数据中执行sar_parse.sh以加载每个sar文件的数据。 ./sar_parse.sh...

    data-lifecycle-service-broker:用于管理数据生命周期的 Cloud Foundry Service Broker

    创建专有网络创建一个新的 ubuntu 机器(t1.micro 很好而且免费) apt-get 更新按照apt-get 安装 postgressql 在 /etc/postgresql//main/postgresql.conf 中将 listen_address 更改为 * 允许远程连接到 pg_hba.conf...

    ansible-postgresql:部署PostgreSQL软件的角色

    enix.postgresql 使用在UNIX主机上部署和配置上游发行版的。... postgresql__global_config_options设置到postgresql.conf中的全局配置选项。 常见的选择是: postgresql__global_config_options: -

Global site tag (gtag.js) - Google Analytics