openldap是干嘛的用什么语言写的

OpenLDAP是什么 具体解释 优点 作用等等
我是用来做印度NIIT(ISAS)考试的 最好是演讲稿形式的
求求各位帮帮忙 感激不禁啊
急用 我可以出高分
那为文笔好的而且精通的大哥大姐帮帮小弟啊!~
OPENLDAP是一个非常强劲的相关信息资源访问工具,
下载:ftp//
本人在安装后觉得非常好用。
#tar xzvf $ver_ z
再编译安装:
#./configure --prefix=$ldap --enable-dns --enable-cldap --enable-ldapd --enable-wrappers --enable-phonetic --enable-passwd --enable-shell
#make depend
#make install
修改配置文件:
在/etc/profile增加:
PATH=""$""PATH:$ldap/bin:$ldap/sbin:$ldap/libexec
CPLUS_INCLUDE_PATH=""$""CPLUS_INCLUDE_PATH:$ldap/include
LD_LIBRARY_PATH=""$""LD_LIBRARY_PATH:$ldap/lib
LIBRARY_PATH="...
OPENLDAP是一个非常强劲的相关信息资源访问工具,
下载:ftp//
本人在安装后觉得非常好用。
#tar xzvf $ver_ z
再编译安装:
#./configure --prefix=$ldap --enable-dns --enable-cldap --enable-ldapd --enable-wrappers --enable-phonetic --enable-passwd --enable-shell
#make depend
#make install
修改配置文件:
在/etc/profile增加:
PATH=""$""PATH:$ldap/bin:$ldap/sbin:$ldap/libexec
CPLUS_INCLUDE_PATH=""$""CPLUS_INCLUDE_PATH:$ldap/include
LD_LIBRARY_PATH=""$""LD_LIBRARY_PATH:$ldap/lib
LIBRARY_PATH=""$""LIBRARY_PATH:$ldap/lib MANPATH=""$""MANPATH:$ldap/man
export PATH CPLUS_INCLUDE_PATH LD_LIBRARY_PATH LIBRARY_PATH MANPATH
在/etc/rc.d/rc.local中
su root -c '$ldap/libexec/slapd -f $ldap/etc/openldap/ nf'
重新编译PHP,并带参数--with-ldap=$ldap让PHP支持openLDAP.
在重编译安装后,你的WEBSERVER就真正支持openLDAP了,本人将在以后介绍openLDAP的美妙应用!!!
NIIT是印度国家信息学院的简称,NIIT在设计软件工程师培训体系时,结合中国的国情,根据软件企业的需求来定制课程。教材内容与国际软件开发趋势接轨,平均18个 ...
网络通讯工程之类的硬件方面的比较好,男孩还是有动手、钻研这方面天赋的,学好了可以进通信公司之类的,
NIIT是印度国家信息学院的简称,NIIT在设计软件工程师培训体系时,结合中国的国情,根据软件企业的需求来定制课程。教材内容与国际软件开发趋势接轨,平均18个月...
git config -global user.name "Your name"git config -global user.email "you@examp...
我的iPad2也有过这样的情况
在其它网站上下载合适固件
然后打开iTunes(要连接数据线)
将iPad关机,
按住开机键3秒
不松开机键,同时按住home键...
大家还关注
确定举报此问题
举报原因(必选):
广告或垃圾信息
激进时政或意识形态话题
不雅词句或人身攻击
侵犯他人隐私
其它违法和不良信息
报告,这不是个问题
报告原因(必选):
这不是个问题
这个问题分类似乎错了
这个不是我熟悉的地区openldap简单介绍_open大魔王啊啊啊啊啊_新浪博客
openldap简单介绍
一、Directory
Services(目录服务)能做什么?&&
&我们知道,当局域网的规模变的越来越大时,为了方便主机管理,我们使用DHCP来实现IP地址、以太网地址、主机名和拓扑结构等的集中管理和统一分配。同样,如果一个局域网内有许多的其它资源时,如打印机、共享文件夹等等,为了方便的定位及查找它们,一种集中定位管理的方式或许是较好的选择,DNS和
NIS都是用来实现类似管理的方法。&&&&&
&&对于局域网内的一个用户来讲,工作等其它应用需要,我们必须凭帐号登录主机、用帐号收发E-mail,甚至为了管理需要公司还需要维护一个电子号码簿来存储员工的姓名、地址、电话号码等信息。随着时间的增长,我们会为这些越来越多的帐号和密码弄的头晕脑胀。同时,如果一个员工离开,管理员就不得不翻遍所有的记录帐号信息的文件把离职员工的信息删除。这些将是一个繁琐而效率低下的工作。那么,如果能将此些帐号信息等统一到一个文件中进行管理,无疑会大大提高员工及管理员的工作效率。目录服务(LDAP是其实现的一种)正是基于这些应用实现的。
​二、什么是LDAP?&&&&&&&
LDAP是Lightweight Directory Access
Protocol的缩写,顾名思义,它是指轻量级目录访问协议(这个主要是相对另一目录访问协议X.500而言的;LDAP略去了x.500中许多不太常用的功能,且以TCP/IP协议为基础)。目录服务和数据库很类似,但又有着很大的不同之处。数据库设计为方便读写,但目录服务专门进行了读优化的设计,因此不太适合于经常有写操作的数据存储。同时,LDAP只是一个协议,它没有涉及到如何存储这些信息,因此还需要一个后端数据库组件来实现。这些后端可以是bdb(BerkeleyDB)、ldbm、shell和passwd等。&&&&LDAP目录以树状的层次结构来存储数据(这很类同于DNS),最顶层即根部称作“基准DN”,形如"dc=mydomain,dc=org"或者"o=mydomain.org",前一种方式更为灵活也是Windows
AD中使用的方式。在根目录的下面有很多的文件和目录,为了把这些大量的数据从逻辑上分开,LDAP像其它的目录服务协议一样使用
OU(Organization
Unit),可以用来表示公司内部机构,如部门等,也可以用来表示设备、人员等。同时OU还可以有子OU,用来表示更为细致的分类。&&&
​&LDAP中每一条记录都有一个唯一的区别于其它记录的名字DN(Distinguished
Name),其处在“叶子”位置的部分称作RDN;如dn:cn=tom,ou=animals,dc=mydomain,dc=org中tom即为
RDN;RDN在一个OU中必须是唯一的。
​三、什么是LDIF?&&&
​&LDIF(LDAP
Interchange
Format)是指存储LDAP配置信息及目录内容的标准文本文件格式,之所以使用文本文件来格式来存储这些信息是为了方便读取和修改,这也是其它大多数服务配置文件所采取的格式。LDIF文件常用来向目录导入或更改记录信息,这些信息需要按照LDAP中schema的格式进行组织,并会接受schema
的检查,如果不符合其要求的格式将会出现报错信息。LDIF文件样例如下:#LDIF file
exampledn: dc=mydomain,dc=orgobjectClass:
mydomain&&&&其中,以“#”号开头的为注释行;第二行起的行中,冒号左边为属性,右边是属性的值,这类同于编程中的变量及为其所赋的值,但属性可以被重复赋值。四、objectClass&&&&LDAP中,一条记录必须包含一个objectClass属性,且其需要赋予至少一个值。每一个值将用作一条LDAP记录进行数据存储的模板;模板中包含了一条记录中数个必须被赋值的属性和一系列可选的属性。如上述LDIF文件中的记录所示,objectClass的值为domain。&&&&objectClass有着严格的等级之分,最顶层的类是top和alias。例如,organizationalPerson这个objectClass隶属于Person,而Person又是top的子类。&&&&objectClass大致分为三类:结构型的(如:person和organizationUnit)、辅助型的(如:extensibeObject)和抽象型的(这类不能直接使用)。官方定义的objectClass,如下所示:aliasapplicationEntitydSAapplicationProcessbootableDevicecertificationAuthoritycertificationAuthority-V2countrycRLDistributionPointdcObjectdevicedmddomaindomainNameFormextensibleObjectgroupOfNamesgroupOfUniqueNamesieee802DeviceipHostipNetworkipProtocolipServicelocalitydcLocalityNameFormnisMapnisNetgroupnisObjectoncRpcorganizationdcOrganizationNameFormorganizationalRoleorganizationalUnitdcOrganizationalUnitNameFormpersonorganizationalPersoninetOrgPersonuidOrganizationalPersonNameFormresidentialPersonposixAccountposixGroupshadowAccountstrongAuthenticationUseruidObjectuserSecurityInformation
​五、Attribute介绍&&&&
如上文所述,Attribute类同于编程语言中的变量,它可以被赋值,就像是可以存放一个单一类型信息的容器。官方声明了许多常用的
Attribute,如果其中没有你所需要的,你可以自己定义,但要避免重名。objectClass是一种特殊的Attribute,它包含其它用到的
Attribute以及它自身。常见的Attribute如:givenName、l、objectClass、dc、ou、cn、c、mail、
telephoneNumber、sn、uid等。分别介绍如下:c:国家;cn:common
name,指一个对象的名字;如果指人,需要使用其全名;dc:domain
Component,经常用来指一个域名的一部分,如:dc=mydomain,dc=givenName:指一个人的名字,不能用来指姓或者middle
name;l:指一个地名,如一个城市或者其它地理区域的名字;mail:电子信箱地址o:organizationName,指一个组织的名字;objectClass:一个LDAP
server要想启用必须能够识别每一个对象的Attribute,objectClass
Attribute正是用来描述一个对象应该具有的Attribute及可选Attribute。因此,每个objectClass“模板”的
Attribute中必然含有一条objectClass
Attribute,我不知道用“自包含”称呼这个算不算合适。ou:organizationalUnitName,指一个组织单元的名字。sn:surname,指一个人的姓;telephoneNumber:电话号码,应该带有所在的国家的代码;uid:userid,通常指一个人的登录名,这个不同于Linux系统中用户的uid;&&&&如果可以这样类比的话,我想,我们不妨把objectClass理解为关系数据库的表,而attribute则类同为表中的字段。而下面即可介绍的schema或许可以类比作一个数据库,但它的这个类比或许从逻辑上说更合适些。
​六、什么是schema&&&&&&
​&&好了,现在可以说说到底什么是schema了。LDAP中,schema用来指定一个目录中所包含的objects的类型(objectClass)以及每一个objectClass中的各个必备(mandatory)和可选(optional)的属性(attribute)。因此,Schema是一个数据模型,它被用来决定数据怎样被存储,被跟踪的数据的是什么类型,存储在不同的Entry下的数据之间的关系。schema
需要在主配置文件slapd.conf中指定,以用来决定本目录中使用到的objectClass。管理员可以自己设计制定schema,一般包括属性定义(AttributeDefinition)、类定义(ClassDefinition)以及语法定义(SyntaxDefinition)等部分。&&&&&
​&LDAP
V3中在x.500标准的基础上定义了一个包含了网络中大多常见对象的schema,这些对象包括国家、所在地、组织、人员、小组以及设备等。同时,LDAP
V3中可以很方便的从目录中提取出schema,它正是一条记录中关于属性的声明部分。七、对象标识符(Object
Identifiers)&&&&&对象标识符(OID)是被LDAP内部数据库引用的数字标识。Attribute的名字是设计为方便人们读取的,但为了方便计算机的处理,通常使用一组数字来标识这些对象,这类同于SNMP中的MIB2。例如,当计算机接收到dc这个Attribute时,它会将这个名字转换为对应的
OID:1.3.6.1.4.1..1.26。八、使用LDAP做身份验正&&&&验正主要是用来确定一次会主中客户端用户所具有的权利,即用来确立用户能否登录以及登录具有使用哪些资源以及如何使用资源的权限。验正过程中的修改、查询等操作由认证级别来控制。&&&&objectClass中的person可以用来作linux系统中用户登入的身份验正,此时需要指定userPassword属性的值,即指定用户登入时使用的密码。密码可以使用的加密方式有MD5、CRYPT、SHA、SSHA等。在LDAP
V3中,验正客户端时可以使用的验正机制有匿名验正、简单验正、基于SSL/TLS的验正和基于SASL的验正等四种方式。
open大魔王啊啊啊啊啊
博客等级:
博客积分:0
博客访问:140
关注人气:0
荣誉徽章:waring_id 的BLOG
用户名:waring_id
文章数:157
评论数:1169
访问量:1959196
注册日期:
阅读量:5863
阅读量:12276
阅读量:421278
阅读量:1109570
51CTO推荐博文
简介: &  LDAP(轻量级目录服务访问协议,Lightweight Directory Access Protocol)基于X.500标准,支持TCP/IP,使用简单方便。现在越来越多的网络应用系统都支持LDAP。 & &  目录是一个为查询、浏览和搜索而优化的专业分布式数据库,它成树状结构组织数据,就好象Linux/Unix系统中的文件目录一样。目录数据库和关系数据库不同,它有优异的读性能,但写性能差,并且没有事务处理、回滚等复杂功能,不适于存储修改频繁的数据。所以目录天生是用来查询的,就好象它的名字一样。目录服务是由目录数据库和一套访问协议组成的系统。类似以下的信息适合储存在目录中: &企业员工和企业客户之类人员信息;公用证书和安全密钥;邮件地址、网址、IP等电脑信息;电脑配置信息。 &  而且在我们的日常生活中,很多的应用都是基于LDAP的,比如Microsoft服务器的AD管理以及IBM的邮件Lotus都是基于LDAP的,并且Linux下的Postfix也可以设计成支持LDAP的形式,这篇文单权当是入门之用吧.以前有试过做基于Mysql的Postfix邮件系统( &),也打算用LDAP来实现,我会把我的安装经历整理出来的.支持软件: &  安装OpenLDAP的相关支持软件是Berkeley &DB,有了它就可以进行了,当然,如果你要求Sasl的支持的话那cyrus-sasl这个支持包也是少不了的.不过这个软件包一般系统中会自带,而且OpenLDAP在编译时默认会加入此功能支持.这些软件的下载地址可以参考我以前写过的一篇文章( &),其中有列出下载地址.而OpenLDAP的下载地址则是: &.系统相关: &  在Linux下不同版本的系统在设置上可能会有很小的差异,所以这里交待一下我的系统:RedHat AS &4,安装时所选的系统组件只有"开发工具",其它的所有软件包都没有选取.如果你是Linux新手,对装系统还有一些困难的话,请参考这篇文章().650) this.width=650;" onclick="window.open("/viewpic.php?refimg=" + this.src)" src="/idwaring/SD6gCdUCtJI/AAAAAAAAB2Q/hAmlQeHC0to/s800/Image00000.jpg" height="600" width="750" />650) this.width=650;" onclick="window.open("/viewpic.php?refimg=" + this.src)" src="/idwaring/SD6gGNUCtKI/AAAAAAAAB2Y/i5Db7lMZX7s/s800/Image00001.jpg" height="600" width="750" />下载相关软件:查询并卸载系统中原有的相关软件:rpm -qa |grep ldap
rpm -e --nodeps 显示的组件650) this.width=650;" onclick="window.open("/viewpic.php?refimg=" + this.src)" src="/idwaring/SD6gKdUCtMI/AAAAAAAAB2o/_1RbRV5b3ZA/s800/Image00014.jpg" height="552" width="800" />安装BerkeleyDB:tar zxvf db-4.5.20.tar.gz
cd db-4.5.20/build_unix
../dist/configure --prefix=/usr/local/BerkeleyDB
make install
echo "/usr/local/BerkeleyDB/lib" && /etc/ld.so.conf
ldconfig -v安装Cyrus-Sasl:tar zxvf cyrus-sasl-2.1.21.tar.gz
cd cyrus-sasl-2.1.21
./configure --prefix=/usr/local/sasl --enable-cram --enable-plain \
--enable-digest --disable-anon --enable-krb4 --enable-ntlm
make install
echo "/usr/local/sasl/lib/" && /etc/ld.so.conf
ldconfig -v
ln -sv /usr/local/sasl/include/sasl/* /usr/local/include/
ln -sv /usr/local/sasl/lib/* /usr/local/lib/
ln -sv /usr/local/sasl/lib/sasl2/* /usr/local/lib/安装OpenLDAP:gunzip -c openldap-2.4.9.tgz | tar xvfB -
cd openldap-2.4.9
env CPPFLAGS="-I/usr/local/BerkeleyDB/include" LDFLAGS="-L/usr/local/BerkeleyDB/lib" \
./configure --prefix=/usr/local/openldap --sysconfdir=/etc --enable-ldbm \
--enable-lmpasswd --enable-spasswd --enable-bdb --enable-ldap
make depend
make install
echo /usr/local/openldap/lib && /etc/ld.so.conf
ldconfig -v配置LADP: &  LDAP的配置中,我们要实现的功能如图所示.需要增加一个用户"Ben".650) this.width=650;" onclick="window.open("/viewpic.php?refimg=" + this.src)" src="/idwaring/SD6k6tUCtNI/AAAAAAAAB3g/zO43JjxUSpM/s800/ldap.jpg" height="600" width="482" />生成LDAP管理密码:/usr/local/openldap/sbin/slappasswd -h {md5}
{MD5}X03MO1qnZdYdgyfeuILPmQ==##此密码是LDAP管理密码,和系统密码无关增加相关查询记录:echo "127.0.0.1
" && /etc/hosts
echo "127.0.0.1
ldap-" && /etc/hosts设置slapd.conf文件:vi /etc/openldap/slapd.conf
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
database bdb
suffix "dc=test,dc=com"
rootdn "cn=Manager,dc=test,dc=com"
rootpw {MD5}X03MO1qnZdYdgyfeuILPmQ==
directory /var/lib/ldap设置ldap.conf文件:vi /etc/openldap/ldap.conf
HOST 127.0.0.1
BASE dc=test,dc=com
URI ldap://ldap://ldap-:389
SIZELIMIT 12
TIMELIMIT 15
DEREF nerver启动LDAP:/usr/local/openldap/libexec/slapd增加用户资料:vi test.ldif
#root node ##建立DN
dn:dc=test,dc=com
objectclass:dcObject
objectclass:organizationalUnit
ou:test Dot com
#login top ##建立RDN
dn:ou=login,dc=test,dc=com
objectclass:organizationalUnit
#user,uid,password
dn:ou=user,ou=login,dc=test,dc=com
objectclass:organizationalUnit
dn:ou=group,ou=login,dc=test,dc=com
objectclass:organizationalUnit
#company organization top
dn:ou=company,dc=test,dc=com
ou:company
objectclass:organizationalUnit
#for company organization(unit)
dn:ou=unit,ou=company,dc=test,dc=com
objectclass:organizationalUnit
#human resource(under unit)
dn:ou=hr,ou=unit,ou=company,dc=test,dc=com
objectclass:organizationalUnit
#MIS(under unit)
dn:ou=mis,ou=unit,ou=company,dc=test,dc=com
objectclass:organizationalUnit
#Editorial(under unit)
dn:ou=editorial,ou=unit,ou=company,dc=test,dc=com
ou:editorial
objectclass:organizationalUnit
vi user.ldif ##建立用户数据
#User-Ben Chan
dn:cn=ben,ou=editorial,ou=unit,ou=company,dc=test,dc=com
objectclass:organizationalUnit
givenName:ben
telephoneNumber:1234678
postalAddress:dongguan
postalCode:86
ou:editorial
o:test Corp
labeledURL:[url]http://waringid.[/url]
title:Editor
postalCode: 区号
title:职位解决中文符号问题:dos2unix user.ldif
iconv -f gb2312 -t UTF-8 -o user.ldif.utf8 user.ldif
file user.ldif.utf8
ldapmodify -D "cn=Manager,dc=test,dc=com" -w secret -x -a -f user.ldif.utf8测试:ldapsearch -x -b "ou=unit,ou=company,dc=test,dc=com"通过web方式管理LADP: &  以命令的方式来管理LDAP是最快最直接的方法,但是需要用户有一定的Linux管理能力及对LDAP结构深入的理解.还有一种方式就是通过WEB的方式进行管理,这种方式和phpmyadmin管理mysql差不多,用它则是最方便讯速了.下载地址为:.它的配置方法和phpmyadmin的配置方法差不多,这里就不过多描述了,参考以前的文件应可以自行设置(),需要注意的是要将配置文件从config目录中copy到它的上一级目录,然后需要设置以下一些地方:
$ldapservers-&SetValue($i,'server','auth_type','session');
$ldapservers-&SetValue($i,'login','dn','cn=Manager,');
$ldapservers-&SetValue($i,'login','pass','');650) this.width=650;" onclick="window.open("/viewpic.php?refimg=" + this.src)" src="/idwaring/SD-nBNUCtOI/AAAAAAAAB4c/MJMBZeavBw8/s800/Image00015.jpg" height="583" width="800" />650) this.width=650;" onclick="window.open("/viewpic.php?refimg=" + this.src)" src="/idwaring/SD-nDtUCtPI/AAAAAAAAB4k/HgiHyg8olVg/s800/Image00016.jpg" height="481" width="800" />650) this.width=650;" onclick="window.open("/viewpic.php?refimg=" + this.src)" src="/idwaring/SD-nE9UCtQI/AAAAAAAAB4s/Z4KO7CjvtbU/s800/Image00017.jpg" height="481" width="800" />本文出自 “” 博客,转载请与作者联系!
了这篇文章
类别:┆阅读(0)┆评论(0)
15:52:40 15:52:40 09:36:09 11:59:45 15:39:02 16:49:33 19:04:25 12:39:25}

我要回帖

更多关于 openldap是什么 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信