上一篇
🚀 CentOS运维:手把手教你搭建LDAP服务器(2025最新版)
刚接手公司服务器的小白运维小张,今天被领导安排了一个“大活”——在CentOS上搭建LDAP服务器,用于统一管理公司内部系统的用户认证,看着空荡荡的服务器,小张摸了摸脑袋:“LDAP是啥?能吃吗?”🤔 别慌,今天咱们就用最接地气的方式,一步步搞定CentOS上的LDAP!
LDAP(轻量级目录访问协议)就像公司的“通讯录管理员”,能把所有用户的账号、密码、部门信息存在一个地方,其他系统(比如邮箱、OA)都来找它“查户口”。📚 比起每个系统单独管用户,LDAP集中管理更高效、更安全!
环境要求:CentOS 8/9(2025年推荐版本)
依赖包:
yum install -y openldap openldap-servers openldap-clients compat-openldap
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown -R ldap:ldap /var/lib/ldap/ # 授权给LDAP专用用户
systemctl start slapd && systemctl enable slapd
生成密码哈希(比如设为admin123
):
slappasswd -s admin123 # 输出类似:{SSHA}xxxxxx(记录这个值!)
创建密码修改文件changepwd.ldif
:
dn: olcDatabase={0}config,cn=config changetype: modify add: olcRootPW olcRootPW: {SSHA}xxxxxx # 替换为上面的哈希值
应用配置:
ldapadd -Y EXTERNAL -H ldapi:/// -f changepwd.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif
编辑chdomain.ldif
(替换dc=example,dc=com
为你的域名):
dn: olcDatabase={1}monitor,cn=config changetype: modify replace: olcAccess olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=admin,dc=example,dc=com" read by * none dn: olcDatabase={2}mdb,cn=config changetype: modify replace: olcSuffix olcSuffix: dc=example,dc=com replace: olcRootDN olcRootDN: cn=admin,dc=example,dc=com replace: olcRootPW olcRootPW: {SSHA}xxxxxx # 管理员密码哈希 add: olcAccess olcAccess: {0}to attrs=userPassword by dn="cn=admin,dc=example,dc=com" write by anonymous auth by self write by * none olcAccess: {1}to dn.base="" by * read olcAccess: {2}to * by dn="cn=admin,dc=example,dc=com" write by * read
应用配置:
ldapmodify -Y EXTERNAL -H ldapi:/// -f chdomain.ldif
创建base.ldif
:
dn: dc=example,dc=com objectClass: top objectClass: domain dn: ou=People,dc=example,dc=com objectClass: organizationalUnit ou: People dn: uid=testuser,ou=People,dc=example,dc=com objectClass: inetOrgPerson uid: testuser cn: Test User sn: User userPassword: testpass # 用户密码
添加用户:
ldapadd -x -D "cn=admin,dc=example,dc=com" -w admin123 -f base.ldif
ldapsearch -x -b "dc=example,dc=com" -D "cn=admin,dc=example,dc=com" -w admin123
openssl req -new -x509 -nodes -out /etc/openldap/certs/ldap.pem -keyout /etc/openldap/certs/ldap.key -days 365
编辑/etc/openldap/slapd.conf
,添加:
TLSCACertificateFile /etc/openldap/certs/ldap.pem TLSCertificateFile /etc/openldap/certs/ldap.pem TLSCertificateKeyFile /etc/openldap/certs/ldap.key
重启服务:
systemctl restart slapd
firewall-cmd --add-service=ldap --permanent # 开放389端口 firewall-cmd --add-service=ldaps --permanent # 开放636端口(TLS) firewall-cmd --reload setsebool -P httpd_can_network_connect on # 允许网络连接(SELinux)
/var/lib/ldap/
权限是否为ldap:ldap
。 通过以上步骤,咱们已经在CentOS上成功搭建了一个基础的LDAP服务器,支持用户管理、权限控制和TLS加密。🎉 后续还可以扩展用户组、密码策略、主从复制等功能,满足更复杂的需求!
参考来源:
有任何问题?欢迎评论区留言,小张和你一起排坑!💪
本文由 业务大全 于2025-08-21发表在【云服务器提供商】,文中图片由(业务大全)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/678482.html
发表评论