Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->服务器相关 ->正文

手把手教您配置Linux目录服务器

来源: 作者: 时间:2007-04-11 点击: [收藏] [投稿]






# vi /usr/local/etc/OpenLDAP/slapd.conf
access to attr=userPassword
  by anonymous auth
  by self write
  by * none
access to *
  by self write
  by users read


  这里访问控制用于禁止匿名查询,而认证用户可以修改自己的所有属性,除了userPassword属性,允许查询它人的信息条目。上面的每一行都是必须的,如果没有“by anonymous auth”,需要认证的用户不能完成认证,因为它查询不到密码。所以“auth”在这里的作用就是允许匿名用户可以读到密码,但只能用于验证,而不能用于其它的用途,这就保证了密码属性的安全。


  另外前面介绍/etc/OpenLDAP/slapd.conf文件设定密码时,使用了明文,主要是为了调试方便,实际工作时应当使用加密方法。最新版本的OpenLDAP支持三种加密方法:MD5、CRYPT、SSHA。我们不想把rootpw 存储在服务器上的明文内,所以我们改用散列。有几种普遍使用的散列方法可通过slappasswd 命令来实现,包括SHA、SSHA、MD5、和CRYPT在内。安全方面CRYPT最差。SSHA是默认方法,MD5也不错。使用slappasswd 可以生成一个很好的散列rootpw:






 $ slappasswd
New password:
Re-enter new password:
{SSHA}Lr7P++EoH6GpIS4GZ36vkV4R422RuW7R
现在复制粘贴这个很好的新散列到/etc/ldap/slapd.conf内:
rootpw        {SSHA}Lr7P++EoH6GpIS4GZ36vkV4R422RuW7R


  这是一个永久设置,很适合用在小型的简单的网络上。更好的解决方案就是创建一个LDAP记录,该记录定义了LDAP管理员,还为LDAP管理员使用slapd.conf中的ACLs (access control lists)定义了访问权限。尽量少把安全敏感的信息存储在目录中.如果非存不可.一定要编辑ACL严格的控制访问权限如userPassword等.多数情况下目录服务还要主要是给其他的服务提供数据存储.这样的话应该让每个服务器绑定到不通的DN,同时在ACL中赋予他们较高的权限.而不能让所有的服务都使用rootdn来绑定。


  三、 管理OpenLDAP服务器


  1. 命令行下的管理


  Linux系统管理员更加喜欢使用命令,一定要养成在命令行下工作的习惯,要知道X-window只是运行在命令行模式下的一个应用程序。在命令行下学习虽然一开始进度较慢,但是熟悉后,您未来的学习之路把是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。即使是通过一条缓慢的调制解调器线路,它也能操纵几千公里以外地远程系统。OpenLDAP提供了在Linux命令行下的访问工具集。包括ldapsearch,ldapadd,ldapmodify,ldappassword,ldapdelete等必要的工具。


  2.使用phpldapadmin管理OpenLDAP服务器


  phpldapAdmin 是免费的工具,可以管理OpenLDAP服务器,使用它透过浏览器就可管理OpenLDAP服务器。phpldapAdmin是一个开源工具,官方主页:http://phpldapadmin.sourceforge.net/ ,最新版本:0.9.7.2 ,下载安装步骤:







#cd  /var/www/html/
# wegt http://jaist.dl.sourceforge.net/ ... dmin-0.9.7.2.tar.gz
#gunzip phpldapadmin-0.9.7.2.tar.gz
#tar vxf phpldapadmin-0.9.7.2.tar
#cd phpldapadmin-0.9.7.2/config
#cp config.php.example config.php


修改phpMyadmin配置文件:


# vi config.php
 $servers[ $i]['host'] = 'ldap.localhost';
 $servers[ $i]['base'] = 'dc=example,dc=com'; 
 $servers[ $i]['login_pass'] = 'secret1234567 '; #前面定义的服务器根管理员的密码


  然后在Linux 浏览器服务器的URL栏目输入:http://主机/phpldapadmin ,即可。界面见图7。当然也可以使用IP地址。



图7 phpMyadmin管理OpenLDAP界面


  除了phpMyadmin还有两个管理工具:ldapbrowser,官方网址:http://www-unix.mcs.anl.gov/~gawor/ldap/ ,最新版本:282b2,ldapbrowser是纯JAVA的程序,可跨平台运行,在开源的程序中,是最优秀的一个。缺点是不能浏览服务器端的schema对象,从而限制了条目编辑(添加)的能力。其次,由于JAVA对LDAP的访问方式在添加时,必须预先生成一个实现DirContext接口的类,因此,这也令订制型的添加操作在JAVA实现时相当困难。ldapadministrator官方网址:

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:技术前沿:四种主要服务器虚拟技术   下一篇:Novell小型商业服务器用户Linux套件

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号