• Linux服务器部署系列之七—OpenLDAP篇


    LDAP(轻量级目录访问服务),通过配置这个服务,我们也可以在linux下面使用目录的形式管理用户,就像windows下面的AD一样,方便我们管理。下面我们就一起来配置openldap服务。本文运行环境:CentOS 5。
    软件需求:
    openldap-stable-20090411.tgz
    (http://www.openldap.org/software/download/)
    phpldapadmin-0.9.8.5.tar.gz (http://phpldapadmin.sourceforge.net/wiki/index.php/Main_Page)
    另外,运行phpldapadmin需要apache和php的支持,有关apache和php的安装,大家可以参考我的另一篇文章:Linux服务器部署系列之一—Apache篇(http://guoxuemin.blog.51cto.com/379574/168534
     
    1. 安装openldap
    1)安装BerkeleyDB
    # tar  zxvf  db-4.7.25.tar.gz
    # cd  db-4.7.25/build_unix
    # ../dist/configure
    # make
    # make  install
    # vi  /etc/ld.so.conf
    加入一下语句:
    /usr/local/BerkeleyDB.4.7/lib
    # /sbin/ldconfig
    2)安装openldap
    # tar  zxvf  openldap-stable-20090411.tgz
    # cd  openldap-2.4.16
    # env  CPPFLAGS=”-I/usr/local/BerkeleyDB.4.7/include”  LDFLAGS=”-L/usr/local/BerkeleyDB.4.7/lib” ./configure  --prefix=/usr/local/openldap  --enable-ldbm
    # make depend
    # make
    # make install
    3)检查安装结果
    安装好后,系统会自动生成一些.schema文件,我们可以使用命令:# ll /usr/local/openldap/etc/openldap/schema/*.schema来查看,如下图:
     
     
    2. 配置openldap
    openldap的配置文件主要为slapd.conf和ldap.conf,手动安装的话,存放在/usr/local/openldap/etc/openldap下面,如下图:
     
    1)配置slapd.conf文件
    主要需要修改的地方有两个,一个是将所有./schema添加进来(默认只有include /usr/local/openldap/etc/openldap/schema/core.schema这条记录),如下图:
     
    另一个地方是下图所示,将suffix项改成自己的目录后缀;设置rootdn,注意这里设置的root管理员是管理openldap的,跟linux系统的root管理员不是一样的。
     
    2)启动openldap
    使用以下命令启动openldap:
    # /usr/local/openldap/libexec/slapd
    3)加密管理员密码
     使用命令slappasswd修改管理员密码,默认的管理员密码是明文形式的,使用slappasswd修改后将以加密的方式保存。
     
    4)修改客户端配置文档
    如下图,修改红色框处,设置目录起点。
     
    5)录入信息
    一般信息录入的方式有三种:手工录入,使用.ldif文件格式录入,使用脚本录入。这里我们选用比较方便的那种——使用.ldif文件格式录入。
    首先使用vi  init.ldif命令建立一个init.ldif文件,内容如下:
     
    然后用命令/usr/local/openldap/bin/ldapadd  -x  -W  -D  “cn=root,dc=guoxuemin,dc=cn”  -f  init.ldif将内容导入,如下图:
     
     
    3. 配置openldapadmin
    1)安装openldapadmin
    # tar  zxvf  phpldapadmin-0.9.8.5.tar.gz
    # mv  phpldapadmin-0.9.8.5  /usr/local/phpldapadmin
    openldapadmin的安装很简单,只需要解压,然后移动到相应的目录就可以了。
    2)配置http.conf文件
    # vi  /usr/local/apache/conf/httpd.conf
     
    增加上图所示的内容,上述内容的作用是建立虚拟目录并设置用户认证。
    设置用户admin的密码,如下图:
     
    3)配置phpldapadmin
    默认情况下phpldapadmin自带了一个示例配置文件config.php.example,我们可以对改文件稍做修改,就可以使用了。
    # cd  /usr/local/phpldapadmin/config
    # cp  config.php.example  config.php
    # vi  config.php
    将274行的/*移动到283行,然后修改276-282行的参数,具体如下:
     
    然后屏蔽以下行的内容,如下图:
     
    另外,还有两项需要修改的,如下图:
     
    保存配置文件,并重启Apache服务,就可以使用浏览器输入:http://IP地址或计算机名/phpldapadmin/进行访问了。如下图:
     
    注意,要使用phpldapadmin,需要有gettext包的支持,在php编译时还需要将ldap也编译进去,否则,会出现下图所示错误信息:
     
    如果出现类似信息,那么只需要安装gettext包,并对php重新编译安装就可以了,
    gettext包的安装:
    # tar  zxvf  gettext-0.16.1.tar.gz
    # cd  gettext-0.16.1
    # ./configure  --prefix=/usr/local/gettext
    # make
    # make  install
    对php的编译如下图:
    4phpldapadmin应用
    点击左面板的login,我们可以通过openldap管理员root登录,如下图:
     
    登录进去后,可以看到openldap的操作界面,左面板上跟windows的AD一样有ou,有用户信息。
     
    如果我们要建立用户信息,可以点击左面板上的“Create new entry here”,然后根据需要在右面板上选择帐户类型,根据向导一步步建立。图形化的操作界面大家都很熟悉了,这里我就不再一一介绍。
     
    当然我们也还可以通过ldif的方式导入,点击左面板上的import可以导入ldif文件。点击左面板上的export可以将现有数据导出为ldif文件。
     
     
    4. 配置ldap日志
    修改ldap配置文件slapd.conf,增加一项loglevel 1,如下图:
    # vi  /usr/local/openldap/etc/openldap/slapd.conf
     
    然后修改系统日志配置文件:
    # vi  /etc/syslog.conf
    增加以下行:
    local4.*  /usr/local/openldap/var/log/ldap.log
    使用命令service syslog restart重启syslog,系统就会自动生成日志文件ldap.log了。
     
    OK,现在已经设置好了,我们可以通过目录的形式管理帐户信息了,不过,这个服务是免费的,所以功能上相对于windows的AD还是要弱一些。
  • 相关阅读:
    (U3D)Time的使用
    (U3D)如何从RESOURCES文件夹动态加载图片
    codeforce 3C-3D(Greedy)
    codeforce 3A-3B(Greedy)
    读取bmp
    透视投影的原理和实现-转载
    Drainage Ditches USACO 4.2 (最大流,BFS)
    成员函数指针小记-转载
    codeforce 2A-2B
    字符串各种Hash算法比较-转载
  • 原文地址:https://www.cnblogs.com/kscnchina/p/2817364.html
Copyright © 2020-2023  润新知