OpenLDAP的安装与基本使用方法(二)
接下来我们回过头看/etc/slapd.d/cn=config/olcDatabase={2}mdb.ldif
当中的内容:
olcRootDN: cn=Manager,dc=my-domain,dc=com
olcRootDN
是用来操作这个数据库的账号。然后看olcSuffix
的定义:
olcSuffix: dc=my-domain,dc=com
上面的配置定义了这个数据库的查询地址。
在上一篇文章中,我们启动了slapd
服务,因此这里我们可以使用ldapsearch
命令来查询数据库:
$ ldapsearch -v -x -h localhost -D 'cn=Manager,dc=my-domain,dc=com' -w '' -b 'dc=my-domain,dc=com'
ldap_initialize( ldap://localhost )
ldap_bind: Server is unwilling to perform (53)
additional info: unauthenticated bind (DN with no password) disallowed
上面的ldapsearch
命令后面跟了一大串的options,其中-v
是使用verbose模式,输出更多信息;-x
是使用普通的用户名密码模式来访问数据库;-h
是指定要访问的服务器地址;-D
是上面看到的数据库管理员账号;-w
是密码,我们还没设定密码,所以留空;-b
是上面看到的数据库的查询地址。
最后上面的查询报错了,错误原因是RootDN
不能使用空密码。因此我们要给管RootDN
设置一个密码。打开/etc/slapd.d/cn=config/olcDatabase={2}mdb.ldif
,在RootDN
的下面添加一行:
olcRootPW: secret
这里为了配置简单,我们就使用明文来保存密码,密码是secret
。保存文件,然后重新启动slapd
服务:
service slapd restart
然后我们重新做查询,这次要把密码加上
$ ldapsearch -v -x -h localhost -D 'cn=Manager,dc=my-domain,dc=com' -w 'secret' -b 'dc=my-domain,dc=com'
ldap_initialize( ldap://localhost )
filter: (objectclass=*)
requesting: All userApplication attributes
# extended LDIF
#
# LDAPv3
# base <dc=my-domain,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# search result
search: 2
result: 32 No such object
# numResponses: 1
如上所示,已经可以进行数据库的查询了。
\[\blacksquare\]