全面认识ldap

    ——读文前先为读者及将来的自己一个说明:本文算是比较系统的从介绍ldap是什么到ldap的用法,不过介绍不会非常深入,初学者适用,不可当字典。

    在我们眼中,我们可以把ldap看做我们种在服务器里的一棵树,这是一个比较普遍,也比较形象的的说法。想要认识ldap,我们可以从这里开始。在安装ldap时我们就好像在我们的服务器埋下了树根(dc)。有了树根,我们可以让它长出树杈(ou),最后我们再让它结果(cn),这样,一个庞大的系统树的雏形就表现出来了。熟悉编程的你肯定有发现,这非常你熟悉的树形目录结构,而那些果子,就是最终的文件(在ldap就是一条数据记录)。没错,ldap的全称就是“轻量目录访问协议”。确切的说,就是你可以通过ldap这个协议定下的规则,来访问这棵树的每一个果实。

    有了初步的认识,那下面,我们来看看,怎么先把树根埋下(详细的步骤网上资料很多,做法也是一样的,这里也简要介绍,环境:linux)。

    一、配置前先关闭iptables和SELINUX,避免配置过程中报错:

        service iptables stop

        setenforce 0

        vi /etc/sysconfig/selinux    ——    SELINUX=disabled    ——    wq保存

    二、LDAP安装配置:

        yum install openldap-* -y

    三、拷贝LDAP配置文件到LDAP目录:

        cd /etc/openldap/

        cp /usr/share/openldap-servers/slapd.conf.obsolete slapd.conf

    四、创建LDAP管理员密码:

        slappasswd    ——    创建完密码后会有一段密文,先拷贝下来,等等有用

    五、编译配置文件:

        vi /etc/openldap/slapd.conf

        

        现在对配置简要说明一下,当然,看配置中的注释你会更加详细的对它有所了解。其中cn就是你的管理员用户的用户名了,可以随意命名,不过上下要一致,dc即树根,也是一样,而且dc的数量是不限制的推荐像java的包命名规则:dc=blog,dc=csdn,dc=net。rootpw就是你刚刚记录下的密文。

    六、拷贝DB_CONFIG文件到指定目录:

        cp /usr/share/openldap-servers/DB_CONFIG.example  /var/lib/ldap/DB_CONFIG

        删除默认/etc/openldap/slapd.d下面的所有内容,否则后面在使用ldapadd的时候会报错:rm -rf /etc/openldap/slapd.d/*

    七、启动LDAP的slapd服务,并设置自启动:

        service slapd restart

        chkconfig slapd on

    八、赋予配置目录相应权限:

        chown -R ldap:ldap /var/lib/ldap

        chown -R ldap:ldap /etc/openldap/

    九、测试并生成配置文件:

        slaptest  -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d

        返回config file testing succeeded,则配置成功。

    十、下面就要把这个文件导入到LDAP,这样LDAP的目录里就有了数据记录了:

        ldapadd -x -D "cn=root,dc=ib,dc=paso,dc=co,dc=jp" -W -f demo.ldif 注意前面的dn(代表一条记录的全称)根据你自己的配置。

        当然,demo.lidf你是没有这个文件的,因为我还没开始介绍,哈哈。

    把树根埋下,现在服务器上已经安装好了ldap服务器了。现在再来了解下我们如何让他抽枝结果。现在来看demo.lidf文件里面究竟是什么东西。

        现在,新建一个文件:vim demo.lidf,然后内容如下,先是树根:

        

        然后,开始编辑树杈:

        

        最后,编辑果实:

        

        老规矩,这里简要介绍一下配置:先看树根,其实没什么好看的,里面的东西都是你自己之前设置的,唯一出现你没见过的属性就是objectClass。你可以这样看待它,他就想别人封装好的模板,你可以直接继承它,你就有了他的属性,比如说姓名、年龄、出生年月等。至于下面果实的description,很明显,这是创建user和group的关联,说的好听点,配合图片上的语境,就是给这些创建出来的用户赋予登录权限。当然,你要想精通这个配置怎么写,不告诉你,自己调查objectClass去。

    到现在,你已经拥有了自己建立的一棵数据树了。一般来说,这样,这棵树也可以用在实战里面了。ldap最大的优点就是查询速度快,比如说要是你的系统用户比较固定,权限系统相对简单,那你就可以考虑用它做用户权限管理了。相对于关系型数据库,这是它的一大优势。介绍到这ldap一整套下来已经介绍完毕。下面的内容算是附加,可看可不看。

    哈哈,不看你就亏了,下面再给你一个用ldap的理由:

    它已经开发了一套现成的图形界面管理工具(网页,浏览器就可以打开)。这意味着,你配过一次,以后都能按部就班的配置,然后直接使用开发好的图形界面管理你的用户、权限。一个系统直接就省去两个模块,大大缩短开发周期。

    以下,我们来介绍ldap的管理工具——lam。现在我们先来配置它:

    一、环境确认:

        php -v

        如果没有脚本的环境:yum -y install php

        在yum PHP的LDAP扩展模块下载:yum -y install php-ldap

    二、开始安装:

        转到/tmp:cd /tmp

        解压文件:tar -xjf ldap-account-manager-5.0.tar.bz2

        配置你的httpd.conf(什么?你的服务器上没装appache?那你安装ldap想干嘛?自己想办法):vi /etc/httpd/conf/httpd.conf

        

        然后吧这个文件也弄过去:mv ldap-account-manager-5.0 /var/www/lam

        授权:chmod 777 -R /var/www/lam

        不罗嗦了,命令很简单自己看:

        cd /var/www/lam/config

        cp config.cfg.sample config.cfg

        cp unix.conf.sample lam.conf

    三、最后就是我们最爱的步骤了,修改配置:

        vim lam.conf

        

        要人家帮忙管理肯定要告诉别人帮你管理哪棵树,然后吧管理员用户名密码给人家。

        

        然后在告诉人家管理哪几个树杈,树杈上的果子是苹果还是香蕉(继承的类)。然后attr_###后面跟的,就是lam页面上要显示给用户看的属性。

        配好了就这样:

        

        

    好了!大功告成!

    本文系博主个人见解,如有补充,不胜感激!





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值