OPENLDAP 命令操作
来源:互联网 发布:金山恢复数据 编辑:程序博客网 时间:2024/05/17 23:43
手动录入方法
第一步是要建立DN:
#ldapadd -x -D 'cn=root,dc=it,dc=com' -W
dn:dc=it,dc=com
objectClass:dcObject
objectClass:organization
dc:it
o:Corporation
description:d Corporation
注意:如果你用复制/粘贴功能把以上内容拷贝过去,一定要注意每行后面不要有空格,建议还是手工输入,按Ctrl+d存盘。
第二步是建立RDN:
#ldapadd -x -D 'cn=root,dc=it,dc=com' -W
#-x表示用简单验证,-D表示指定目录,-W表示弹出密码输入提示
输入密码,这里的密码是在配置文件中rootpw项设置的密码,不是操作系统中root用户的密码。验证通过后就可输入以下内容:
dn:uid=qq,dc=cs,dc=tjut
objectClass:person
objectClass:organizationalPerson
objectClass:inetOrgPerson
uid:qq
cn:qq
sn:qq
telephoneNumber:138888888
description:openldap test
telexNumber:tex-8888888
street:my street
postOfficeBox:postofficebox
displayName:qqdisplay
homePhone:home1111111
mobile:mobile99999
mail:qq@qq.com
输入完所有信息后,按Ctrl+d结束存盘。如果出现出错信息,请查一下对象类和属性的对应关系有没有错或输入失误。初学者就容易出错的地方是对象类和属性的对应关系没有处理好。对象类和属性是在schema文档中定义的。它们之间的关系是这样的,对象类中有些属性是必选的,有些属性是可选的。录入信息的属性必须在对象类中有定义才能用。
输入以下命令可查询到刚才输入的信息。
#ldapsearch -x -b 'dc=it,dc=com'
-b选项是设置目录起点,如果设置了客户端的BASE配置参数,该项可不用。
如果按以上配置文件设置了acl,用上面的查询命令是查询不到受保护的内容的。如上面的userPasswordand mail。要查询到这些受限内容,需要通过验证才可以:
#ldapsearch -x -LLL -h it.com -b 'dc=it,dc=com' -D'uid=qq,dc=it,dc=com' -W 'uid=qq'
接着提示输入密码。输入userPassword的密码回车,所有信息就都出来了。
2.2.2. 文件方式
.ldif文件方式也就是把以上手工输入的内容先写入一个.ldif文件中,然后,用ldapadd命令的-f参数导入。
#ldapadd -x -D "cn=root,dc=it,dc=com" -W -f test.ldif
一个完整的global.ldif文件例子:
dn:dc=info, dc=net
objectClass:top
objectClass:organization
o:info.net
dn:ou=People, dc=info, dc=net
objectClass:top
objectClass:organizationalUnit
ou:People
description:User Info
dn:cn=Admin, dc=info, dc=net
objectClass:top
objectClass:person
objectClass:organizationalPerson
cn:Admin
sn:Admin
userPassword:Admin
description:Administrator for info.net
dn:id=1, ou=People, dc=info, dc=net
objectclass:top
objectclass:InfoPerson
id:1
username:张三
tel:021-63138990
card_id:ABC001
我们也可用slapadd命令来导入数据。该命令可以导入包含一些系统信息的ldif文件,如:
dn:dc=it,dc=com
objectClass:top
objectClass:dcObject
objectClass:organization
dc:it
structuralObjectClass:organization
entryUUID:d97b06da-d77e-1028-9866-d4ec7ac00d12
creatorsName:cn=anonymous #系统信息
createTimestamp:20041201005115Z #系统信息
o::5bm/5bee5biC6JmO5aS055S15rGg6ZuG5Zui5pyJ6ZmQ5YWs5Y+4
userPassword::e01ENX14TXBDT0tDNUk0SU56RkNhYjNXRW13PT0=
entryCSN:2004120603:50:08Z#0x0001#0#0000 #系统信息
modifiersName:cn=admin,dc=it,dc=com #系统信息
modifyTimestamp:20041206035008Z #系统信息
再次提醒,注意每行后面不要留有空格。
2.2.3. 脚本方式
脚本录入方式需要自已编写脚本,或到网上下载。有一个用PHP写的LDAP管理工具不错,叫phpLDAPadmin。可以到以下网址下载:http://phpldapadmin.sourceforge.net。安装方法也很简单,只要解压出来,拷贝到apache的web目录下,按说明配置一下设定文档,就ok了。
2.3. 常用命令介绍
接着为大家介绍一下几个常用的ldap命令,如果你用了phpLDAPadmin程序,其实它已经有一个很好的图形介面帮你完成这些命令了。但了解一下还是对你还是很有益的,因为命令方法才是最根本的。
删除命令ldapdelete
#ldapdelete -x -D 'cn=root,dc=it,dc=com' -W 'uid=qq1,dc=it,dc=com'
重新索引ldap数据库命令slapindex
#slapindex -f slapd.conf
设置使用者密码,当然了,你的用户需要有userPassword项了。
#ldappasswd-x -D "cn=root,dc=it,dc=com" -W "uid=qq1,dc=it,dc=com"-S
Newpassword:
Re-enternew password:
Enterbind password:
Result:Success (0)
"Enterbind password" 是"cn=root,dc=it,dc=com"管理员的密码。
管理员密码更改
#slappasswd
Newpassword
Re-enternew password
{SSHA}83DJ4KVwqlk1uh9k2uDb8+NT1U4RgkEs
接下再拷贝到path/to/sldap.conf的rootpw即可,重启使用配置文件生效
通过ldapmodify修改目录内容
#ldapmodify -x -D "cn=root,dc=it,dc=com" -W -f modify.ldif
通过ldif文件修改ldap数据,ldif文件格式如下:
dn:cn=qq,dc=it,dc=com
changetype:modify
replace:mail
mail:modme@example.com
-
add:title
title:Grand Poobah
-
add:jpegPhoto
jpegPhoto:<file:///tmp/modme.jpeg
-
delete:description
-
- OPENLDAP 命令操作
- openLDAP操作命令
- OpenLDAP命令
- 启动OpenLDAP的命令
- openldap命令汇总
- OpenLDAP 操作備忘
- OpenLDAP 操作備忘
- C语言操作OpenLDAP
- openldap基本配置和操作
- OpenLDAP
- OpenLDAP
- OpenLDAP
- openLDAP
- openldap
- openldap使某些命令变慢
- OpenLDAP学习笔记4——重要程序及命令
- openldap安装以及存取读取证书操作(PHP)
- 运行OpenLdap
- (转载) 个人认为值得学习并持之以恒!
- MFC中获得各个类的句柄的总结
- gridview、datalist、repeater、FormView、DetailsView的区别详解
- BPEL
- ORACLE临时表的使用
- OPENLDAP 命令操作
- 非卓越基层研发主管的26宗罪
- IIS默认网站停止
- python应用领域介绍
- 配置 IIS
- Triple Des算法
- [Visual Studio 2010 Beta 2] 使用Help Library manager 下载.Net Framework等文档
- 试水技术论坛:泥巴乐园技术社区bbs.webgameexpress.com
- Linux中“is not in the sudoers file”解决方法