软件版本:
openldap-2.3.32
db-4.4.20.tar.gz
安装过程:
由于openldap需要Berkeley DB来存放数据,所以需先安装Berkeley DB,
安装BerkeleyDB
#tar zxvf db-4.4.20.tar.gz
#cd db-4.4.20/build_unix
#../dist/configure --prefix=/usr/local/BerkeleyDB ----- 指定数据库安装的目录
#make
#make install
配置系统动态链接库的路径
① 编辑系统动态链接库的配置文件/etc/ld.so.conf,在文件的末尾加入如下语句。
/usr/local/BerkeleyDB/lib
②使用以下命令刷新系统动态链接库缓存,如图13-11所示。
/sbin/ldconfig
安装openldap
tar zxvf openldap-stable-20060823.tgz
#cd openldap-2.3.32
#env CPPFLAGS="-I/usr/local/BerkeleyDB/include"LDFLAGS="-L/usr/local/BerkeleyDB/lib" ./configure--prefix=/usr/local/openldap --enable-bdb (指定数据库的变量配置路径,这样编译openldap时才能找到相应的库文件)
#make depend
#make
#make test (时间很长,耐心等待)
#make install
#cp /usr/local/openldap/var/openldap-data/DB_CONFIG.example /usr/local/openldap/var/openldap-data/DB_CONFIG
安装完毕
编辑配置文件:
配置文件默认路径: /usr/local/openldap/etc/openldap/slapd.conf
配置文件中需要修改的地方如下:
include /usr/local/openldap/etc/openldap/schema/core.schema
include /usr/local/openldap/etc/openldap/schema/corba.schema
include /usr/local/openldap/etc/openldap/schema/cosine.schema
include /usr/local/openldap/etc/openldap/schema/inetorgperson.schema
include /usr/local/openldap/etc/openldap/schema/misc.schema
include /usr/local/openldap/etc/openldap/schema/openldap.schema
include /usr/local/openldap/etc/openldap/schema/nis.schema
(设置schema文档的包含目录,启动时候如果报错可以删除schema中不包含的文档路径)
pidfile /usr/local/openldap/var/run/slapd.pid
argsfile /usr/local/openldap/var/run/slapd.args
(设置pid和args文件的目录 保持默认)
database bdb
# 数据库类型定义使用的后端数据存储方式。其后可以跟的值有bdb、ldbm、passwd、config、dnssrv、ldif、perl、hdb和shell等。bdb指使用Berkley DB 4数据库。
suffix "dc=iwt,dc=com"
# 基准目录的名称位置:唯一的。
rootdn "cn=root,dc=iwt,dc=com"
rootpw 123456
{MD5}4QrcOUm6Wau+VuBX8g+IPg==
#设置目录管理员 和密码
密码可以用加密形式也可以用明文。
管理员名称可任意,这个root和系统的root不是一个概念。
如果密码用md5加密
命令:
[root@iwt openldap]# slappasswd -h {MD5}
New password: 123456
Re-enter new password: 123456
{MD5}4QrcOUm6Wau+VuBX8g+IPg==
directory /usr/local/openldap/var/openldap-data
Loglevel 1
如果需要日志可以定义日志级别,增加日志功能需亚修改syslog配置文件
增加:local4.*/var/log/ldap.log。
index objectClass eq
#增加索引选项,增加索引的速度。具体详细设置参考ldap网站。
基本服务配置配置完毕。
接下来启动服务
命令 :
/usr/local/openldap/libexec/slapd
关闭:
关闭
#kill -INT `cat /usr/local/openldap/var/run/slapd.pid`
如果没有提示什么出错信息,直接返回shell状态,就说明服务器正常启动了。查询ldap启动状态,返回如下。
[root@iwtlibexec]# ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts
version:2
#
#filter: (objectclass=*)
#requesting: namingContexts
#
#
dn:
namingContexts:dc=iwt,dc=com
#search result
search:2
result:0 Success
# numResponses:2
#numEntries: 1
数据录入:
信息录入有多种录入方始
1 手工命令录入
2 *.ldif文件格式录入
命令方式:
首先建立DN:
#ldapadd–x –D ‘cn=root,dc=iwt,dc=com’ –W (回车输入密码进入编辑模式)
dn:dc=iwt,dc=com
objectclass:dcObject
objectclass:organization
dc: iwt
o:Corporation
description:ldap test sever
ctrl+d 保存退出。 注意:每行后面一定不能有空格。
建立RDN (其他节点)
#ldapadd -x -D 'cn=root,dc=iwt,dc=com'–W
回车输入密码,进入编辑模式。
dn: uid=qq,dc=iwt,dc=com
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保存退出
查询:
# ldapsearch -x -b'dc=iwt,dc=com' (-b 设置起点位置 )
详细查询
# ldapsearch -x -LLL-h it.com -b 'dc=iwt,dc=com' -D 'uid=qq,dc=iwt,dc=com' -W 'uid=qq'
显示全部信息
文件输入方式
.ldif文件方式就是把文件手工输入到一个。Ldif文件中然后用命令导入
#ldapadd –x –D “cn=root,dc=iwt,dc=com”–W –f test.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
到此基本调试安装完毕。
可以用工具ldapbrowser来登录查看服务器信息。比较方便。
公司192.168.80.201 上安装了 phpadmin 的管理软件。
可以登录http://192.168.80.201/index.php