发布时间:2025-12-09 16:23:14 浏览次数:5
(格式——slappasswd -s [password])
[root@nano ~]# slappasswd -s huawei{SSHA}TlGs09uMOeFa5UJNhy1LB6cGW9i8N+tt # 记住该密码,下面配置要用定位到/etc/openldap/slapd.d/cn=config中,修改相关配置文件{1}monitor.ldif、{2}hdb.ldif、{-1}frontend.ldif:
[root@nano ~]# cd /etc/openldap/slapd.d/cn\=config[root@nano cn=config]# ll> 总用量 24 drwxr-x---. 2 ldap 4096 3月 2 10:14 cn=schema> -rw-------. 1 ldap 378 3月 2 10:14 cn=schema.ldif> -rw-------. 1 ldap 513 3月 2 10:14 olcDatabase={0}config.ldif> -rw-------. 1 ldap ldap 443 3月 2 10:14 olcDatabase={-1}frontend.ldif> -rw-------. 1 ldap ldap 562 3月 2 10:14 olcDatabase={1}monitor.ldif> -rw-------. 1 ldap ldap 609 3月 2 10:14 olcDatabase={2}hdb.ldif导入基本Schema,使用如下命令:
[root@nano cn=config]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif[root@nano cn=config]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif[root@nano cn=config]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif默认情况下OpenLDAP是没有普通用户的,只有一个管理员用户(最开始配置的)
[root@localhost ~]# groupadd ldapgroup1[root@localhost ~]# groupadd ldapgroup2[root@localhost ~]# useradd -g ldapgroup1 ldapuser1[root@localhost ~]# useradd -g ldapgroup2 ldapuser2[root@localhost ~]# echo '123456' | passwd --stdin ldapuser1[root@localhost ~]# echo '123456' | passwd --stdin ldapuser2# 提取刚添加的用户和用户组相关信息[root@localhost ~]# grep ":10[0-9][0-9]" /etc/passwd > /root/openldap/users[root@localhost ~]# grep ":10[0-9][0-9]" /etc/group > /root/openldap/groups[root@localhost ~]# cat openldap/users[root@localhost ~]# cat openldap/groups# 使用migrate_passwd.pl文件生成要添加用户和用户组的ldif[root@localhost ~]# /usr/share/migrationtools/migrate_group.pl /root/openldap/groups > /root/openldap/groups.ldif[root@localhost ~]# /usr/share/migrationtools/migrate_passwd.pl /root/openldap/users > /root/openldap/users.ldif# 导入用户及用户组到Ldap数据库[root@localhost ~]# ldapadd -x -w '123456' -D 'cn=admin,dc=ss,dc=com' -f /root/openldap/groups.ldif[root@localhost ~]# ldapadd -x -w '123456' -D 'cn=admin,dc=ss,dc=com' -f /root/openldap/users.ldif把LDAP用户加入到用户组
# 尽管我们已经把用户和用户组信息,导入到OpenLDAP数据库中了。但实际上目前OpenLDAP用户和用户组之间是没有任何关联的# 如果我们要把OpenLDAP数据库中的用户和用户组关联起来的话,我们还需要做另外单独的配置[root@localhost ~]# cat > /root/openldap/add_user_to_groups.ldif << "EOF"dn: cn=ldapgroup1,ou=Group,dc=ss,dc=comchangetype: modifyadd: memberuidmemberuid: ldapuser1dn: cn=ldapgroup2,ou=Group,dc=ss,dc=comchangetype: modifyadd: memberuidmemberuid: ldapuser2EOF[root@localhost ~]# ldapadd -x -w '123456' -D 'cn=admin,dc=ss,dc=com' -f /root/openldap/add_user_to_groups.ldif1》 查询LDAP全部信息
[root@localhost ~]# ldapsearch -x -b 'dc=ss,dc=com' -H ldap://127.0.0.12》 查询添加的LDAP用户组信息
[root@localhost ~]# ldapsearch -LLL -x -D 'cn=admin,dc=ss,dc=com' -w '123456' -b 'dc=ss,dc=com' 'cn=ldapgroup1'3》 查询添加的LDAP用户信息
[root@localhost ~]# ldapsearch -LLL -x -D 'cn=admin,dc=ss,dc=com' -w '123456' -b 'dc=ss,dc=com' 'uid=ldapuser1'默认情况下OpenLDAP是没有启用日志记录功能的,但是在实际使用过程中,我们为了定位问题需要使用到OpenLDAP日志
# 新建日志配置ldif文件,如下:[root@localhost ~]# cat > /root/openldap/loglevel.ldif << EOFdn: cn=configchangetype: modifyreplace: olcLogLevelolcLogLevel: statsEOF[root@localhost ~]# ldapmodify -Y EXTERNAL -H ldapi:/// -f /root/openldap/loglevel.ldif# 修改rsyslog配置文件,并重启rsyslog服务,如下:[root@localhost ~]# cat >> /etc/rsyslog.conf << EOFlocal4.* /var/log/slapd.logEOF# 重启服务[root@localhost ~]# systemctl restart rsyslog[root@localhost ~]# systemctl restart slapd# 使用ldapuser1认证下[root@localhost ~]# ldapwhoami -x -D uid=ldapuser1,ou=People,dc=ss,dc=com -w 123456查看OpenLDAP日志,如下:
[root@localhost ~]# tail /var/log/slapd.log到此,LDAP已配置完成。
先安装Apache和PHP:
[root@localhost ~]# yum -y install httpd php php-ldap php-gd php-mbstring php-pear php-bcmath php-xml再安装phpldapadmin:
[root@localhost ~]# yum -y install epel-release[root@localhost ~]# yum --enablerepo=epel -y install phpldapadmin》修改config.php文件:
[root@nano cn=config]# vim /etc/phpldapadmin/config.php +397 > // 397行取消注释,398行添加注释 > $servers->setValue('login','attr','dn'); > // $servers->setValue('login','attr','uid');》修改phpldapadmin.conf文件:
[root@nano cn=config]# vim /etc/httpd/conf.d/phpldapadmin.conf +11 > <IfModule mod_authz_core.c>> # Apache 2.4 > Require local > # 添加一行内容,指定可访问的ip段 或者输入:Require all granted 开放外网访问 > Require ip 192.168.77.0/24> </IfModule>修改Apache的端口!一般来说80端口会被占用,所以需要改一下端口,如果不需要的可以跳过此步骤。
vim /etc/httpd/conf/httpd.conf 将配置文件中的Listen 80 改成Listen 8081启动httpd
[root@nano cn=config]# systemctl enable --now httpd浏览器访问 phpldapadmin:
Phpldap使用方法参考:https://blog.csdn.net/u010543388/article/details/107682769
该软件更容易创建用户组、用户和移动等
如果公司有多个域,请将命令执行多次,修改命令中-b 后面的域名就行;
注意: 以上命令只适合数据量小的时候,数据量在10000以内可以这么做,如果超过了请就选择其他方法;
若出现如下报错,则证明数据库中已有该条记录,需要到ldap_data_2023.ldif中删除,再继续导入即可
adding new entry "dc=test,dc=com"
ldap_add: Already exists (68)
1、停止openldap
[root@nano cn=config]# systemctl stop slapd[root@nano cn=config]# systemctl disable slapd2、卸载
[root@nano cn=config]# yum -y remove openldap-servers openldap-clients3、删除残留文件
[root@nano cn=config]# rm -rf /var/lib/ldap4、删除ldap用户
[root@nano cn=config]# userdel ldap5、删除openldap目录
[root@nano cn=config]# rm -rf /etc/openldapOpenLDAP安装与配置 -博客园
LDAP安装、LDAP数据迁移、LDAP卸载指南及PHPldapAdmin管理软件安装-博客园
在CentOS 7上安装OpenLDAP服务器 - 简书 (jianshu.com)