一.安装环境
Server | CentOS Linux release 7.6.1810 (Core) |
---|---|
Server IP | 192.168.88.100 |
二.准备工作
- 关闭selinux;
- 打开防火墙tcp 389 / 636端口。
- 安装依赖包
yum install *ltdl* gcc gcc-c++ -y
三.安装OpenLDAP
1、 安装BDB
#必须在解压包的build_unix目录中编译安装,否则会报错
cd /opt #文件下载目录
wget http://download.Oracle.com/berkeley-db/db-5.1.29.tar.gz
tar -zxvf db-5.1.29.tar.gz
cd db-5.1.29/build_unix/
../dist/configure --prefix=/usr/local/berkeleydb-5.1.29
make
make install
2、更新lib库
#保证在后面编译openldap时能找到lib和include下的库
echo "/usr/local/berkeleydb-5.1.29/lib/" > /etc/ld.so.conf
ldconfig -v
3、安装OpenLDAP
#编译选项可以通过./configure --help查看;
cd /opt #文件下载目录
wget ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/openldap-2.4.44.tgz
tar -zxvf openldap-2.4.44.tgz
cd openldap-2.4.44
./configure
--prefix=/usr/local/openldap-2.4.44
--enable-syslog
--enable-modules
--enable-debug
--with-tls
CPPFLAGS=-I/usr/local/berkeleydb-5.1.29/include/
LDFLAGS=-L/usr/local/berkeleydb-5.1.29/lib/
make depend
make
make test
make install
4、设置可执行命令
#对openldap客户端(bin)与服务器端(sbin)相关执行档添加软链接,也可以通过增加环境变量的方式设置
cd /usr/local/openldap-2.4.44
ln -s /usr/local/openldap-2.4.44/bin/* /usr/local/bin/
ln -s /usr/local/openldap-2.4.44/sbin/* /usr/local/sbin/
四.简单配置
1、 安装完成的openldap-2.4.44目录结构
openldap安装完成后相关目录承载的功能如下:
bin/ --客户端工具如ldapadd、ldapsearch
etc/ --包含主配置文件slapd.conf、schema、DB_CONFIG等
include/
lib/
libexec/ --服务端启动工具slapd
sbin/ --服务端工具如slappasswd
share/
var/ --bdb数据、log存放目录
2、配置rootdn密码(optional)
#设置rootdn密码,这里设置为123456;
#这样rootdn密码为密文方式,复制输出密文到主配置文件rootdn对应的位置即可,如果不想麻烦,可以忽略此步,在主配置文件中使用明文即可。
cd /usr/local/openldap-2.4.44/
slappasswd
#New password:
#Re-enter new password:
#{SSHA}6HNgV9LlxbcvhaJ7wccPbKDR4g7Evi90
3、主配置文件slapd.conf
cd /usr/local/openldap-2.4.44/etc/openldap/
vim slapd.conf
#schema默认只有core.schema,各级需要添加
6 include /usr/local/openldap-2.4.44/etc/openldap/schema/collective.schema
7 include /usr/local/openldap-2.4.44/etc/openldap/schema/corba.schema
8 include /usr/local/openldap-2.4.44/etc/openldap/schema/cosine.schema
9 include /usr/local/openldap-2.4.44/etc/openldap/schema/duaconf.schema
10 include /usr/local/openldap-2.4.44/etc/openldap/schema/dyngroup.schema
11 include /usr/local/openldap-2.4.44/etc/openldap/schema/inetorgperson.schema
12 include /usr/local/openldap-2.4.44/etc/openldap/schema/java.schema
13 include /usr/local/openldap-2.4.44/etc/openldap/schema/misc.schema
14 include /usr/local/openldap-2.4.44/etc/openldap/schema/nis.schema
15 include /usr/local/openldap-2.4.44/etc/openldap/schema/openldap.schema
16 include /usr/local/openldap-2.4.44/etc/openldap/schema/pmi.schema
17 include /usr/local/openldap-2.4.44/etc/openldap/schema/ppolicy.schema
#新增日志文件级别与路径,需要在编译时--enable-debug,否则日志文件输出,不影响调试模式;
28 loglevel 256
29 logfile /usr/local/openldap-2.4.44/var/slapd.log
#修改域名及管理员账户名;
69 suffix "dc=live400,dc=com"
70 rootdn "cn=admin,dc=live400,dc=com"
#使用密文密码,即前面使用slappasswd生成的密文;
74 rootpw {SSHA}6HNgV9LlxbcvhaJ7wccPbKDR4g7Evi90
4、初始化OpenLADP(optional)
cd /usr/local/openldap-2.4.44/var/openldap-data/
cp DB_CONFIG.example DB_CONFIG
5、启动OpenLADP
#直接在后台工作
/usr/local/openldap-2.4.44/libexec/slapd
#在前端工作,输出debug信息
[root@localhost ~]# /usr/local/openldap-2.4.44/libexec/slapd -d 256
6、验证
netstat -tunlp | grep 389
或者
ps -ef | grep slapd
如图示,说明openldap已经启动运行成功:

六.简单使用(示例)
1、创建1个管理员账号
(1)新建test.ldif文件
# 注意与slapd.conf文件中保持一致
vim test.ldif
dn: dc=live400,dc=com
objectclass: dcObject
objectclass: organization
o: live # organization 组织(公司)名称
dc: live400
dn: cn=admin,dc=live400,dc=com
objectclass: organizationalRole
cn: admin
(2)插入数据库,可以看到账号已经加入到ldap中:
ldapadd -x -D "cn=admin,dc=live400,dc=com" -W -f test.ldif

(3)验证
ldapsearch -x -b 'dc=live400,dc=com' '(objectClass=*)'

2、创建1个具有部门属性的员工
(1)新建test2.ldif文件
#这里其实是先创建1个部门”it”,再在”it”部门创建了1个员工
vim test2.ldif
dn: ou=it,dc=live400,dc=com
ou: it
objectClass: organizationalUnit
dn: cn=test1,ou=it,dc=live400,dc=com
ou: it # ou 单位(部门)名称
cn: test1 # cn 名字
sn: t1 # sn 姓氏
objectClass: inetOrgPerson # objectClass 内置属性
objectClass: organizationalPerson
(2)插入数据库,可以看到已经员工账号加入到ldap中:
[root@localhost ~]# ldapadd -x -D "cn=admin,dc=live400,dc=com" -W -f test2.ldif

(3)验证
[root@localhost ~]# ldapsearch -x -b 'dc=live400,dc=com' '(objectClass=*)'

3、运行ldapadmin
# LDAP Administrtor下载地址
http://softerra-downloads.com/ldapadmin/ldapadmin-4.13.16704.0-x64-eng.msi
(1)创建数据库文件:New—>New Profile,或者在主界面中Ctrl+P;






(6)现在状态是所有人都可以访问,为保障安全性,设置用户匿名登录。用户登录必须有账号密码才能登录成功。
# 编辑slapd.conf配置文件
cd /usr/local/openldap-2.4.44/etc/openldap/
vim slapd.conf
#打开access设置
access to *
by self write
by users read
by anonymous auth
客户端重新访问,显示失败信息。点击“Properties”,选择“Credentials”--“Other credentials”,输入账号密码进行登录。



网友评论