Linux——LDAP配置
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LDAP服务器
现在市场上有很多LDAP服务器,大多数都可以在linux上运行。本文将介绍openLDAP 的使用。
我为什么选择openLDAP? 为什么你应该选择openLDAP?
* openLDAP是开放源码的
openLDAP的官方网站是。你可以下载其源代码包自己编译,或者看看你的linux发行版是否已经包含了该软件包。如果已经包含了就可以安装预先编译好的版本从而少花费些力气。
我已经成功地在SuSE6.x 和RedHat6.x上测试过openLDAP。
构建LDAP目录
下面我们将介绍设置一个LDAP服务器的步骤。
步骤:
* 下载并安装openLDAP
* 配置LDAP server
* 配置本地环境指向LDAP 安装
* 初始化LDAP 数据库
* 查询LDAP
* 添加/修改LDAP 条目
下载并安装openLDAP
正如前面所提到的,可以从下载源代码包并根据它的相关文档进行安装,或者安装预先编译好的包(包的安装或如何编译应用程序已经超出了本文讨论的范畴)。
配置LDAP服务器
在我们的例子中,我将为构建LDAP服务器。你可以用你喜欢的编辑器编辑slapd.conf和f配置文件来更改名称等参数以适应你的具体需求。
在我的服务器上配置文件在/etc/openldap目录下,你的配置文件可能在/usr/local/etc/openldap或者别的地方,这要根据你的linux发行版本或者编译openldap的具体情况而定。
######### /etc/openldap/slapd.conf ###################################
# 下面的部分是我的suse 6.4 linux 发行版本预先定义的
# 我们设置的部分在本文的第二和第三部分
include /etc/openldap/slapd.at.conf
include /etc/openldap/slapd.oc.conf
schemacheck off
pidfile /var/run/slapd.pid
argsfile /var/run/slapd.args
#######################################################################
# ldbm database definitions
#######################################################################
# 定义使用的数据库类型。缺省是ldbm
database ldbm
# 后缀或者根. 这是你LDAP目录的顶节点
suffix "o="
# LDAP的dbs 保存的位置
directory /var/lib/ldap
# 目录管理员的区分名
rootdn "cn=Manager, o="
# 保存ldap目录管理员的明文密码是很糟糕的,但是我们将在刚刚开始使用ldap时这样做
rootpw secret
# 这就是所有的一切
编辑你的/etc/openldap/ldap.conf配置文件
该文件位于ldap客户端(我们将使用同一计算机作为服务器和客户端,当然这可以在同一计算机或不同的计算机上)
通常诸如ldapdelete 、ldapadd等等的ldap客户端会读该文件的内容。
##########/etc/openldap/ldap.conf#########
# LDAP 的缺省设置
#
# 查看ldap.conf(5) 可以获取更多的信息
# 本文件应该设置为对所有人可读
# 定义ldap服务器,可以用主机名或ip地址
host 127.0.0.1
# 定义我们要查询的目录的根
# 我们将要使用的顶节点,这不一定是目录的根,比如我们可以使用
# base = ou=users, o=linuxfocus.ch
# 这时我们的一切查询都将从树根o=的分支开始
现在启动ldap服务器。
如果你使用SuSE预先编译好的openldap服务器,你可以通过下面的命令启动ldap服务/etc/rc.d/ldap start
在RedHat,该命令为
/etc/rc.d/init.d/ldap start
如果你是使用缺省设置自己编译并安装的,你可以用/usr/local/libexec/slapd &启动ldap 服务器。如果没有使用缺省设置,请找到slapd文件并运行它。
在新安装的LDAP服务器上添加数据
到现在为止,你的ldap服务器已经运行起来了,可以准备添加数据了。最标准的往ldap
服务器中添加数据的方法是建立一个LDIF(LDAP目录交换格式)文件。你可以通过阅读man ldif来获得更多关于ldif的信息。
简单说来,ldif是ldap条目的文本表示。这些条目是很好读懂的,并且可以在来自两个不同的厂家的LDAP服务器间交换数据,哪怕使用的是不同的数据库后台或者是运行在不同的操作系统上。
是的,还有其他方法。我对为什么不使用XML替代LDIF感到很惊讶。
就让我们一起来建立ldif文件,而不要感到任何的忙乱。一些应该记住的要点:
? ldif 文件中的每一记录/条目都应用一个空行分开
? 空格是很重要的,"Atif Ghaffar" 和"Atif Ghaffar " 是完全不同的
下面是一个ldif文件.ldif
dn: o=
o:
objectclass: top
objectclass: organization
dn: ou=editors, o=
ou: editors
objectclass: organizationalUnit
dn: uid=aghaffar, ou=editors, o=
uid: aghafar
cn: Atif Ghaffar
sn: Ghaffar
givenname: Atif
objectclass: person
userpassword: yIvSBWSuLs2N2
mailacceptinggeneralid: aghaffar@
ou: editors
dn: uid=mkempe, ou=editors, o=
uid: mkempe
cn: Magnus Kempe
sn: Kempe
givenname: Magnus
objectclass: person
userpassword: clearpass
mailacceptinggeneralid: mkempe@
maildrop: mkempe@developer.ch
preferredlanguage: fr
ou: editors
下面我们将这些数据加入ldap目录。我们使用命令行程序ldapadd
ldapadd -D "cn=Manager, o=" -w secret < .ldif