LDAP应用概述与qmail+LDAP安装配置
ldap 认证参数-概述说明以及解释

ldap 认证参数-概述说明以及解释1.引言1.1 概述LDAP(Lightweight Directory Access Protocol,轻量级目录访问协议)认证是一种常用于网络身份验证的协议。
它是一种基于客户端-服务器模型的协议,用于访问和维护分布式目录服务。
LDAP认证提供了一种安全而高效的方式来管理和检索目录数据,并且被广泛应用于各种网络应用和服务中。
LDAP认证的基本原理是通过使用LDAP协议与目录服务器进行通信,将用户的身份验证请求传递给目录服务器。
目录服务器存储了组织中的用户信息,通过将用户提供的凭据与存储在目录服务器中的用户凭据进行比对,以确认用户的身份是否有效。
在LDAP认证中,存在一些重要的参数,这些参数对于确保认证的安全性和有效性至关重要。
本文将深入探讨这些参数,并解释它们的功能和使用方法。
本文的目的是帮助读者更好地了解LDAP认证中的各个参数,以便能够正确配置和管理LDAP认证系统。
通过深入理解这些参数,读者将能够更好地保护系统的安全,并确保用户的身份验证过程是可靠和高效的。
在接下来的章节中,我们将逐一介绍LDAP认证中涉及的各个参数,包括参数一、参数二和参数三。
每个参数都有其独特的作用和应用场景,读者将会了解到如何正确配置和使用这些参数,以满足不同的认证需求。
请继续阅读下一节内容,以了解更多关于参数一的详细信息。
1.2文章结构文章结构部分的内容可以写成如下形式:1.2 文章结构本篇文章将按照以下结构展开对LDAP认证参数的详细介绍和讨论:2.1 参数一在本节中,我们将介绍LDAP认证过程中使用到的第一个重要参数。
我们将详细阐述该参数的作用、用法和可能的取值范围,并结合示例进行说明。
2.2 参数二在本节中,我们将深入探讨LDAP认证中另一个关键参数的意义和用法。
我们将解释该参数对认证过程的影响,并提供一些最佳实践和常见问题解答。
2.3 参数三本节将介绍LDAP认证过程中的第三个参数,它在认证过程中扮演着重要角色。
LDAP介绍

LDAP百科名片ldap组件配置案例LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。
它是基于X.500标准的,但是简单多了并且可以根据需要定制。
与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。
LDAP的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPman RFC网页中找到。
目录详细信息LDAP目录的优势LDAP诠释LDAP协议常见的命名格式详细信息LDAP目录的优势LDAP诠释LDAP协议常见的命名格式展开编辑本段详细信息LDAP简介简单说来,LDAP是一个得到关于人或者资源的集中、静态数据的快速方式。
LDAP是一个用来发布目录信息到许多不同资源的协议。
通常它都作为一个集中的地址本使用,不过根据组织者的需要,它可以做得更加强大。
LDAP的实质LDAP其实是一电话簿,类似于我们所使用诸如NIS(Network Information Service)、DNS (Domain Name Service)等网络目录,也类似于你在花园中所看到的树木。
不少LDAP开发人员喜欢把LDAP与关系数据库相比,认为是另一种的存贮方式,然后在读性能上进行比较。
实际上,这种对比的基础是错误的。
LDAP和关系数据库是两种不同层次的概念,后者是存贮方式(同一层次如网格数据库,对象数据库),前者是存贮模式和访问协议。
LDAP是一个比关系数据库抽象层次更高的存贮概念,与关系数据库的查询语言SQL属同一级别。
LDAP最基本的形式是一个连接数据库的标准方式。
该数据库为读查询作了优化。
因此它可以很快地得到查询结果,不过在其它方面,例如更新,就慢得多。
特殊的数据库从另一个意义上 LDAP是实现了指定的数据结构的存贮,它是一种特殊的数据库。
但是LDAP和一般的数据库不同,明白这一点是很重要的。
LDAP 对查询进行了优化,与写性能相比LDAP的读性能要优秀很多。
ldap入门

LDAP快速入门LDAP快速入门1. LDAP简介LDAP(轻量级目录访问协议,Lightweight Directory Access Protocol)是实现提供被称为目录服务的信息服务。
目录服务是一种特殊的数据库系统,其专门针对读取,浏览和搜索操作进行了特定的优化。
目录一般用来包含描述性的,基于属性的信息并支持精细复杂的过滤能力。
目录一般不支持通用数据库针对大量更新操作操作需要的复杂的事务管理或回卷策略。
而目录服务的更新则一般都非常简单。
这种目录可以存储包括个人信息、web链结、jpeg图像等各种信息。
为了访问存储在目录中的信息,就需要使用运行在TCP/IP 之上的访问协议—LDAP。
LDAP目录中的信息是是按照树型结构组织,具体信息存储在条目(entry)的数据结构中。
条目相当于关系数据库中表的记录;条目是具有区别名DN (Distinguished Name)的属性(Attribute),DN是用来引用条目的,DN相当于关系数据库表中的关键字(Primary Key)。
属性由类型(Type)和一个或多个值(Values)组成,相当于关系数据库中的字段(Field)由字段名和数据类型组成,只是为了方便检索的需要,LDAP中的Type可以有多个Value,而不是关系数据库中为降低数据的冗余性要求实现的各个域必须是不相关的。
LDAP中条目的组织一般按照地理位置和组织关系进行组织,非常的直观。
LDAP把数据存放在文件中,为提高效率可以使用基于索引的文件数据库,而不是关系数据库。
类型的一个例子就是mail,其值将是一个电子邮件地址。
LDAP的信息是以树型结构存储的,在树根一般定义国家(c=CN)或域名(dc=com),在其下则往往定义一个或多个组织(organization)(o=Acme)或组织单元(organizational units) (ou=People)。
一个组织单元可能包含诸如所有雇员、大楼内的所有打印机等信息。
ldapadmin使用手册

ldapadmin使用手册一、简介ldapadmin是一款功能强大的LDAP(轻量目录访问协议)管理工具,它提供了用户友好的界面,用于管理和维护LDAP服务器上的目录。
本手册将向您介绍如何使用ldapadmin进行LDAP目录的管理。
二、安装和配置2.1 下载和安装ldapadmin1.打开ldapadmin的官方网站。
2.在下载页面选择适用于您操作系统的版本,然后单击下载按钮。
3.下载完成后,按照安装向导进行安装。
2.2 配置ldap服务器连接在首次启动ldapadmin之后,您需要配置与LDAP服务器的连接。
按照以下步骤进行配置: 1. 打开ldapadmin并选择“文件”>“设置”。
2. 在设置窗口中,选择“连接”选项卡。
3. 点击“添加”按钮,输入连接名称和LDAP服务器的主机名和端口号。
4. 输入管理员用户名和密码,并验证连接是否成功。
5. 单击“确定”保存配置。
三、目录管理3.1 创建目录项您可以使用ldapadmin创建新的目录项。
按照以下步骤进行操作: 1. 在ldapadmin的主界面上选择您要在其中创建目录项的上级目录。
2. 单击工具栏上的“新建目录项”按钮。
3. 在弹出的对话框中,输入新目录项的属性和值。
4. 单击“确定”按钮创建目录项。
3.2 编辑目录项您可以通过ldapadmin编辑目录项的属性和值。
按照以下步骤进行操作: 1. 在ldapadmin的主界面上选择要编辑的目录项。
2. 单击工具栏上的“编辑目录项”按钮。
3. 在弹出的对话框中,可以修改目录项的属性和值。
4. 单击“确定”按钮保存更改。
3.3 删除目录项如果您需要删除一个目录项,可以按照以下步骤进行操作: 1. 在ldapadmin的主界面上选择要删除的目录项。
2. 单击工具栏上的“删除目录项”按钮。
3. 单击“确定”按钮确认删除操作。
四、搜索和过滤4.1 执行搜索操作ldapadmin提供了强大的搜索功能,您可以根据特定的条件搜索目录项。
LDAP基本概念

LDAP基本概念LDAP(Lightweight Directory Access Protocol)是一种基于计算模型的客户机/服务器目录服务访问协议。
LDAP是从目录访问协议的基础上发展过来的,它是对的简化,它和的主要区别在于:1. LDAP是基于TCP/IP的,而是基于OSI网络协议栈,OSI很少有真正的应用2. LDAP删除了中一些繁琐而不常用的功能3. LDAP使用了更简洁的字符串来表示数据,而非比较复杂的结构化语法ASN1(Abstract Syntax Notation One)LDAP客户端和LDAP服务器端交互的一般过程1. LDAP客户端发起连接请求与LDAP服务器建立会话,LDAP的术语是绑定(binding)。
在建立绑定时客户端通常需要指定访问用户,以便能够访问服务器上的目录信息。
2. LDAP客户端发出目录查询、新建、更新、删除、移动目录条目、比较目录条目等操作3. LDAP客户端结束与服务器的会话,即解除绑定(unbinding)LDAP和RFC文档LDAP协议的版本目前是,它是有一系列RFC组成成的:RFC2251 Light-weight Directory Access Protocol主要定义了LDAP的操作、在客户端和服务器之间的交换的消息格式。
为了更好地支持国际化,它规定数据用UTF-8表示。
此外,相对旧版本RFC2251又添加了referral的功能,并把schema本身存放到目录中,使得客户端可以读取schema信息RFC2252 Light-weight Directory Access Protocol -- Attribute Syntax DefinitionRFC2253 Light-weight Directory Access Protocol -- UTF-8 String Representation of Distinguished NamesRFC2254 Light-weight Directory Access Protocol -- The String Representation of LDAP Search FiltersRFC2255 Light-weight Directory Access Protocol -- The LDAP URL formatRFC2256 A summary of user schema for use with LDAP v3一些常用的objectClass和属性已经由定义,该RFC对这些在LDAP中使用的objectClass 作了总结。
LDAP 安装配置

LDAP安装与配置一、LDAP简介LDAP 轻量级目录访问协议默认端口:TCP 389Open Ldap是一个开源软件官方网址 建议大家可以到上面找更详细的相关资料二、LDAP安装openldap-servers-2.3-27-5.i386.rpm (iso中提供)libtool-ltd1-1.5.22-6.1.i386.rpm (iso 中提供)openldap-clients-2.3.27-5.i386.rpm(iso 中提供)nss_ldap-253-3 ( iso中提供)berkeley DB数据库安装包db4-devel-4.3.29-9.fc6db4-4.3.29-9.fc6db4-utils-4.3.29-9.fc6安装openldap安装包与berkeley数据包后开通iptables中389端口iptables -I INPUT -p tcp --dport 389 -j ACCEPTservice iptables save启动ldap服务/etc/rc.d/init.d/ldap start查看ldap进程ps -eaf|grep ldap查看ldap默认端口是否处于监听状态netstat -anp|grep :389三、LDAP配置配置文件详解1、增加ldap模式文件openldap 配置文件:/etc/openldap/slapd.confinclude /etc/openldap/schema/core.schemainclude /etc/openldap/schema/cosine.schemainclude /etc/openldap/schema/inetorgperson.schemainclude /etc/openldap/schema/nis.schema2、允许ldap版本2的客户端进行连接allow bind_v23、指定sldap进程log文件位置、PID文件位置及存放命令行文件的位置logfile /var/log/sldap.logpidfile /var/run/openldap/slapd.pidargsfile /var/run/openldap/slapd.args4、指定动态模块路径及指定动态装载的后端模块#modulepath /usr/lib64/openldap#moduleload 5、允许使用TLS#TLSCACertificateFile /etc/openldap/ssl/ldap.pem#TLSCertificateFile /etc/openldap/ssl/ldap.pem#TLSCertificateKeyFile /etc/openldap/ssl/ldap-key.pem6、simplebind认证机制# security ssf=1 update_ssf=112 simple_bind=647、定义访问控制列表# access to dn.base="" by * read# access to dn.base="cn=Subschema" by * read# access to *# by self write# by users read# by anonymous auth8、定义支持的数据库类型database bdb9、定义LDAP目录树的后缀suffix "dc=bja,dc=s,dc=nokia,dc=com"10、定义树管理员用户名、明文密码rootdn "cn=admin,dc=bja,dc=s,dc=nokia,dc=com"# rootpw secret11、指定目录树的管理员加密密码的方式rootpw {MD5}7TkZFhhtS5tpFaTPJx9I4A==12、目录数据库的路径directory /var/lib/ldap13、指定slapd进程索引时用到的属性和匹配规则,用来加快查询速度index objectClass eq,presindex ou,cn,mail,surname,givenname eq,pres,subindex uidNumber,gidNumber,loginShell eq,presindex uid,memberUid eq,pres,subindex nisMapName,nisMapEntry eq,pres,sub四、LDAP客户端配置主要修改以下3个配置文件1、/etc/ldap.confbase dc=bja,dc=s,dc=nokia,dc=combind_policy softtimelimit 120bind_timelimit 120idle_timelimit 3600nss_initgroups_ignoreusersroot,ldap,named,avahi,haldaemon,nagios,dbus,mysql,radvd,tomcat,radiusd,news,mail man,nscd,gdmuri ldaps://10.235.135.246/ ldaps://10.235.135.247/pam_password md5binddn uid=query,ou=People,dc=bja,dc=s,dc=nokia,dc=combindpw ldap_query2、/etc/openldap/ldap.confURI ldaps://10.235.135.246 ldaps://10.235.135.247BASE dc=bja,dc=s,dc=nokia,dc=comTLS_REQCERT allow3、/etc/nsswitch.confpasswd: files ldapshadow: files ldapgroup: files ldaphosts: files dnsethers: filesnetmasks: filesnetworks: filesprotocols: filesrpc: files services: files netgroup: files ldap publickey: nisplus automount: files ldap aliases: files nisplus。
计算机网络形考5实训14LDAP服务的配置与使用

计算机网络形考5实训14LDAP服务的配置与使用计算机网络形考5实训14 - LDAP服务的配置与使用LDAP(轻型目录访问协议)是一种用于访问和维护分布式目录信息的协议。
在本实训中,我们将研究如何配置和使用LDAP服务。
步骤一:安装和配置OpenLDAP1. 首先,确保你的计算机安装了OpenLDAP软件包。
你可以通过以下命令在Linux系统中安装OpenLDAP:$ sudo apt-get install slapd ldap-utils2. 安装完成后,运行以下命令来配置LDAP服务。
在过程中,你将会被要求输入管理员密码和一些基本配置信息:$ sudo dpkg-reconfigure slapd3. 接下来,修改LDAP配置文件以启用访问控制。
你可以使用任何文本编辑器打开`/etc/ldap/slapd.conf`文件,并根据你的需求进行修改。
步骤二:创建LDAP目录和条目1. 使用`ldif`文件来定义和创建LDAP目录和条目。
例如,创建一个名称为"example"的目录以及一些相关条目:objectClass: organizationalUnitou: exampleobjectClass: inetOrgPersoncn: user1sn: DoegivenName: JohntelephoneNumber:2. 使用以下命令将上述`ldif`文件导入到LDAP服务器中:此命令将提示你输入管理员密码来完成导入过程。
步骤三:使用LDAP客户端进行查询1. 你可以使用`ldapsearch`命令来查询LDAP服务器中的目录和条目。
以下是一些例子:- 查询所有条目:- 根据某个属性查询条目:- 查询特定属性:2. 根据实际需求,可根据LDAP的查询语法和相应工具进行更复杂的查询操作。
可以参考相关文档来研究高级查询技巧。
这样,你就完成了LDAP服务的配置和使用。
通过LDAP,你可以更方便地管理和访问分布式目录信息。
LDAP系列(一)完整的LDAP+phpLDAPadmin安装部署流程

LDAP系列(⼀)完整的LDAP+phpLDAPadmin安装部署流程LDAP 安装部署以及基础使⽤因⼯作需求需要使⽤ldap管理⽤户权限,在踩了⼀系列坑之后,总结了⼀些流畅的⽂档,希望可以帮到和曾经的我⼀样迷茫的⼈。
基础环境:Ubuntu 18.04⼀、安装root@cky:~# apt install slapd ldap-utils -yAdministrator password: 123456Confirm password: 123456安装包版本root@cky:~/ldap# dpkg -l slapd ldap-utilsDesired=Unknown/Install/Remove/Purge/Hold| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)||/ Name Version Architecture Description+++-===============================================-============================-============================-===================================================================== ii ldap-utils 2.4.45+dfsg-1ubuntu1.10 amd64 OpenLDAP utilitiesii slapd 2.4.45+dfsg-1ubuntu1.10 amd64 OpenLDAP server (slapd)⼆、配置配置组织名称,输⼊/验证在安装期间创建的管理员密码。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 概述计算机网络经过长期的发展,不同的操作系统和应用程序以不同的格式在网络上存储了大量的信息,一个网络管理员无法在一个集中的信息库中,以方便的方法管理网络信息和资源。
用户必须使用不同的应用程序获取不同的信息和资源,这大大增加了用户的负担,也使许多信息难于共享,从而在一定程度上制约了网络的发展,因而需要一种新的技术,能够以通用的格式和方式实现信息的存储和共享,实现网络的共享。
目录服务技术就是用于实现上述需求的。
目录服务可以命名、描述和指定一个企业范围内的用户和资源,从而简化通信与管理;它可以使用户通过简单的搜索查找资源及其他用户;它可以帮助管理人员收集和控制散布与该机构的信息,并可以使他们通观地审视这些信息。
目前基于目录服务的各种网上应用越来越多。
特别是随着Intranet的崛起以及轻型目录服务LDAP(Lightweight Directory Access Protocol)的开发,人们对其价值的认识日趋明朗。
本文档详细描述了Unix中常用的邮件服务器qmail的安装和配置过程,以及qmail和LDAP的整合,重点在于qmail的基本应用及其通过LDAP Server来进行Pop3认证的配置过程,对于其它诸如邮件网关、邮件虚拟域、邮件列表、SMTP认证等不做叙述。
本文档假定你对qmail邮件服务器和OpenLDAP的LDAP Server有基本的了解,在各种软件包安装之前,请认真阅读软件包附带的相关安装说明文档。
邮件服务器基于LDAP的应用扩展,是目前基于LDAP管理Internet信息的应用之一,此外基于LDAP的WWW网关也是使用LDAP的一个方向,下图给出了这两种应用的总体结构:2 安装前的准备操作系统RedHat Linux 6.2所需软件包1. qmail-1.03.tar.gz ()2. ucspi-tcp-0_88_tar.gz (http://cr.yp.to/ucspi-tcp.html)3. checkpassword-0_90_tar.gz (http://cr.yp.to/checkpwd.html)4. qmail-ldap-1_03-20010301_patch.gz (/)5. openldap-2_0_7.tgz ()主机IP地址和域名配置,在本例中为:IP:192.168.0.117DomainName :(LDAP Server的RootDN为:dc=gloomy dc=openet dc=com dc=cn)3 安装与配置1.卸载SendMail邮件系统由于大多数Linux发行版本中都预装了SendMail邮件系统,所以在安装qmail 邮件服务器前最好卸载SendMail邮件服务器,使用如下命令:#netsysv (取消系统boot时启动SendMail)#mv /usr/lib/sendmail /usr/lib/sendmail.bak#mv /usr/sbin/sendmail /usr/sbin/sendmail.bak#mv /usr/bin/newaliases /usr/bin/newaliases.bak#mv /usr/bin/mailq /usr/bin/mailq.bak2.安装qmail软件包a) 首先确定qmail的安装路径,若选默认安装的话,使用如下命令,否则需要修改qmail软件包中相应的conf*文件:#mkdir /var/qmailb) 增加qmail所需要的组和用户,使用如下命令:#groupadd nofiles#useradd -g nofiles -d /var/qmail/alias alias#useradd -g nofiles -d /var/qmail qmaild#useradd -g nofiles -d /var/qmail qmaill#useradd -g nofiles -d /var/qmail qmailp#groupadd qmail#useradd -g qmail -d /var/qmail qmailq#useradd -g qmail -d /var/qmail qmailr#useradd -g qmail -d /var/qmail qmailsc) 编译qmail源代码并安装,使用如下命令:#tar zxvf qmail-1.03.tar.gz#cd qmail-1.03#make setup checkd) 建立相应的配置文件,使用如下命令:#config-fast #cd /var/qmail/alias#touch .qmail-postmaster .qmail-mailer-daemon .qmail-root#chmod 644 qmail*e) 选择邮件的存储方式:在qmail中,支持三种邮件存储方式,分别是典型的/var/spool/mail方式、传统的Unix user/Mailbox方式和新的 user/Maildir方式,其中前两种方式为大多数的邮件客户端所支持,但是它们均存在安全上的隐患,所以在这里使用了第三种方式,下面分别叙述三种方式的建立方法:/var/spool/mail 方式#cp /var/qmail/boot/proc /var/qmail/rcuser/Mailbox 方式#cp /var/qmail/boot/home /var/qmail/rcuser/Maildir 方式1)#cp /var/qmail/boot/home /var/qmail/rc2)建立相应的邮件用户,例如:#useradd test#passwd test3)使用qmail提供的工具建立Maildir,命令如下:$ /var/qmail/bin/maildirmake Maildir$ echo ./Maildir/ .qmail(注意这里必须以用户权限建立邮箱)4)修改 /var/qmail/rc 文件,把其中的/Mailbox 改为/Maildir/5) 为了使root用户也能收发邮件,使用如下命令:# su alias$ cd$ /var/qmail/bin/maildirmake Maildir$ echo ./Maildir/ .qmailf) 建立启动qmail的shell文件run_mail,其内容为:#cat run_mailcsh -cf ‘/var/qmail/rc’ &3.测试qmail基本邮件系统首先启动qmail邮件服务器,然后测试邮件的收发,使用如下命令:#run_mail#echo to : ReceiverName | /var/qmail/bin/qmail-inject(其中 ReceiverName 为邮件接受者的ID,例如test)在邮件发送后,可以查找是否收到邮件,分三种方式,依赖邮件的存储方式:/var/spool/mail 方式$cd /var/spool$vi ReceiverName或者用$mailuser/Mailbox 方式打开用户根目录下的Mailbox文件,看是否收到邮件user/Maildir 方式$cd Maildir$ls new(注意在以上测试时,如果发生错误,可以查看/var/log/maillog文件获得出错原因)4.添加Pop3和SMTP服务可以使用inetd超级服务器或TcpServer来建立相应的Pop3和SMTP服务,为了支持大容量的邮件用户,建议使用TcpServer来监听服务端口启动相应的服务,建立命令如下:#tar zxvf ucspi-tcp-0_88_tar.gz#cd ucspi-tcp-0.88#make setup check#tar zxvf checkpassword-0_90_tar.gz#cd checkpassword-0.90#make setup check修改上面建立的run_mail文件,修改后的内容如下:#cat run_mailcsh -cf '/var/qmail/rc' &tcpserver –u 502 –g 501 -c 100 0 smtp /var/qmail/bin/qmail-smtpd &tcpserver -c100 0 pop3 /var/qmail/bin/qmail-popup /bin/checkpassword /var/qmail/bin/qmail-pop3d Maildir &修改/var/qmail/control/rcpthosts文件,来增加SMTP接收邮件的域例如:#cat /var/qmail/control/rcpthostsldap,5.测试Pop3和SMTP服务首先启动qmail邮件服务器,然后测试,使用如下命令:1) 本地测试#run_mail#netstat –na | grep 25#netstat –na | grep 110#telnet localhost 110user testpass testlistretr 12) 远程测试利用Windows下的图形邮件客户端(如 outlook、foxmail等)来测试邮件的收发,客户端邮件帐号的建立请参考附带的帮助文档。
6.为qmail增加LDAP支持qmail可以通过LDAP来代替传统的/etc/passwd方式的Pop3认证,以便提高认证效率和有效的支持大容量的邮件客户,为了使qmail获得LDAP支持,需要在qmail的基础上增加具备LDAP认证的Patch包,具体操作使用如下命令:#gunzip qmail-ldap-1_03-20010301_patch.gz#cd qmail-1.03#patch -p1 < /path to qmail-ldap patch/qmail-ldap patch name在patch包打好之后,需要修改qmail的Makefile文件来配置相应的LDAP信息,具体如下(这里只说明必须修改的,其余的可选项请参考QLDAPINSTALL.TXT文档):1) -LDAPFLAGS = -DCLEARTEXTPASSWORD配置是否在LDAP目录中使用明文密码2) -LDAPLIBS =配置使用的LDAP接口库,在本例中为:-LDAPLIBS = -L/root/LdapServer/lib -lldap –llber –lldap_r –lpthread-lresolv3) -LDAPINCLUDES =配置使用的LDAP头文件,在本例中为:-LDAPINCLUDES = -I/root/LdapServer/include4)-SHADOWLIBS = -lcrypt –lshadow-SHADOWOPTS = -DPW_SHADOW配置使用的密码认证方式在Makefile设置修改完毕后,重新编译qmail源文件,然后覆盖安装qmail,使用如下命令:#make setup check7.安装OpenLDAP本例中采用了OpenLDAP的开放源代码LDAP Server,详细的管理请参考()站点的文档以及《LDAP配置手册》,下面概述其安装配置过程:#tar zxvf openldap-2_0_7.tgz#cd openldap-2.0.7#./configure#make depend#make#make test#make install修改OpenLDAP Server的配置文件,启动slapd服务器,具体如下:#cd path to LDAP Server/#vi etc/openldap/slapd.conf主要修改slapd.conf文件中的如下部分,在本例中为:############################################## ldbm database definitions#############################################database ldbmsuffix "dc=gloomy , dc=openet , dc=com , dc=cn"rootdn "dc=gloomy , dc=openet , dc=com , dc=cn"rootpw secretindex objectclass,mail,uidindex qmailUser8.配置qmail+LDAP在LDAP Server安装测试完毕后,修改并建立相应的qmail配置文件,增加对LDAP LookUp的支持,分为如下几步:1) 在/var/qmail/control/下建立相应的LDAP支持文件:#cat ldapserver192.168.0.117#cat ldapbasedndc=gloomy , dc=openet , dc=com , dc=cn#cat ldapobjectclassqmailUser2) 为LDAP添加相应的支持qmail邮件用户的schema:#cd qmail-1.03#cp qmail.schema /root/LdapServer/etc/openldap/schema修改slapd.conf文件,加入下面一行:include /root/LdapServer/etc/openldap/schema/qmai.schema3) 修改前面建立的run_mail启动脚本,修改后的内容如下:#cat run_mailcsh -cf '/var/qmail/rc' &tcpserver –u 502 –g 501 -c 100 0 smtp /var/qmail/bin/qmail-smtpd &tcpserver -c100 0 pop3 /var/qmail/bin/qmail-popup /var/qmail/bin/auth_pop /var/qmail/bin/qmail-pop3d Maildir &9.在LDAP DIT中增加qmail邮件用户目录首先启动LDAP服务器,然后创建相应的*.ldif文件(有关LDIF文件的格式,请参考 RFC2849的描述),插入LDAP数据库中,具体的命令如下:#/root/LdapServer/libexec/slapd在本例中建立的的交换文件为mailer.ldif,其具体内容如下:#cat mailer.ldifdn: cn=testUser , dc=gloomy , dc=openet , dc=com , dc=cncn: testUsersn: testUserobjectClass: topobjectClass: personobjectClass: inetOrgPersonobjectClass: qmailUsermail: test@mailHost: mailMessageStore: /home/test/Maildir/mailQuota: 1000000S,100Cuid: testuserPassword: test插入qmail用户目录到LDAP的目录信息树中,使用如下命令:#/root/LdapServer/bin/ldapadd –x –D”dc=gloomy,dc=openet,dc=com,dc=cn”–W –f mailer.ldif10. 测试基于LDAP的Pop3认证在上述步骤完成后,从新测试qmail邮件系统的运行状况,主要从以下三个方面测试,具体命令如下:1) 本地测试具体请参考上面小节3的方法2) Pop3+SMTP测试具体请参考上面小节5的方法3) 测试工具#/var/qmail/bin/qmail-ldaplookup –u test#/var/qmail/bin/qmail-ladplookup –m test@4 参考资料1) Life with qmail (/lwq.html)2) Life with qmail-LDAP (/ldap/)3) QLDAPINSTALL (/)4) Open LDAP 2.0 Administrator’s Guide(/doc/admin/)5) 《LDAP配置手册》5 总结LDAP使得过去杂乱无序的网络资源和信息管理呈现出一种树状的有序体系,不但使 Internet资源的管理和控制变得易于进行,而且同时在另外一方面也提高了各种信息和资源的使用效率,LDAP用10%的代价实现了X.500 DAP 90%的功能,是目前Internet上越来越广泛的应用之一,本文通过对qmail邮件服务器和LDAP整合应用的安装和配置的描述,希望能够对掌握LDAP这个下一代因特网服务与应用的基础提供一定的帮助。