DN 是唯一的
389 端口为明文传输端口
不要单节点,预防事故发生。
- ldap的功能
实现负载keppalived
查询操作 ldapsearch
更新修改 ldapupdate
复制操作,openldap是分布式管理 提供复制同步,可以将主服务器的数据通过推送或者拉取的方式同步至从服务器。从而避免openldap的单点故障。
- openldap的架构
如图所示
dn为 uid-babs,ou=people,dc=example,dc=com
那么当前的域名为 example.com
组织单元 ou(organization unit)个人理解就是不同的组,例如管理组 用户组等
- 基本数据模式
(schema) 、LDIF语法、LDAP管理
Schema的引用需要配置文件为slapd.conf 目录为 /etv/openldap/slapd.conf - openldap的配置文件 配置方式。
slapd.conf 进行配置 ,缺点 修改相应条目,都需要通过slaptest重新生成数据库,然后重启slapd服务 service slapd restart
-
通过cn=config 数据库进行修改,对数据库进行添加删除dn,是立即生效,无需重启slapd进程
- objectclass 和attribute 是由schema文件来规定
schema文件规范
objectclass的构成、attribute格式以及继承关系。 - objectclass的分类
- 结构型 (structural) :person和organizationunit
- 辅助型 (auxiliary) : extensibeobject
- 抽象型 (abstract) :fop抽象型的objectclass不能直接使用
-
attribute(属性)
常用的属性有:uid、sn(姓)、givename(名字)、i、objectclass、dc、ou、cn、mail、telephonenumber、c等
-
案例2
-
LDIF格式详解
备注 : 冒号后面有空格 段末无空格。
-
LDAP安装
1.系统自带rpm包安装
- -rpm -ivh package-name
- yum install
-yum install openldap* -y
可以解决产生依赖包,自动安装。自定义yum源 cat /etc/yum.repos.d/
查询yum仓库
3.源码编译安装
源码无编译,可自定义需求
步骤:
1)wget 下载
2)解压 产生install和readme文件
3)配置路径等 configure --prefix=
4)make 编译属性进内核
5)make install 进行安装 &&
编译完成,
1.定义头文件 ln -sv
2.定义库文件 /etc/ld.so.conf.d/openldap.conf 重新加载ldconfig -v
注意
1.iptables
2.selinux
3.ntp时间同步 ntpdate 源 端口为123-
日志管理
线上出现问题,可通过日志排查,
openldap log配置 考虑因素
1.日志存放的位置
-权限ldap
2.如何开启当前系统支持openldap log
3.修改openldap server,开启日志功能。
方式1.slapd.conf 修改配置文件
方式2.cn=config 修改数据库
4.验证配置是否生效
配置方式:建议配置数据库 文件目录 /etc/openldap/slapd.d/ cn=config文件
配置流程:1日志存放位置及设置权限
[root@ldap ~]# cd /opt
[root@ldap opt]# mkdir openldaplog
[root@ldap opt]# cd openldaplog/
[root@ldap openldaplog]# touch ldap.log
设置日志文件权限为ldap组
[root@ldap openldaplog]# ll
total 0
-rw-r--r--. 1 root root 0 Jun 25 16:53 ldap.log
[root@ldap openldaplog]# chown ldap.ldap ldap.log
[root@ldap openldaplog]# ll
total 0
-rw-r--r--. 1 ldap ldap 0 Jun 25 16:53 ldap.log
默认情况下,相关日志记录在 /var/log/ 需要修改配置文件做指向
配置文件位置 /etc/rsyslog.conf openldap默认数字为4,代表ldap的日志
新开一行添加
# Log all the mail messages in one place.
mail.* -/var/log/maillog
# Log cron stuff
cron.* /var/log/cron
# Everybody gets emergency messages
*.emerg :omusrmsg:*
# Save news errors of level crit and higher in a special file.
uucp,news.crit /var/log/spooler
# Save boot messages also to boot.log
local7.* /var/log/boot.log
local4.* /opt/openldaplog/ldap.log
# ### begin forwarding rule ###
这步为添加系统支持openldap日志目录 保存退出。
- 开启openldap的日志功能
方式1.slapd.conf 修改配置文件 修改过后重启rsyslog服务
重启openldap服务
方式2.cn=config 修改数据库
查看级别
cat cn\=config.ldif | grep olcLogLevel
修改数据库
[root@ldap slapd.d]# cat << EOF | ldapmodify -Y EXTERNAL -H ldapi:///
> dn: cn=config
> changtype: modify
> delete:olcloglevel
> EOF
- openldap 安装
rpm -qa | grep openldap 查看当前安装的openldap
1.开始安装
yum -y install openldap\*
2.查看openldap 配置文件
ls /etc/openldap
不提供主配置文件 slapd.conf
需要我们手动拷贝openldap-servers所生成的模版!
rpm -qa | grep openldap 查看已安装的openldap 的软件包
我们需要 openldap-servers包的配置文件
rpm -ql openldap-servers 查看openldap-servers的生成文件
/usr/sbin/slapacl 访问控制
/usr/sbin/slapauth 认证
/usr/sbin/slappasswd 将管理员密码设为明文的
/usr/sbin/slaptest 检测语法,以及通过配置文件生成数据库文件
/usr/share/openldap-servers/DB_CONFIG.example db数据库模版
/usr/share/openldap-servers/slapd.ldif
创建ldap的模式