|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
但不会命令而成为高手也是不可能的.这就好比学英语,什么语法都不懂,只捧着单词手册背单词是学不会英语的,但是没有单词词汇量英语水平也提不高的。
安装postgresql是一件很复杂的事,可是当我第一次安装了postgresql今后,它的平安设置已经让我困扰过一阵,如今我将以我的履历为线索来说述怎样设置postgresql的会见认证,postgresql的版本是7.3.1,老一点的版本在设置文件上会有稍许分歧,请本人注重区分。别的,在浏览中,请注重辨别数据库用户和体系用户的区分,以避免搅浑。
postgresql的会见认证设置次要触及到两个次要的设置文件:postgresql.conf和pg_hba.conf。
postgresql.conf包括了很多的选项,这些选项把持了postgresql.conf的各个方面,两头影响会见认证的选项是:
unix_socket_group
设置Unix域套接字的组一切人,(套接字的一切权用户老是启动postmaster的用户)与UNIX_SOCKET_PERMISSIONS选项一同利用能够给这类套接字范例增添分外的会见把持机制,缺省时是一个空字串,也就是利用以后用户的缺省的组,这个选项只能在服务器启动时设置。
unix_socket_permissions
给Unix域套接字设置会见权限,Unix域套接字利用一般的Unix文件体系权限集。可选的值能够是一个chmod和umask体系挪用能够承受的数字形式。(要利用客户化的八进制格局,该数字必需以0(零)开首)
缺省权限是0777,意即任何人都能够连接,公道的选则多是0770(只要用户和组,参阅UNIX_SOCKET_GROUP)和0700(只要用户)。(请注重关于Unix套接字而言,实践上只要写权限成心义,并且也没有举措设置大概作废读或实行权限)
这个选项只能在服务器启动时设置。
pg_hba.conf是设置会见认证的次要文件,格局为每笔记录一行,每行指定一条会见认证。设定一条会见认证包括了7个部分:毗连体例(type)、数据库(database)、用户名(user)、ip地点(ip-address)、子网掩码(ip-mask)、认证办法(authenticationmethod)、认证设置(authentication-option),以下是这7个部分的具体申明:
毗连体例(type)
毗连体例共有三种:local、host、hostssl
local
这笔记录婚配经由过程Unix域套接字举行的连接妄图,没有这类范例的纪录,就不同意Unix域套接字的连接。
host
这笔记录婚配经由过程TCP/IP收集举行的连接实验,请注重,除非服务器是带着-i选项大概翻开了postgresql.conf内里的tcpip_socket设置参数集启动的,不然TCP/IP连接是被克制失落的。
hostssl
这笔记录婚配经由过程在TCP/IP长进行的SSL连接妄图,host纪录能够婚配SSL和非SSL的连接妄图,但hostssl纪录必要SSL连接。
数据库(database)
声明纪录所婚配的数据库。值all标明该纪录婚配一切数据库,值sameuser暗示假如被哀求的数据库和哀求的用户同名,则婚配。samegroup暗示哀求的用户必需是一个与数据库同名的组中的成员。在其他情形里,这就是一个特定的PostgreSQL的名字。我们能够经由过程用逗号分开的办法声明多个数据库。一个包括数据库名的文件能够经由过程对该文件前缀@来声明.该文件必须和pg_hba.conf在统一个目次。
用户名(user)
为这笔记录声明所婚配的PostgreSQL用户,值all标明它婚配于一切用户。不然,它就是特定PostgreSQL用户的名字,多个用户名能够经由过程用逗号分开的办法声明,组名字能够经由过程用+做组名字前缀来声明。一个包括用户名的文件能够经由过程在文件名后面前缀@来声明,该文件必须和pg_hba.conf在统一个目次。
ip地点(ip-address)
子网掩码(ip-mask)
这两个字段包括尺度的点分十进制暗示的IP地点/掩码值。(IP地点只能用数字的体例声明,而不克不及用域名大概主机名)它们俩放在一同,声了然这笔记录婚配的客户机的IP地点。正确的逻辑是:
(actual-IP-addressxorIP-address-field)andIP-mask-field
关于要婚配的纪录必须为零。
假如毗连体例是host大概hostssl的话,这两项必需指定,不然能够不填。
认证办法(authenticationmethod)
trust
无前提地同意连接,这个办法同意任何能够与PostgreSQL数据库连接的用户以他们希冀的恣意PostgreSQL数据库用户身份举行连接,而不必要口令。
reject
连接无前提回绝,经常使用于从一个组中"过滤"某些主机。
md5
请求客户端供应一个MD5加密的口令举行认证,这个办法是同意加密口令存储在pg_shadow里的独一的一个办法。
crypt
相似md5办法,只是用的是老式的crypt加密认证,用于7.2之前的客户端,关于7.2和今后的客户端,我们倡议利用md5。
password
和"md5"一样,可是口令是以明文情势在收集上传送的,我们不该该在不平安的收集上利用这个体例。
krb4
用KerberosV4认证用户,只要在举行TCP/IP连接的时分才干用。(译注:Kerberos,"克尔波洛斯",故希腊神话冥王哈得斯的多头看门狗。Kerberos是MIT开辟出来的基与对称加密算法的认证协定和/或密钥互换办法,其特性是必要两个分歧用处的服务器,一个用于认证身份,一个用于通道两头用户的密钥互换。同时Kerberos对收集工夫同步请求对照高,以避免回放打击,因而一般陪伴NTP服务。)
krb5
用KerberosV5认证用户.只要在举行TCP/IP连接的时分才干用。(译注:KerberosV5是下面V4的改进,次要是不再依附DES算法,同时增添了一
12下一页
RedHatCentOS等等.学习linux不是逛自由市场,选定版本就要静下心来学习.不要今天换版本明天要升级.这样对你没有好处。 |
|