免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 8102 | 回复: 6
打印 上一主题 下一主题

[ldap] OpenLDAP-ldapsearch查询时,认证失败如何解决?? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-26 10:00 |只看该作者 |倒序浏览
这两天在做OpenLDAP服务测试,碰到一个问题,一直没解决,盼各位指点迷津,slapd.conf文件内容如下(在此去掉所有注释行):
include         /etc/openldap/schema/core.schema
include         /etc/openldap/schema/cosine.schema
include         /etc/openldap/schema/inetorgperson.schema
include         /etc/openldap/schema/nis.schema
include         /etc/openldap/schema/misc.schema
include         /etc/openldap/schema/ppolicy.schema
include         /etc/openldap/schema/openldap.schema

allow bind_v2
pidfile          /var/run/openldap/slapd.pid
argsfile        /var/run/openldap/slapd.args

database     bdb
suffix            "dc=openldap,dc=edu"
rootdn          "cn=adm,dc=openldap,dc=edu"
rootpw          {MD5}ICy5YqxZB1uWSwcVLSNLcA==
directory       /var/lib/ldap

index objectClass                       eq,pres
index ou,cn,mail,surname,givenname      eq,pres,sub
index uidNumber,gidNumber,loginShell    eq,pres
index uid,memberUid                     eq,pres,sub
index nisMapName,nisMapEntry            eq,pres,sub

编辑完slapd.conf后,可正常启动OpenLDAP服务(无错误提示),然后用slapadd添加了init.ldif文件内容:
dn:dc=openldap,dc=edu
objectclass:dcObject
objectclassrganization
o:OpenLDAP edu
dcpenldap

dn:cn=adm,dc=openldap,dc=edu
objectclassrganizationRole
cn:adm

用ldapsearch查询时,只能用匿名绑定方式才能查询到信息,如:ldapsearch -xb "dc=openldap,dc=edu" namingContexts可正常显示查询结果,但去掉参数“x"时,输入adm密码后就会提示:
[root@cat openldap]# ldapsearch -b "dc=openldap,dc=edu" namingContexts
SASL/DIGEST-MD5 authentication started
Please enter your password:[确认密码输入无误]
ldap_sasl_interactive_bind_s: Invalid credentials (49)
        additional info: SASL(-13): user not found: no secret in database

按提示上说是帐号密码不在数据库中??!  好!既然不存在那我就添加一下:saslpasswd2 -c adm,sasldblistusers2可显示刚才添加的adm帐号,然后再ldapsearch查询,输入密码后还是提示上面红字部分的错误信息。之后,我都把db4,openldap重装,重新配置、添加帐号,启动ldapsearch查询错误还在,实在是弄不懂了,来chinaunix.net求教各位

论坛徽章:
0
2 [报告]
发表于 2008-08-26 10:11 |只看该作者
man ldapsearch

看一下-x
这个参数~会明白更多~~

论坛徽章:
0
3 [报告]
发表于 2008-08-26 10:17 |只看该作者

回复 #2 gavinzhm 的帖子

在这里我是想去掉参数“-x",去查询,用adm认证密码就会出错,而且我用JXplorer登录时也登录不去,关键原因还是在adm帐号密码问题,ldap_sasl_interactive_bind_s: Invalid credentials (49)     additional info: SASL(-13): user not found: no secret in database

  我在/etc/sasldb2文件里,已存在adm帐号密码记录,按说不会出现类似错误,可问题是还存在,所以我有点闷了 ,不知所错

论坛徽章:
0
4 [报告]
发表于 2008-08-26 21:40 |只看该作者
sasl的用户不是这样存储的。
在安装了sasl库的前提下,执行sasl(xxx)记不清了-c 用户名添加一个用户,并输入用户名。使用
这个用户进行登陆。

论坛徽章:
0
5 [报告]
发表于 2008-08-27 09:45 |只看该作者

回复 #4 hostname 的帖子

我的Llinx里面安装的是如下几个sasl相关包
cyrus-sasl-lib-2.1.22-7
cyrus-sasl-devel-2.1.22-7
cyrus-sasl-plain-2.1.22-7
cyrus-sasl-2.1.22-7
cyrus-sasl-md5-2.1.22-7

添加帐号我是用的:
[root@localhost ~]# saslpasswd2 -c adm
Password:[123]
Again (for verification):[123]
[root@localhost ~]# sasldblistusers2
adm@localhost.localdomain: userPassword

都能看到刚才添加的用户,可是在用ldapsearch -b "dc=openldap,dc=edu",按提示输入adm密码,它仍然提示的是:
ldap_sasl_interactive_bind_s: Invalid credentials (49)
        additional info: SASL(-13): user not found: no secret in database

ldapsearch -WU admaint -b "dc=openldap,dc=edu" 问题还是一样!
所以我闷头了。不知道是个地方设置有问题!

[ 本帖最后由 banbii 于 2008-8-27 09:52 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2008-08-27 11:32 |只看该作者
在安装sasl时插件位置你没有特意指定吧,有没有把/usr/local/sasl2/lib/sasl目录拷贝到/lib/sasl2/lib/下面。

论坛徽章:
0
7 [报告]
发表于 2008-08-27 11:43 |只看该作者

回复 #6 yangyufeng507 的帖子

cyrus-sasl我是用rpm包安装的。。按说不存在这个问题,朋友如果方便的话,请留下QQ或者MSN什么的,我们联綫研究一下这个问题?!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP