管理节点系统RHEL7.9, hostname: mu01, private IP: 12.12.12.100 1.安装openldap [root@mu01 ~]# yum -y install openldap-* compat-openldap migrationtools 2.数据库模板初始化 [root@mu01 ~]# cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG [root@mu01 ~]# chown ldap.ldap /var/lib/ldap/DB_CONFIG 启动服务: [root@mu01 ~]# systemctl enable slapd [root@mu01 ~]# systemctl start slapd 3.配置openldap [root@mu01 ~]# slappasswd -h {SSHA} -s admin069 {SSHA}Ht28FIss14oLv7IDq0y672W5KBpls+Wg -s是后面的admin069是管理员密码,下面输出的{SSHA}Ht28FIss14oLv7IDq0y672W5KBpls+Wg是加密密码 加密后的字段保存下,等会在配置文件中会使用到。 [root@mu01 ~]# vim db.ldif [root@mu01 ~]# cat db.ldif dn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcSuffix olcSuffix: dc=local,dc=cn dn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcRootDN olcRootDN: cn=Manager,dc=local,dc=cn dn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcRootPW olcRootPW: {SSHA}Ht28FIss14oLv7IDq0y672W5KBpls+Wg 注意:冒号后面一定加空格,其中cn=Manager中的Manager表示OpenLDAP管理员的用户名,而olcRootPW表示OpenLDAP管理员的密码。 dc表示域名,dc=local,dc=cn,相当于local.cn,级别越高越靠后。 导入修改配置 [root@mu01 ~]# ldapmodify -Y EXTERNAL -H ldapi:/// -f db.ldif 导入基本Schema [root@mu01 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif [root@mu01 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif [root@mu01 ~]# ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif 导入base数据,指定管理员等信息 [root@mu01 ~]# ldapadd -x -w "admin069" -D "cn=Manager,dc=local,dc=cn" -f base.ldif 其中admin069就是最开始初始化ladp的管理员密码 修改migrate_common.ph文件 migrate_common.ph文件主要是用于生成ldif文件使用,修改migrate_common.ph文件,如下: [root@mu01 ~]# vi /usr/share/migrationtools/migrate_common.ph $DEFAULT_MAIL_DOMAIN = "local.cn"; $DEFAULT_BASE = "dc=local,dc=cn"; $EXTENDED_SCHEMA = 1; 主要修改这三行,其中$EXTENDED_SCHEMA = 1是开启扩展模式 4.添加用户及用户组 [root@mu01 ~]# groupadd chem [root@mu01 ~]# groupadd ifmc [root@mu01 ~]# useradd -g chem wuy [root@mu01 ~]# passwd wuy 把刚刚添加的用户和用户组提取出来,这包括该用户的密码和其他相关属性,如下: [root@mu01 ~]# grep ":10[0-9][0-9]" /etc/passwd > /root/users [root@mu01 ~]# grep ":10[0-9][0-9]" /etc/group > /root/groups 根据上述生成的用户和用户组属性,使用migrate_passwd.pl和migrate_group.pl文件生成要添加用户和用户组的ldif,如下: [root@mu01 ~]# /usr/share/migrationtools/migrate_passwd.pl /root/users > /root/users.ldif [root@mu01 ~]# /usr/share/migrationtools/migrate_group.pl /root/groups > /root/groups.ldif 导入用户和用户组到数据库,使用如下命令: [root@mu01 ~]# ldapadd -x -w "admin069" -D "cn=Manager,dc=local,dc=cn" -f /root/users.ldif [root@mu01 ~]# ldapadd -x -w "admin069" -D "cn=Manager,dc=local,dc=cn" -f /root/groups.ldif 5.查询OpenLDAP的相关信息 查询OpenLDAP全部信息,使用如下命令: [root@mu01 ~]# ldapsearch -x -b dc=local,dc=cn 查询添加的OpenLDAP用户信息,使用如下命令: [root@mu01 ~]# ldapsearch -x uid=wuy -b dc=local,dc=cn 查询添加的OpenLDAP用户组信息,使用如下命令: [root@mu01 ~]# ldapsearch -x cn=chem -b dc=local,dc=cn 6.配置openldap登录 [root@mu01 ~]# authconfig-tui 选中[*] Use LDAP Authentication --> Next--> Use TLS前面可不选--> Server: ldap://12.12.12.100 Base DN: dc=local,dc=cn 然后点击OK 7.客户端client配置openldap 在客户端上安装必要的LDAP包 yum install -y openldap-clients nss-pam-ldapd 执行下面的命令,将客户端添加到LDAP服务器以进行单点登录。服务器地址使用LDAP服务器的IP地址或主机名 authconfig --enableldap --enableldapauth --ldapserver=12.12.12.100 --ldapbasedn="dc=local,dc=cn" --enablemkhomedir --update 启动nslcd服务 systemctl enable nslcd systemctl start nslcd 参考: 1. https://blog.csdn.net/weixin_43423965/article/details/105215245 2. https://www.cnblogs.com/quliuliu2013/p/11303038.html 3. https://www.cnblogs.com/networking/p/14193559.html 4. https://www.kclouder.cn/openldap-1/