宇宙惯例,先介绍一下什么是LDAP,LDAP全称是LightDirectory Access Protoco ---轻型目录访问协议。大家可以把它理解为一种数据库,跟关系数据库以行列表的结构存储数据不同,LDAP以树状结构存储数据。LDAP为查询做了优化,但是更新数据的功能没有数据库强大,缺少对事务、回滚的支持。因此LDAP更适合频繁查询,但数据较少更改的场合,目前应用较多的是用户认证。
OpenLDAP安装前先做一下准备工作:
1.确定系统有没有sudo命令,后面安装过程中要用到,没有就用以下命令行安装:
su-c 'apt-get installsudo'
有人说:“老师,我的系统里连apt-get都没有怎么办?”,“保安!把这个砸场子的赶出去!”
2.把当前用户加进允许使用超级用户权限的列表中,步骤如下:
编辑/etc/sudoers文件,用visudo命令来编辑,不要用vi。至于为什么,我也说不清,系统就是这样建议的。
在sudoers文件里添加一行:$USERNAMEALL=(ALL) NOPASSWD:ALL
说明:
$USERNAME是允许使用sudo命令的用户名
第一个ALL代表允许以上用户从任何主机登录
第二个ALL代表以上用户可以用sudo命令获得任何用户的权限
NOPASSWD代表用户执行sudo命令时不需要输入密码
ALL表示以上用户可以获得超级用户的所有权限
3.OpenLDAP安装时会询问我们一些问题,由我们做出选择。这需要debconf这个接口的支持,因此需先对debconf做些调整:
sudodpkg-reconfiguredebconf
执行上述命令后会弹出几个对话框让你选择,按我说的选就对了:碰到interface时你就选Dialog,碰到priority你就选low
不要多问为什么,小心我叫保安拉你出去啊!
4.由于我们安装的LDAP和LDAP的客户端都需要一个域名,因此还得配置一下/etc/hosts文件:
用vi(这次可以用vi了)编辑/etc/hosts文件,在里面添加一行IP和域名、主机名的对照
例如我的服务器IP是192.168.0.23,想要给这个IP地址绑定两个域名ldapc.halo.rdc、ldap.halo.rdc,同时再绑定两个主机名ldapc和ldap,可以这样设置:
192.168.0.23 ldapc.halo.rdc ldap.halo.rdc ldapcldap
常见hosts文件里有IP地址、一个域名、一个主机名的设置,中间用空格隔开,像上面这样为一个IP设置多个域名和主机名也能行,我做过实验,两个域名和主机名都能识别。至于Linux是怎么做到的?我也说不清。保安,把这个爱提问题的先打死埋了!
5.最后终于可以安装OpenLDAP了,执行下面的命令(此处有修改):
sudoapt-get install slapd ldap-utils libldap-2.4-2 libdb4.6
如果执行提示libdb4.6没有,你可以改成libdb4.4或libdb4.2试试,如果libldap2.4-2也没有,系统会提示你更换成哪一个版本的。
安装过程中会弹出一些对话框要求你配置参数,按下面的选择来:
OmitOpenLDAP server configuration? No
DNSdomain name: halo.rdc(你在hosts文件中配置的域名后缀)
Organizationname? halo.rdc(你在hosts文件中配置的域名后缀)
Administratorpassword: password(你的密码)
Confirmpassword: password(你的密码)
Databasebackend to use: BDB
Doyou want the database to be removed when slapd is purged? No
AllowLDAPv2 protocol? No
以上是OpenLDAP的安装过程,OpenLDAP的配置和创建内容我们下次还会降到。
本文参考了:http://www.debian-administration.org/article/585/OpenLDAP_installation_on_Debian
欢迎扫码关注我的微信公众号
欲知后文如何,请玩命打赏!