1.Windows安装使用OpenLDAP
参照 http://www.micmiu.com/enterprise-app/sso/openldap-windows-config/
a.下载openldap-2.2.29-db-4.3.29-openssl-0.9.8a-win32_Setup.rar
d.在控制台里输入命令:
ldapadd -x -D "cn=Manager,dc=my-domain,dc=com" -w secret -f my-domain.ldif
向数据库中添加条目。
e.查看条目,修改条目,删除条目的命令用法,可以参考下面的网页
http://book.51cto.com/art/201002/182473.htm
f.下面的网页演示了用ldapmodify命令来修改,添加,删除条目的方法。
http://wenku.baidu.com/view/672aeacb05087632311212a7.html
g.解压LdapBrowser282.zip后双击lbe.bat,可以通过可视化的方式,操作目录数据库。
http://www.micmiu.com/enterprise-app/sso/openldap-windows-config/
h.用文本方式编辑lbe.bat可以发现,lbe.bat正常运行需要java命令。
如果电脑没有安装java环境,请安装jdk-7u21-windows-i586.exe
2.linux安装使用OpenLDAP
参照 http://blog.sina.com.cn/s/blog_56d8ea900100q5jr.html
#cd db_4.7.25
# cd build_unix/
# ../dist/configure -prefix=/home/XXX/app/BerkeleyDB
# make
# make install
b.安装openldap前准备:配置环境变量,参考openldap install文件
#export CPPFLAGS="-I/home/XXX/app/BerkeleyDB/include -D_GNU_SOURCE"
注:不设置make时报getpeereid.c:65: error: storage size of ‘peercred’ isn’t known错误
#export LDFLAGS="-L/home/XXX/app/BerkeleyDB/lib"
注:不设置configure时报configure: error: BDB/HDB: BerkeleyDB not available错误
#export LD_LIBRARY_PATH="/home/XXX/download/db-4.7.25/build_unix/.libs"
注:不设置configure时报configure: error: Berkeley DB version mismatch错误
c.安装openldap-2.4.15
#tar xvf openldap-2.4.15.tgz
#cd openldap-2.4.15/
#./configure -prefix=/home/XXX/app/openldap
# make depend
# make test 可跳过
# make
# make install
d.启动openldap
#cd /home/XXX/app/openldap/libexec
如果是root用户:
#./slapd -d 1
否则
#su root -c "./slapd -d 1"
e.数据库的操作同windows。
f.错误处理
错误一:openldap安装成功后,另外启动一个终端,slapd启动时将报错:
./slapd: error while loading shared libraries: libdb-4.7.so: cannot open shared object file: No such file or directory
#cp /home/XXX/app/BerkeleyDB/BerkeleyDB/lib/* /usr/lib/
提示: ld.so.conf记录了编译、或运行时使用的动态链接库(.so)的路径。默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件。
# cd db_4.7.25
# cd build_unix/
# env CC=arm-linux-gcc
# env CC=arm-linux-gcc ../dist/configure -prefix=/home/XXX/app/BerkeleyDB
# make
# make install
#export CPPFLAGS="-I/home/XXX/app/BerkeleyDB/include -D_GNU_SOURCE"
#export LDFLAGS="-L/home/XXX/app/BerkeleyDB/lib"
#export LD_LIBRARY_PATH="/home/XXX/download/db-4.7.25/build_unix/.libs"
#tar xvf openldap-2.4.15.tgz
#cd openldap-2.4.15/
#./configure -prefix=/home/XXX/app/openldap CC=arm-linux-gcc --host=arm --with-yielding-select=yes --with-tls=no
# make depend
# make test 可跳过
# make
# make install -i
参照 http://www.micmiu.com/enterprise-app/sso/openldap-windows-config/
a.下载openldap-2.2.29-db-4.3.29-openssl-0.9.8a-win32_Setup.rar
b.打开控制台,切换到openLDAP安装目录,启动openLDAP,命令如下
slap -d 1
c.在安装目录下,新建文件my-domain.ldifd.在控制台里输入命令:
ldapadd -x -D "cn=Manager,dc=my-domain,dc=com" -w secret -f my-domain.ldif
向数据库中添加条目。
e.查看条目,修改条目,删除条目的命令用法,可以参考下面的网页
http://book.51cto.com/art/201002/182473.htm
f.下面的网页演示了用ldapmodify命令来修改,添加,删除条目的方法。
http://wenku.baidu.com/view/672aeacb05087632311212a7.html
g.解压LdapBrowser282.zip后双击lbe.bat,可以通过可视化的方式,操作目录数据库。
http://www.micmiu.com/enterprise-app/sso/openldap-windows-config/
h.用文本方式编辑lbe.bat可以发现,lbe.bat正常运行需要java命令。
如果电脑没有安装java环境,请安装jdk-7u21-windows-i586.exe
2.linux安装使用OpenLDAP
参照 http://blog.sina.com.cn/s/blog_56d8ea900100q5jr.html
XXX是用户名。
a.安装Berkeley DB 4.7.25
#tar xvf db-4.7.25.tar.gz#cd db_4.7.25
# cd build_unix/
# ../dist/configure -prefix=/home/XXX/app/BerkeleyDB
# make
# make install
b.安装openldap前准备:配置环境变量,参考openldap install文件
#export CPPFLAGS="-I/home/XXX/app/BerkeleyDB/include -D_GNU_SOURCE"
注:不设置make时报getpeereid.c:65: error: storage size of ‘peercred’ isn’t known错误
#export LDFLAGS="-L/home/XXX/app/BerkeleyDB/lib"
注:不设置configure时报configure: error: BDB/HDB: BerkeleyDB not available错误
#export LD_LIBRARY_PATH="/home/XXX/download/db-4.7.25/build_unix/.libs"
注:不设置configure时报configure: error: Berkeley DB version mismatch错误
c.安装openldap-2.4.15
#tar xvf openldap-2.4.15.tgz
#cd openldap-2.4.15/
#./configure -prefix=/home/XXX/app/openldap
# make depend
# make test 可跳过
# make
# make install
d.启动openldap
#cd /home/XXX/app/openldap/libexec
如果是root用户:
#./slapd -d 1
否则
#su root -c "./slapd -d 1"
e.数据库的操作同windows。
f.错误处理
错误一:openldap安装成功后,另外启动一个终端,slapd启动时将报错:
./slapd: error while loading shared libraries: libdb-4.7.so: cannot open shared object file: No such file or directory
出错原因:找不到bdb的链接库。
解决办法一:完全拷贝。
#cp /home/XXX/app/BerkeleyDB//include/* /usr/include/#cp /home/XXX/app/BerkeleyDB/BerkeleyDB/lib/* /usr/lib/
解决办法二(推荐):
要把/home/XXX/app/BerkeleyDB/lib的库路径直接加到/etc/ld.so.conf文件最后一行,添加完成后执行一次 ldconfig,使用配置文件生效。提示: ld.so.conf记录了编译、或运行时使用的动态链接库(.so)的路径。默认情况下,编译器只会使用/lib和/usr/lib这两个目录下的库文件。
错误二:debug模式启动时报daemon: bind(7) failed errno=13错误
出错原因:是1024以下的端口必须由root才能绑定。因为ldap默认是389端口。所以才报这个错误。
解决办法:su root -c "./slapd"
3.交叉编译LDAP 目标板用的是ARM
# tar xvf db-4.7.25.tar.gz# cd db_4.7.25
# cd build_unix/
# env CC=arm-linux-gcc
# env CC=arm-linux-gcc ../dist/configure -prefix=/home/XXX/app/BerkeleyDB
# make
# make install
#export CPPFLAGS="-I/home/XXX/app/BerkeleyDB/include -D_GNU_SOURCE"
#export LDFLAGS="-L/home/XXX/app/BerkeleyDB/lib"
#export LD_LIBRARY_PATH="/home/XXX/download/db-4.7.25/build_unix/.libs"
#tar xvf openldap-2.4.15.tgz
#cd openldap-2.4.15/
#./configure -prefix=/home/XXX/app/openldap CC=arm-linux-gcc --host=arm --with-yielding-select=yes --with-tls=no
# make depend
# make test 可跳过
# make
# make install -i