??xml version="1.0" encoding="utf-8" standalone="yes"?>色视频在线看,亚洲香蕉成视频在线观看,久久久久亚洲精品国产http://www.aygfsteel.com/kongbowoo/category/24685.html------我的技术性博?/description>zh-cnThu, 30 Aug 2007 16:53:38 GMTThu, 30 Aug 2007 16:53:38 GMT60- Linux下的LDAPhttp://www.aygfsteel.com/kongbowoo/archive/2007/08/30/141504.htmlkongbowookongbowooThu, 30 Aug 2007 12:28:00 GMThttp://www.aygfsteel.com/kongbowoo/archive/2007/08/30/141504.htmlhttp://www.aygfsteel.com/kongbowoo/comments/141504.htmlhttp://www.aygfsteel.com/kongbowoo/archive/2007/08/30/141504.html#Feedback0http://www.aygfsteel.com/kongbowoo/comments/commentRss/141504.htmlhttp://www.aygfsteel.com/kongbowoo/services/trackbacks/141504.html Atif Ghaffar 像只变色龙. 他经常变换角? 从系l管理员到程序员, 再到教师、项目管理员, 直至M可以完成工作的角? 有时? 当他在电影院看电q同时, 他也喜欢拿出W记本电脑编写程? Atif始终坚信, 他是属于linux和开放源码社团的. 关于Atif的更多信? 可以讉K他的主页http: //www.developer.ch/~aghaffar.
摘要:
本文讨论LDAP以及在我们所喜爱的操作系l――linux上实现LDAP.
已经有很多关于LDAP的文? 所以我不想在这里再重复什? 我不准备讨论高的LDAP概念、计划以及第二版和第三版LDAP的区别等{? 事实? 我对q类问题也所知不? 相反? 我将试用简单明了的语言解释什么是LDAP, 它能l我们带来的好处以及我们如何使用?
我不是一个LDAP专家. 我只是一个LDAP的初学? 本文介绍的是我用LDAP做了些什么以及如何做. 我不会你再像以前的我一h到迷?
问题: 既然你是个LDAP初学? Z么还要写一关于LDAP的文?
最q我在一个项目上需要一位同事的帮助. q个目的基是LDAP. 我的同事可以在perl、邮件服务器{等斚w帮助? 但是他对LDAP一无所? 事实是每一ơ他惌深入学习LDAP, 反而会对LDAP来迷? 因ؓ该项目的基础是LDAP, 所以我l了q位同事半小时来学习LDAP, l果是一切反而变得清晰明了了. 原因很简? LDAP是在前端? 只需要集中一点点注意力或者一些生动的例子可以了.
在本文中我也正想q样?
你可以在文中发现好多对学习LDAP有用的url.
LDAP是什?
LDAP是轻量目录访问协?Lightweight Directory Access Protocol)的羃? 其实是一U目录服? cM于我们在文gpȝ中所使用的目? cM于我们查询电话号码用的电话L? cM于我们所使用诸如NIS(Network Information Service)、DNS (Domain Name Service){网l目? 也类g你在花园中所看到的树?
LDAP是一U特D的数据? 但是LDAP和一般的数据库不? 明白q一Ҏ很重要的. LDAPҎ询进行了优化, 与写性能相比LDAP的读性能要优U很多.
一般地, 目录服务提供什么样的服务呢?
通常是根据查询的标准q回一定的信息.
实例
文gpȝ目录
ls /etc
q回/etc目录下所有的文g和子目录.
ls /etc/p*
q回/etc下所有以p开头的文g和子目录.
find /usr/local/apache -name index.html
q将?/usr/local/apache"目录下搜索名为index.html的文?子目?
NIS目录
ypcat passwd
q将从NIS数据库返回用户名、密码、用户id{信?
ypmatch atif passwd
q回用户atif的密?
DNS目录
nslookup www.linuxfocus.org
q回www.linuxfocus.org的ip地址.
nslookup -type MX linuxfocus.org
q回L名符合linuxfocus.org的MX记录信息.
LDAP目录
(我们在下面详细阐述)
ldapsearch uid=aghaffar
q回关于用户aghaffar的所有公开信息.
q和find / -uid aghaffar unix命o很类?
ldapsearch uid=aghaffar mail
q回用户ughaffar的邮件信?
目录基础或根
在上面我们所提到的Q何一U目录服务中都有一个我们开始浏览或搜烦的开始点. q个开始点是通常所谓的? q和一|的根也很cM. 每棵都有一个根, 以及很多的树枝树?
* 文gpȝ的根?/
* NIS 的根是域? 比如 "linuxfocus.org"
* DNS ҎInternic(译者注: Internet|络信息中心, Internet的管理组l?
* LDAP同样有一个可定义的根, 比如 "o=linuxfocus.org" , q里o表示l织
每个栚w可以衍生出好多枝?正如同你d的花园中的树木一?, 对于文gpȝ来说, 它的枝叶是一个个文g及子目录. 每一个枝叉有一些属? 比如文gpȝ的枝?文g及子目录)有以下的属?
* 名称
* 修改旉
* 所有?
* l?译者注: 所有者所在的l?
* {等
下图昄了一个文件系l目?

属性由unix命ols -ld /usr得到.
下面是一个LDAP目录的图C?

我们在下面讨论q张?
区分?DN, Distinguished Name)
和自然界中的树不? 文gpȝ/LDAP/电话L目录的每一片枝叉臛_有一个独一无二的属? q一属性可以帮助我们来区别q些枝叶.
在文件系l中, q些独一无二的属性就是带有完整\径的文g? 比如/etc/passwd, 该文件名在该路径下是独一无二? 当然我们可以?usr/passwd, /opt/passwd, 但是Ҏ它们的完整\? 它们仍然是唯一?
cM于DNSpȝ的FQDN正式域名, FQDN也是唯一?
在LDAP? 一个条目的区分名称叫做“dn”或者叫做区分名. 在一个目录中q个名称L唯一? 比如, 我的dn?uid=aghaffar, ou=People, o=developer.ch". 不可能有相同的dn, 但是我们可以有诸?uid=aghaffar, ou=Administrators, o=developer.ch"的dn. q同上面文gpȝ?etc/passwd ?/usr/passwd的例子很cM.
我们有独一无二的属? ?ou=Administrators, o=developer.ch" 中uid和在"ou=People, o=developer.ch"中的uid. qƈ不矛?
LDAP服务?
现在市场上有很多LDAP服务? 大多数都可以在linux上运? 本文介lopenLDAP的?
我ؓ什么选择openLDAP? Z么你应该选择openLDAP?
* openLDAP是开放源码的
openLDAP的官方网站是http://www.openldap.org. 你可以下载其源代码包自己~译, 或者看看你的linux发行版是否已l包含了该Y件包. 如果已经包含了就可以安装预先~译好的版本从而少p些力?
我已l成功地在SuSE6.x ?RedHat6.x上测试过openLDAP.
构徏LDAP目录
下面我们介l设|一个LDAP服务器的步骤.
步骤:
* 下蝲q安装openLDAP
* 配置 LDAP server
* 配置本地环境指向LDAP安装
* 初始化LDAP数据?
* 查询LDAP
* d/修改LDAP条目
下蝲q安装openLDAP
正如前面所提到? 可以从www.openldap.com下蝲源代码包q根据它的相x档进行安? 或者安装预先编译好的包(包的安装或如何编译应用程序已l超Z本文讨论的范?.
配置LDAP服务?
在我们的例子? 我将为linuxfocus.org构徏LDAP服务? 你可以用你喜Ƣ的~辑器编辑slapd.conf和ldap.comf配置文g来更改名U等参数以适应你的具体需?
在我的服务器上配|文件在/etc/openldap目录? 你的配置文g可能?usr/local/etc/openldap或者别的地? q要Ҏ你的linux发行版本或者编译openldap的具体情况而定.
######### /etc/openldap/slapd.conf ###################################
# 下面的部分是我的suse 6.4 linux 发行版本预先定义?
# 我们讄的部分在本文的第二和W三部分
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
#######################################################################
# 定义使用的数据库cd. ~省是ldbm
database ldbm
# 后缀或者根. q是你LDAP目录的顶节点
suffix "o=linuxfocus.org"
# LDAP的dbs 保存的位|?
directory /var/lib/ldap
# 目录理员的区分?
rootdn "cn=Manager,o=linuxfocus.org"
# 保存ldap目录理员的明文密码是很p糕? 但是我们在刚刚开始用ldap时这样做
rootpw secret
# q就是所有的一?br>
~辑你的 /etc/openldap/ldap.conf配置文g
该文件位于ldap客户?我们用同一计算Z为服务器和客L, 当然q可以在同一计算机或不同的计机?
通常诸如ldapdelete 、ldapadd{等的ldap客户端会读该文g的内?
##########/etc/openldap/ldap.conf#########
# LDAP 的缺省设|?
#
# 查看 ldap.conf(5) 可以获取更多的信?
# 本文件应该设|ؓҎ有h可读
# 定义ldap服务? 可以用主机名或ip地址
host 127.0.0.1
# 定义我们要查询的目录的根
# 我们要使用的顶节点, q不一定是目录的根, 比如我们可以使用
# base=ou=users, o=linuxfocus.ch
# q时我们的一切查询都从树根o=linuxfocus.org的分支开?
现在启动ldap服务?
如果你用SuSE预先~译好的openldap服务? 你可以通过下面的命令启动ldap服务
/etc/rc.d/ldap start
在RedHat, 该命令ؓ
/etc/rc.d/init.d/ldap start
如果你是使用~省讄自己~译q安装的, 你可以用/usr/local/libexec/slapd &启动ldap服务? 如果没有使用~省讄, h到slapd文gq运行它.
在新安装的LDAP服务器上d数据
到现在ؓ? 你的ldap服务器已l运行v来了, 可以准备d数据? 最标准的往ldap服务器中d数据的方法是建立一个LDIF(LDAP目录交换格式)文g. 你可以通过阅读man ldif来获得更多关于ldif的信?
单说? ldif是ldap条目的文本表C? q些条目是很好读懂的, q且可以在来自两个不同的厂家的LDAP服务器间交换数据, 哪怕用的是不同的数据库后台或者是q行在不同的操作pȝ?
是的, q有其他Ҏ. 我对Z么不使用XML替代LDIF感到很惊?
p我们一h建立ldif文g, 而不要感CQ何的忙ؕ. 一些应该记住的要点:
* ldif 文g中的每一记录/条目都应用一个空行分开
* I格是很重要? "Atif Ghaffar" ?Atif Ghaffar " 是完全不同的
下面是一个ldif文glinuxfocus.org.ldif
dn: o=linuxfocus.org
o: linuxfocus.org
objectclass: top
objectclass: organization
dn: ou=editors, o=linuxfocus.org
ou: editors
objectclass: organizationalUnit
dn: uid=aghaffar, ou=editors, o=linuxfocus.org
uid: aghafar
cn: Atif Ghaffar
sn: Ghaffar
givenname: Atif
objectclass: person
userpassword: yIvSBWSuLs2N2
mailacceptinggeneralid: aghaffar@linuxfocus.org
ou: editors
dn: uid=mkempe,ou=editors,o=linuxfocus.org
uid: mkempe
cn: Magnus Kempe
sn: Kempe
givenname: Magnus
objectclass: person
userpassword: clearpass
mailacceptinggeneralid: mkempe@linuxfocus.org
maildrop: mkempe@developer.ch
preferredlanguage: fr
ou: editors
下面我们这些数据加入ldap目录. 我们使用命o行程序ldapadd
ldapadd -D "cn=Manager, o=linuxfocus.org" -w secret < linuxfocus.org.ldif
该命令?#8220;cn=Manager, o=linuxfocus.org”作ؓ理员的区分?dn), 使用secret
作ؓ密码, 然后从linuxfocus.org.ldif文g中读取数据ƈ写入ldap目录.
如果一切正常的话你可以准备开始查询你的ldap目录? 否则如果光Z差错的话,你或许可以准备往我的邮箱灌水?)
为我的邮件服务器考虑, 我希望一切正?
在l之? 让我们一行一行的来检查一下这个ldif文g.
1Q?q一行定义顶U记录的区分?dn), q将是目录树的根, q是必须定义?
2Q?q一行我们定义组l?o), q赋gؓ“linuxfocus.org”.
3Q?q一行定义这个对象的对象c? 我们定义为top.
4Q?定义对象的类?q里是组l对?.
5Q?I为分割符.
6Q?定义leditors(q是linuxfocus editors分支), 举一反三, 我们也可以根据不同的目的来定义其他的分支, 比如hosts和data分支.
7Q?明确定义l织单元(ou)editors的属? 属性是可以被用来查询的条目, 比如, 如果你想要查询所有属于editors的用? 你可以这h?#8220;show all dn where ouQeditors”. 如果我们没有定义属? 则这条记录将不符合查询条?
8Q?定义对象c?l织单元).
9Q?I为分割符.
10Q?定义属于leditors的用户aghaffar的区分名.
11Q?定义该用Luid(要保证其是唯一?.
12Q?定义该用Lcn(普通名?, 比如, 我喜Ƣ将我的名字写成“Firstname Lastname”, 而有的h可能喜欢“Lastname Firstname”.
13Q??
14Q??
15Q?对象c??
16Q?用户密码(q里是加密的密码). q串字符表示密码是用加密法加密q的. 剩下的部分是?#8220;yI”加密的密?yIvSBWSuLs2N".
17Q?定义我的邮g地址.
18Q?定义我所属于的组l单?leditors)
19Q?I为分割符.
20Q?定义另一个用户mkempe
21Q?普通名?
22Q??
23Q??
24Q?对象c?
25Q?用户密码: 注意q里我们使用明文密码. 你可以ؓ不同的用户用不同的Ҏ. q是Ҏ每一条目定义? 而不是基于数据库定义? 因此一个用户可能用明文密? W二个可能用加密密? 另一个则可能使用SHA认证方式.
26Q?邮g地址.
27Q?maildrop: 定义用户邮箱的真实位|? 在这个例子中, q个服务器接受收件h为mkempe@linuxfocus.org的邮? 然后邮g服务器会查询ldap服务?#8220;有接受收件h为mkempe@linuxfocus.org的邮吗? ”ldap服务器就会返回maildrop属性? 接着邮g服务器就会将该邮件发l那个邮?
28Q?母语: q是我们一个额外的属? q个属性定义了用户的母? 我们可以利用存储在中央ldap服务器的信息来ؓ改用h供更好的服务. 比如, 直接向该用户昄本页的法语版? h意前面一条记录没有母语、maildrop{属? q也是ldap强大的一个方面――不必象一个数据库中的表格那样拥有固定的结? 你可以在一条记录中定义3条属? 而在另一个中定义30条属?
29Q?l织单元.
查询ldap数据?
让我们找出关于用户mkempe的所有数?
ldapsearch uid=mkempe
扑ևeditors的所有区分名
ldapsearch (&(objectclass=person)(ou=editors)) dn
更多的例子可以参考ldapsearch的man手册.
LDAP的好?
让我们来看一看迁UdLDAP所带来的好?
LDAP是一个开攄标准. 你将使用的大多数的新的应用程序都能够查询ldap数据? 甚至windows2000使用LDAP作ؓ他的目录服务. 信息的集中化会带来巨大的利? 单点理, 减少错误, 减少数据复制{等.
LDAP应用实例
如果我是h公司的推销? 我可以测试向你销售LDAPq告诉你可以用它来作?#8220;联系人管?#8221;, 但是我不受雇于康柏公? 所以我会尝试向你介lLDAP有趣的一些方?
同一dpȝ的单一数据?
用户帐号攄在一个集中的地方.
你可能会使用一个LDAP目录来管理你的用? 攄用户的密码及其他信息, 而不仅仅是存攑֜/et/passwd文g? Windows/Unix/Mac用户都可以用这些信?
: 你可以用LDAP信息来进行用戯? 而不是用shadow或nis{等方式.
: 你可以写一个小webE序来让用户不用d到系l就可以更改他的存放在LDAP中的unix密码. q时你将需要用pam_ldap, 可以参考资源列表中关于pam_ldap的url.
注意:
l一dpȝ的单一数据?=同一dpȝ
大多数LDAP销售商在向你销售LDAP? 会告诉你如果你用LDAP, 你就可以拥有一个同一dpȝ解决Ҏ. 其实q只说对了一? 同一dpȝq不是什么新玩艺, 只不q时ITl理的噱头而已.
同一dpȝ的实?
* 你用"aghaffar"d工作?
* 你访问公司的内部|? 内部|中的web面是密码保护的, 你不用登录就可以讉K, 因ؓwww服务器可以识别你的n?
* 你开始运行一个程? 比如SAP, 再一ơ地, 你不需要密? 因ؓpȝ已经拥有了你的n份和信息.
* {等{等
当然你可以用LDAP作ؓ用户数据? 而在几个不同的应用程序间q行会话理的小戏法是所谓的“l一dpȝ”? 要知? q和LDAP是风马牛不相及的.
其实q可以用LDAP, NIS, NT域控制器帐号, 数据? q面文g实现?
: 你可能想要徏立用户邮件帐号但是不惛_立unxi帐号. 没问? 我正在用一个LDAP Postfix邮g服务器Cyrus IMAP/POP服务器的复合服务器来理成千上万的用? 当然不用建立相应的系l帐?
: 你可能想要将不同应用E序的信息集中化. 比如, Netscape的首选项、书{信息存入LDAP, q且用户可以这些信息从一部计机Ud到另一? 从LDAP服务器下载他/她的信息. q个用户可以从Windows NT Netscapeq移到Linux/Solaris/Macintosh Netscape的同时还使用同样的用户信?对不? 又提CMicrosoft, 我知道这倒了你的胃口).
情景: 我憎恶老是在web和书面上填充我的个h信息. 我不知道Z么h们老是想知道我的年龄、生日、办公室地址, 即已经告诉q他? 在我以前谋职的公叔R, 我们不得不徏立庞大的表格, 表格的信?5Q都是一L(姓名、主题、通信地址、楼层、管理员名字、部?.
: 比如, 如果我的电话出故障了, 我给你的唯一信息?#8220;我的电话出故障了”.
采取以下的措施可以尽量减用L厌烦:
* 为用h供问题提交表?
* 面提供用户?密码验证 (每个对话验证一? 下一ơ用L录是能记住用户信?
* 面提供两个表单元素 1) 反映问题的文字框 2) 提交按钮
写文? ??
我希望这文章能对你有所帮助, 或者让你的大脑充满?0001100110010. 你看? 你ƈ不是必须成ؓ专家才能和大家共享你的知? 你不必成Z个教? 也不必成Z个教师才能写教程. 每一点小的知识都能帮助别h.
q运的是, 现在我看到越来越多的人在讨论linux, 我看C们中的大多数人都在测试linux, 在一些hq行了一D|间的同时一些h很快攑ּ? q些人可能完全没有unix命o的用经验和概念, 然而他们却可能和遇到的问题斗争了一D|? 如果你精饱满的面对遇到的问? 那么你可以成为最好的教师, 如果你认Z没有M的资料写文章来帮助linuxC֛, 你可以自愿的本文翻译成你的母语.
资源列表:
PAM LDAP Module
pam_ldap 模块为Solarish和linux工作站提供LDAP目录认证, 以及更改其在目录中的密码.
openLDAP
OpenLDAP 目是一个协作开发强健的、商业等U的、具有丰富特性的、ƈ且是开放源码的LDAP应用E序和工L目. 该项目由一个全世界志愿者组成的C֛理, 该社团利用Internet来交、计划和开发OpenLDAP 软g和文?
Java based excellent LDAP Browser/Editor
LDAP 览?~辑器提供用户友好界面LDAP目录~辑工具. 由JFC (SwingSet) 和JNDI cd写成. 可以q接W二和第三版LDAP 服务?
kldap
kldap是一个KDE的LDAP客户?览? . 你可以象你熟悉的Novell Administrator那样览LDAP目录.
http://freshmeat.net/search.php3?query=ldap
Freshmeat 站点上大量的LDAP相关工具.
http://www.redbooks.ibm.com/abstracts/sg245110.html
IBM的LDAP实现手册. 你可以在U浏览或购买.
ypldapd - nis 2 ldap gateway
Ypldapd 是一个网l信息服?NIS) 服务? 它用LDAP作ؓ数据? 通过ypldapd, 现存的NIS 客户可以透明C用LDAP来查询用戗组和主Z? 企业可以充分地获得LDAP所带来的好? 比如扩展性等而不用升U客L.
Introduction to the SLAPD and SLURPD Administrators Guide
必读的关于LDAP的教E?
An LDAP RaodMap & FAQ
一个关于LDAP和X.500目录服务的资源教E?
http: //www.umich.edu/~dirsvcs/ldap/index.html
轻量目录讉K协议.
english original source: http://www.linuxfocus.org/English/July2000/article159.shtml

]]> - Subversion安装W记http://www.aygfsteel.com/kongbowoo/archive/2007/08/28/140614.htmlkongbowookongbowooTue, 28 Aug 2007 10:12:00 GMThttp://www.aygfsteel.com/kongbowoo/archive/2007/08/28/140614.htmlhttp://www.aygfsteel.com/kongbowoo/comments/140614.htmlhttp://www.aygfsteel.com/kongbowoo/archive/2007/08/28/140614.html#Feedback0http://www.aygfsteel.com/kongbowoo/comments/commentRss/140614.htmlhttp://www.aygfsteel.com/kongbowoo/services/trackbacks/140614.html服务器端SVNserver的下?
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91
客户端TortoiseSVN的下载地址:
http://tortoisesvn.net/downloads

]]>
վ֩ģ壺
Ϫ|
|
|
|
ɽ|
|
ī|
Ƶ|
|
|
|
|
|
ױ|
ũ|
ع|
ƽԭ|
|
|
Թ|
|
|
|
|
|
|
|
|
|
ǿ|
γ|
ʯ|
|
ɽʡ|
|
ݶ|
|
|
|
|
ʡ|