免费注册 查看新帖 |

Chinaunix

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

[ldap] ldapadd 出错!其实是还不理解openldap的工作模式,望解答 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-01 18:57 |只看该作者 |倒序浏览
源代码方式安装openldap-2.3.39
第一次安装的时候,运行下面的命令是提示正确加入的。但觉得不太满意,就觉得需要重新更改一些目录结构。如:dc ,o 这类。
停止ldap服务,删除了ldap的数据库里的数据文件,只保留了 DB_CONFIG


  1. [root@TTT ~]# cd /usr/local/var/openldap-data/
  2. [root@TTT openldap-data]# ll
  3. 总用量 4144
  4. -rw-r--r--  1 root root      2048  8月  1 18:52 alock
  5. -rw-------  1 root root     16384  8月  1 18:40 __db.001
  6. -rw-------  1 root root 335552512  8月  1 18:40 __db.002
  7. -rw-------  1 root root   2359296  8月  1 18:40 __db.003
  8. -rw-------  1 root root    450560  8月  1 18:40 __db.004
  9. -rw-------  1 root root     24576  8月  1 18:40 __db.005
  10. -rw-------  1 root root       886  8月  1 18:39 DB_CONFIG
  11. -rw-------  1 root root       886  8月  1 18:30 DB_CONFIG.example
  12. -rw-------  1 root root      8192  8月  1 18:52 dn2id.bdb
  13. -rw-------  1 root root     32768  8月  1 18:52 id2entry.bdb
  14. -rw-------  1 root root     43277  8月  1 18:52 log.0000000001
复制代码

删除数据文件后,需要重新建立DN

  1. #ldapadd -x -D "cn=admin,dc=hfhh,dc=cn" -W  -f system.ldif
复制代码

错误提示是:


  1. adding new entry "dc=cu,dc=cn"
  2. ldapadd: Invalid syntax (21)
  3.         additional info: objectClass: value #1 invalid per syntax
复制代码


这个时候,我发现,即使什么都不改,就按照原来成功时的配置,用 Apache Directory Suite 工具连接openldap服务器时,都无法见到之前的类似:dc=cu,dc=cn 这样的根呀!!之前我也是这样加都没有错误提示。。。

我的system.ldif

  1. dn: dc=cu,dc=cn
  2. dc: cu
  3. objectClass: top
  4. objectClass: domain

  5. dn: ou=People,dc=cu,dc=cn
  6. ou: People
  7. objectClass: top
  8. objectClass: organizationalUnit

  9. dn: ou=Group,dc=cu,dc=cn
  10. ou: Group
  11. objectClass: top
  12. objectClass: organizationalUnit
复制代码


/usr/local/etc/openldap/slapd.conf  内容

  1. include         /usr/local/etc/openldap/schema/core.schema
  2. pidfile         /usr/local/var/run/slapd.pid
  3. argsfile        /usr/local/var/run/slapd.args
  4. database        bdb
  5. suffix          "dc=cu,dc=cn"
  6. rootdn          "cn=admin,dc=cu,dc=cn"
  7. rootpw          hehe
  8. directory       /usr/local/var/openldap-data
  9. index   objectClass     eq
复制代码


哪位兄弟可以给个解释都好呀!!

[ 本帖最后由 islandstar 于 2008-8-2 09:37 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-08-01 20:47 |只看该作者
slapd -d 256
贴DEBUG LOG出来看看~

另外 objectClass: domain
这个是在那个schema文件里定义的~
我这边没有LDAP没法查~

论坛徽章:
0
3 [报告]
发表于 2008-08-02 09:35 |只看该作者
原帖由 gavinzhm 于 2008-8-1 20:47 发表
slapd -d 256
贴DEBUG LOG出来看看~

……


日志是

  1. conn=1 fd=12 ACCEPT from IP=127.0.0.1:32776 (IP=0.0.0.0:389)
  2. conn=1 op=0 BIND dn="cn=admin,dc=cu,dc=cn" method=128
  3. conn=1 op=0 BIND dn="cn=admin,dc=cu,dc=cn" mech=SIMPLE ssf=0
  4. conn=1 op=0 RESULT tag=97 err=0 text=
  5. conn=1 op=1 ADD dn="dc=cu,dc=cn"
  6. conn=1 op=1 RESULT tag=105 err=21 text=objectClass: value #1 invalid per syntax
  7. conn=1 op=2 UNBIND
  8. conn=1 fd=12 closed
复制代码


那个domain 是用MigrationTools工具包预先生成的ldif
  1. ./migrate_base.pl > ~/system.ldif
复制代码

而且最开始我导入是正确的,没有出错,用Apache Directory Suite浏览OPENLDAP服务器是正常的,可以看到根。
domain 似乎在 core.schema 文件就有呀!!

[ 本帖最后由 islandstar 于 2008-8-2 09:44 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2008-08-02 11:14 |只看该作者
看了下这篇帖子 http://bbs.chinaunix.net/viewthr ... p%3Bfilter%3Ddigest

其中

  1. 第一步是要建立DN:
  2. # ldapadd -x -D 'cn=root,dc=it,dc=com' -W
  3. dn: dc=it,dc=com
  4. objectClass: dcObject
  5. objectClass: organization
  6. dc: it
  7. o: Corporation
  8. description: d Corporation
复制代码

我照着更改了下,建立DN,客户端连过去就可以看到根,如:dc=cu,dc=cn 了。看来是对结构的不了解。

如果不要 dc=cu,dc=cn 这样的 dcObject ,而只要国家这样的 c ,如:c=China ,不知道建立这个DN要如何写哦?

论坛徽章:
0
5 [报告]
发表于 2008-08-04 11:12 |只看该作者
原帖由 islandstar 于 2008-8-2 11:14 发表
看了下这篇帖子 http://bbs.chinaunix.net/viewthr ... p%3Bfilter%3Ddigest

其中

第一步是要建立DN:
# ldapadd -x -D 'cn=root,dc=it,dc=com' -W
dn: dc=it,dc=com ...


而只要国家这样的 c ,如c=china

你看一下国家这个是在那个objectclass里定义的~把这个包含进去就可以用了~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP