在CentOS 7环境下搭建OpenLDAP服务器,涉及多个步骤,包括安装、配置和验证,以下是详细的操作指南:
1. 环境准备
服务器规划:确保有两台CentOS 7服务器,一台作为OpenLDAP服务器(IP为192.168.31.200),另一台作为客户端机器(IP为192.168.31.76)。
关闭SELinux:为了简化配置过程,建议暂时关闭SELinux,执行命令setenforce 0
并修改配置文件/etc/selinux/config
中的SELINUX=enforcing
为SELINUX=disabled
。
2. 安装OpenLDAP
安装软件包:在服务器端,使用以下命令安装OpenLDAP相关的软件包:
yum y install openldapservers openldap openldapclients
3. 配置OpenLDAP
拷贝数据库配置文件并启动服务:
cp /usr/share/openldapservers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown ldap: /var/lib/ldap/DB_CONFIG systemctl start slapd systemctl enable slapd
生成管理员密码:
slappasswd
按照提示输入并确认密码,记录生成的密码串。
导入基本的模式:
ldapadd Y EXTERNAL H ldapi:/// f /etc/openldap/schema/cosine.ldif ldapadd Y EXTERNAL H ldapi:/// f /etc/openldap/schema/nis.ldif ldapadd Y EXTERNAL H ldapi:/// f /etc/openldap/schema/inetorgperson.ldif
配置域信息:编辑chdomain.ldif
文件,设置管理员密码、域后缀等信息,然后使用ldapmodify
命令应用更改。
添加基本条目:创建基本的目录结构,如用户、组织单位等。
4. 验证配置
测试LDAP搜索:使用ldapsearch
命令验证LDAP服务器是否配置成功,能否正确返回目录条目信息。
5. 客户端配置
安装LDAP客户端软件:在客户端机器上,安装OpenLDAP客户端软件包:
yum install y openldapclients nsspamldapd
配置nslcd:编辑/etc/nslcd.conf
文件,设置LDAP服务器地址、基本DN等信息。
配置PAM:编辑/etc/pam.d/systemauth
等PAM配置文件,启用LDAP认证。
配置nsswitch.conf:编辑/etc/nsswitch.conf
文件,将passwd
、shadow
、group
等服务的顺序调整为先查询LDAP再查询本地文件。
测试登录:尝试从客户端机器通过LDAP进行用户认证,验证配置是否成功。
FAQs
问题1:如何重置OpenLDAP管理员密码?
答:可以通过以下步骤重置OpenLDAP管理员密码:
1、停止OpenLDAP服务:systemctl stop slapd
。
2、使用slappasswd
命令生成新的哈希密码:slappasswd new password
。
3、编辑OpenLDAP配置文件(如olcDatabase={1}hdb.ldif
或olcDatabase={2}hdb.ldif
),将新生成的哈希密码替换到olcRootPW
参数中。
4、重启OpenLDAP服务:systemctl start slapd
。
问题2:如何在OpenLDAP中添加新用户?
答:在OpenLDAP中添加新用户通常需要执行以下步骤:
1、编辑一个包含用户信息的LDIF文件,
dn: uid=newuser,ou=People,dc=example,dc=com objectClass: inetOrgPerson cn: New User sn: User uid: newuser userPassword: {SSHA}hashedpassword
注意将hashEDPassword
替换为用户密码的哈希值(可使用slappasswd
命令生成)。
2、使用ldapadd
命令将LDIF文件中的用户信息添加到OpenLDAP目录中:
ldapadd x D "cn=Manager,dc=example,dc=com" W f user.ldif
注意将D
参数后的值替换为具有足够权限的管理DN。