在Linux系统(如CentOS、Ubuntu)上安装OpenLDAP(开源LDAP服务器)是配置的第一步。常用命令如下:
yum install openldap openldap-servers openldap-clients -yapt-get update && apt-get install slapd ldap-utils -yslappasswd生成哈希密码)并启动服务:systemctl start slapd && systemctl enable slapd。OpenLDAP的主配置文件通常位于/etc/openldap/slapd.conf(传统格式)或/etc/openldap/slapd.d/(动态LDIF格式)。关键配置项包括:
suffix(目录树基点,如dc=example,dc=com)、rootdn(管理员DN,如cn=admin,dc=example,dc=com)。directory(数据库文件存储路径,如/var/lib/ldap)、indexes(索引优化,如uid,eq、cn,sub提升搜索效率)。password-hash {SSHA}(强制使用哈希密码)、loglevel 296(开启详细日志)。slaptest -u测试语法正确性,再重启服务生效。通过LDIF(LDAP数据交换格式)文件初始化目录结构,包含组织单元(OU)、用户、组等条目。示例:
ou=users,dc=example,dc=com(用户单元)。uid=user1,ou=users,dc=example,dc=com,包含inetOrgPerson对象类(支持用户属性)。ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f initial.ldif(-x表示简单认证,-W提示输入密码)。openssl生成自签名证书(生产环境建议使用CA签发):openssl req -new -x509 -nodes -out /etc/ldap/slapdcert.pem -keyout /etc/ldap/slapdkey.pem -days 365slapd.conf或cn=config中添加:olcTLSCertificateFile /etc/ldap/slapdcert.pemolcTLSCertificateKeyFile /etc/ldap/slapdkey.pemolcListener={1}0.0.0.0:636 TLS(636为LDAPS默认端口)。通过access指令限制用户权限,遵循最小权限原则。示例:
access to attrs=userPassword
by self write(用户可修改自己的密码)
by anonymous auth(匿名用户可认证)
by * none(其他用户无权限)
access to *
by dn="cn=admin,dc=example,dc=com" write(管理员可写所有条目)
by * read(其他用户可读)。
slapd.conf中设置loglevel 296(记录认证、搜索等详细信息),并配置syslog将日志写入/var/log/ldap.log。ldapsearch定期检查条目完整性(如ldapsearch -x -b "dc=example,dc=com" "(objectclass=*)"),结合fail2ban防止暴力破解。修改/etc/ldap/ldap.conf(客户端配置文件),添加:
BASE dc=example,dc=com(目录树基点)
URI ldap://ldap.example.com(服务器地址,生产环境建议用LDAPS:ldaps://ldap.example.com)。
测试认证:ldapsearch -x -D "cn=admin,dc=example,dc=com" -W -b "dc=example,dc=com" "(uid=user1)"。
mod_auth_ldap模块实现LDAP认证,配置示例:<Directory "/var/www/html">
AuthType Basic
AuthName "LDAP Login"
AuthBasicProvider ldap
AuthLDAPURL "ldap://ldap.example.com/ou=users,dc=example,dc=com?uid?sub?(objectClass=inetOrgPerson)"
Require valid-user
</Directory>
dc=example,dc=com)、管理员DN等信息。/var/lib/ldap/目录(数据库文件),可使用tar命令:tar -czvf ldap_backup.tar.gz /var/lib/ldap/。ldapmodify -Y EXTERNAL -H ldapi:/// -f add_index.ldif,add_index.ldif内容示例:dn: olcDatabase={1}hdb,cn=config;changetype: modify;add: olcDbIndex;olcDbIndex: cn,sub)。/var/log/syslog或/var/log/slapd.log中的错误信息(如端口冲突、配置文件语法错误),用netstat -tulnp | grep 389确认端口未被占用。ldapsearch测试用户条目是否存在(如ldapsearch -x -D "cn=admin,dc=example,dc=com" -W -b "ou=users,dc=example,dc=com" "(uid=user1)"),检查客户端配置是否正确(如服务器地址、基数)。ldapwhoami -x -D "cn=admin,dc=example,dc=com" -W验证管理员权限,检查ACL配置是否允许操作。免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。