To convert a standard slapd.conf file to the new format, issue the following command (re: man slapd-config ): slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d Note that the directory /etc/openldap # /usr/sbin/slapindex -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d # echo $? cn=config: # slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d config file testing succeeded olcConfigDir: /etc/openldap/slapd.d olcArgsFile: /var/run/openldap/run/slapd.args olcAttributeOptions
/systemd/system/slapd.service. man:slapd-config man:slapd-hdb man:slapd-mdb file {SLAPD_URLS} SLAPD_OPTIONS (code=exited, status=0/SUCCESS) Process: 2434 ExecStartPre=/usr/libexec/ /slapd.d/cn=config/olcDatabase={2}hdb.ldif" Mar 02 20:57:48 devops-node4 slapd[2448]: tlsmc_get_pin EOF 重启rsyslog和slapd服务 systemctl restart rsyslog systemctl restart slapd tail -f /var/log/slapd.log
man:slapd-config man:slapd-hdb man:slapd-mdb file:///usr/share/doc/openldap-servers/guide.html Process : 2448 ExecStart=/usr/sbin/slapd -u ldap -h ${SLAPD_URLS} $SLAPD_OPTIONS (code=exited, status=0/SUCCESS ) CGroup: /system.slice/slapd.service └─2451 /usr/sbin/slapd -u ldap -h ldapi:/// ldap:/// Mar 02 20 error on "/etc/openldap/slapd.d/cn=config/olcDatabase={1...r.ldif"Mar 02 20:57:46 devops-node4 slapd EOF 重启rsyslog和slapd服务 systemctl restart rsyslog systemctl restart slapd tail -f /var/log/slapd.log 修改默认
service slapd retsart 修改cn=config数据库的形式 理解生效 不需要重启slapd进程 objectclass 在openldap中,每个条目必须有包含一个objectclass man:slapd-config man:slapd-hdb man:slapd-mdb file:///usr /share/doc/openldap-servers/guide.html Process: 2448 ExecStart=/usr/sbin/slapd -u ldap -h ${SLAPD_URLS " Mar 02 20:57:46 devops-node4 slapd[2448]: ldif_read_file: checksum error on "/etc/openldap/slapd.d/ EOF 重启rsyslog和slapd服务 systemctl restart rsyslog systemctl restart slapd tail -f /var/log/slapd.log 修改默认
usr/share/doc/krb5-server-ldap-1.10.3/kerberos.schema /etc/openldap/schema/ 修改配置 修改配置文件/etc/openldap/slapd.conf 更新slapd.d slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d chown -R ldap:ldap /etc/openldap /slapd.d && chmod -R 700 /etc/openldap/slapd.d 重启slapd服务 systemctl restart slapd 至此,则完成了基于Kerberos+
LDAP 安装 debian: apt install slapd ldap-utils # slapd 为服务端, ldap-utils 为客户端程序 CentOS: yum install 但是 slapd.d 是由服务进程维护的,并且使用CRC来校验文本是否改动,我们无法轻易修改,slapd安装包给我们提供了一个命令 slapadd 用于创建配置文件,所以才用了下面的方法来初始化数据库。 %d_%H:%M:%S)'`.tar.xz /etc/ldap/slapd.d/ tar -Jcvf /root/back/slapd.data-`date '+(%Y.%m. /lib/slapd/* rm -rf /var/lib/ldap/* # 复制配置文件到临时目录 cp /usr/share/slapd/slapd.init.ldif /tmp cd /tmp 这里我创建一个 %d_%H:%M:%S)'`.tar.xz /etc/ldap/slapd.d/ tar -Jcvf /root/back/slapd.data-`date '+(%Y.%m.
slapd2.1.6查看状态,正常启动则ok# systemctl status slapd2.1.7查看版本slapd -VV@(#) $OpenLDAP: slapd 2.4.44 (Feb 23 //设置用户所有权chown ldap:ldap /var/log/slapd///创建日志文件touch /var/log/slapd/slapd.log//设置权限chown ldap . /var/log/slapd/slapd.log//写配置echo "local4.* /var/log/slapd/slapd.log" >> /etc/rsyslog.conf重启使其生效systemctl slapd[19909]: DIGEST-MD5 common mech free5月 16 02:12:54 localhost.localdomain slapd[19909]: slapd stopped slapd[19909]: DIGEST-MD5 common mech free5月 16 02:12:54 localhost.localdomain slapd[19909]: slapd stopped
特别强调了从传统 slapd.conf 到动态 cn=config 配置的演进,并提供了 cn=config 的实际修改案例。 1. 在启动 slapd 服务之前进行配置验证非常有用。 示例: slaptest -f /etc/ldap/slapd.conf -u 3. OpenLDAP 核心守护进程 Slapd 及其配置 slapd 是 OpenLDAP 项目的核心组件,它是 OpenLDAP Directory Server 的守护进程(daemon)。 3.1 Slapd的作用 监听 LDAP 请求: slapd 监听标准的 LDAP 端口(默认 389 用于非加密连接,636 用于 LDAPS/SSL/TLS 加密连接),等待客户端(如 ldapsearch 处理请求: 接收到请求后,slapd 会根据其配置、目录数据和访问控制列表(ACLs)来处理这些请求。 管理数据存储: slapd 管理后端数据库,负责数据的持久化存储和检索。
/etc/openldap/slapd.d /etc/openldap/slapd.d.bak 添加一些基本配置,并引入openldap的schema: touch /etc/openldap/slapd.conf echo -e "pidfile /var/run/openldap/slapd.pid\nargsfile /var/run/openldap/slapd.args" >> /etc/openldap /slapd.conf 更新slapd.d slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d chown -R ldap:ldap /etc/openldap/slapd.d && chmod -R 700 /etc/openldap/slapd.d 启动服务 chkconfig --add slapd chkconfig --level 345 slapd on /etc/init.d/slapd start 查看状态,验证服务端口: ps -ef | grep slapd | grep -v grep netstat -ntpl |
再停止slapd服务,初始化数据库文件,提示:代码块部分可以左右滑动查看噢 [root@ip-172-31-7-172 ldap]# service slapd start ls: cannot access [ OK ] [root@ip-172-31-7-172 ldap]# service slapd stop Stopping slapd: -7-172 ldap]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/ config file testing succeeded [ OK ] [root@ip-172-31-7-172 ldap]# chkconfig --add slapd [root@ip-172-31-7-172 ldap]# chkconfig slapd on [root@ip-172-31-7-172 ldap]# chkconfig --list slapd slapd 0:off 1:off 2:on 3:on
openLDAP openLDAP是LDAPv3协议的具体实现,可以支持多平台,以提供目录服务,其进程为slapd。 ,dc=com #dc修改域名 olcRootDN: cn=admin,dc=example,dc=com #admin为管理员账号 # vim /etc/openldap/slapd.d/cn= # chown ldap:ldap /var/log/slapd # touch /var/log/slapd/slapd.log # chow ldap.ldap /var/log/slapd/slapd.log # vim /etc/rsyslog.conf Local4.* /var/log/slapd/slapd.log # systemctl restart rsyslog 2)修改数据库配置文件 /slapd.log { prerotate /usr/bin/chattr -a /var/log/slapd/slapd.log endscript
cp slapd.ldif /root/ 修改slapd.ldif文件,配置TLS密钥路径,增加include的文件及配置管理员账号和OpenLDAP的根域信息,完整文件如下: [root@cdh1 ~]# cat slapd.ldif # # See slapd-config(5) for details on configuration options. # This file should ]# rm -rf /etc/openldap/slapd.d/* [root@cdh1 slapd.d]# slapadd -F /etc/openldap/slapd.d -n 0 -l /root /etc/openldap/slapd.d/ [root@cdh1 ~]# ll /etc/openldap/slapd.d/ total 8 drwxr-x--- 3 ldap ldap 4096 Dec slapd [root@cdh1 lib]# systemctl status slapd 到此OpenLDAP服务安装成功。
1、安装OpenLDAP yum install openldap openldap-* service slapd start 2、下载 wget http://nchc.dl.sourceforge.net tgz tar -zxvf phpldapadmin-1.2.3.tgz mv phpldapadmin /var/www/html/ 3、配置服务 vi /etc/sysconfig/ldap,确保SLAPD_LDAPI =yes cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf cp /usr/share/openldap-servers /DB_CONFIG.example /var/lib/ldap/DB_CONFIGmv /etc/openldap/slapd.d{,.bak} 生成密码: slappasswd [root@LAMP ~]# slappasswd New password: Re-enter new password: vi slapd.conf 找到语句: suffix“dc=my-domain,dc=com
之前总结了OpenLDAP基础知识,以往在centos6.x系统上是通过slapd.conf配置部署OpenLDAP主从环境的,centos7上默认是动态部署的,通过yum安装发现无slapd.conf status slapd ● slapd.service - OpenLDAP Server Daemon Loaded: loaded (/usr/lib/systemd/system/slapd.service man:slapd-config man:slapd-hdb man:slapd-mdb file:///usr /system.slice/slapd.service └─26402 /usr/sbin/slapd -u ldap -h ldapi:/// ldap:/// May 17 May 17 18:24:38 openldap-master slapd[26195]: slapd stopped.
.主节点(172.31.7.172)配置 ---- 1.停止OpenLDAP服务,提示:代码块部分可以左右滑动查看噢 [root@ip-172-31-7-172 openldap]# service slapd stop Stopping slapd: [ OK ] [root@ip-172-31-7-172 openldap /* slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/ chown -R ldap:ldap /etc/openldap/slapd.d / ll /etc/openldap/slapd.d/ [0tz1mg7qfh.jpeg] 4.启动OpenLDAP服务 service slapd start [fquy9zw6q6.png] 5.验证服务是否正常 /* slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/ chown -R ldap:ldap /etc/openldap/slapd.d
[root@ldap-master ~]# slapd -VV @(#) $OpenLDAP: slapd 2.4.44 (Jan 29 2019 17:42:45) $ mockbuild@x86 :21 ldap-master slapd[13230]: slapd shutdown: waiting for 0 operations/tasks to finish Apr 16 04:14:21 ldap-master slapd[13230]: slapd stopped. Apr 16 04:14:21 ldap-master slapd[13289]: @(#) $OpenLDAP: slapd 2.4.44 (Jan 29 2019 17:42:45) $#012#011mockbuild :14:21 ldap-master slapd[13291]: slapd starting Apr 16 04:14:29 ldap-master slapd[13291]: conn=1000 fd
目录 1 安装 LDAP 2 修改 LDAP 配置文件 3 修改 slapd.conf 4 ldap_bind: Invalid credentials (49) 错误问题解决 安装 LDAP yum /etc/openldap/slapd.conf cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown -R ldap:ldap /var/lib/ldap 修改 slapd.conf vim /etc/openldap/slapd.conf 找到并修改如下内容: suffix 或者重新生成 slapd.d 下的配置数据: rm -fr /etc/openldap/slapd.d/* slaptest -f /etc/openldap/slapd.conf -F /etc/openldap /slapd.d chown -R ldap:ldap /etc/openldap/slapd.d/ /etc/init.d/slapd restart 这样就没有问题了。
/ slapd.d.bak ~]# mkdir slapd.d && slappasswd #生成密钥 New password: Re-enter new password: {SSHA}CYZ2put971vDLOeZVvbG7W9E3aOjantN -l slapd.ldif #生成配置 ~]# chown -R ldap.ldap /etc/openldap/slapd.d ~]# cp /usr/share/openldap-servers ~]# touch /data/logs/slapd/slapd.log ~]# chown ldap:ldap /data/logs/slapd/ -R ----- 创建日志ldif ~]# vim /slapd.log ~ ]# systemctl restart rsyslog ~]# systemctl restart slapd 日志切割 ~]# vim /etc/logrotate.d/slapd /data/logs/slapd/slapd.log { daily rotate 5 copytruncate dateext missingok } ~]#
/etc/openldap/slapd.conf 3、设置管理员密码,testpassword为拟设置的密码 slappasswd -s testpassword 会生成编码后的密钥 {SSHA}jgxgMu+JJpNUDSkrZClSnounHVpjGyhF 4、修改slapd.conf 核心配置 database bdb suffix var/lib/ldap/DB_CONFIG chmod 700 /var/lib/ldap/DB_CONFIG 7、删除默认内容 rm -rf /etc/openldap/slapd.d /* 7、检测配置是否正确 slaptest -u 8、启动ldap service slapd restart 9、设置自动启动 chkconfig slapd on 10、 -F /etc/openldap/slapd.d/ 12、设置权限并重启 chown -R ldap:ldap /etc/openldap/slapd.d/ service slapd restart
文件,增加以下配置 SLAPD_LDAPI=yes 2.重启slapd服务 [root@cdh1 ~]# systemctl restart slapd[root@cdh1 ~]# systemctl /etc/openldap/slapd.d/ 3.重启slapd服务 [root@cdh2 openldap]# systemctl restart slapd[root@cdh2 openldap 服务再次尝试连接 [root@cdh1 ~]# systemctl stop slapd[root@cdh1 ~]# systemctl status slapd [root@ 5.挂掉主节点的slapd服务再次进行连接测试 [root@cdh1 ~]# systemctl stop slapd[root@cdh1 ~]# systemctl status slapd 6 服务 [root@cdh1 ~]# systemctl stop slapd[root@cdh1 ~]# systemctl status slapd 4.测试在副节点使用id命令能否新增的tests1