OpenLDAP统一身份认证系统完整部署指南
创作时间:
作者:
@小白创作中心
OpenLDAP统一身份认证系统完整部署指南
引用
1
来源
1.
https://www.cnblogs.com/wuhanjiayou/p/18060381/OpenLDAP
LDAP 介绍
LDAP(Lightweight Directory Access Protocol)轻型目录访问协议,常用在单点登录场景。用户可以通过一个用户名和密码登录多个服务,方便管理。目前很多开源软件如Jenkins、GitLab、Jumpserver、Grafana、Confluence、NextCloud等都集成了LDAP,方便用户使用和运维管理。
下面介绍在CentOS7环境中安装和配置OpenLDAP服务器的步骤。
LDAP一般组织架构
软件安装
yum install openldap openldap-clients openldap-servers -y
配置OpenLDAP Server
编辑配置文件:
vim /etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif
将cn=Manager,dc=my-domain,dc=com修改为你自己的,例如:
cn=admin,dc=wuhanjiayou,dc=cn
编辑另一个配置文件:
vim /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif
将以下内容修改为:
olcSuffix: dc=wuhanjiayou,dc=cn
olcRootDN: cn=admin,dc=wuhanjiayou,dc=cn
在末尾添加认证密码:
olcRootPW: 123456
拷贝DB文件:
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown -R ldap:ldap /var/lib/ldap/
测试配置文件是否正确:
slaptest -u
如果修改了hostname,需要相应修改hosts文件:
hostnamectl set-hostname ldap
echo '127.0.0.1 ldap' >> /etc/hosts
启动服务:
systemctl start slapd
systemctl enable slapd
添加schema表:
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/nis.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/cosine.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
创建base.ldif文件
创建如下文件:
vim base.ldif
内容如下:
dn: dc=wuhanjiayou,dc=cn
objectClass: dcObject
objectClass: organization
o: wuhanjiayou.cn
dc: wuhanjiayou
dn: ou=users,dc=wuhanjiayou,dc=cn
objectClass: organizationalUnit
objectClass: top
ou: users
dn: ou=groups,dc=wuhanjiayou,dc=cn
objectClass: organizationalUnit
objectClass: top
ou: groups
建立最基础的目录结构:
ldapadd -x -W -D "cn=admin,dc=wuhanjiayou,dc=cn" -f base.ldif
验证基础目录是否创建成功:
vim /etc/openldap/ldap.conf
添加如下行信息:
BASE dc=wuhanjiayou,dc=cn
URI ldap://10.0.59.114 ldap://10.0.59.114:666
管理用户与组
安装依赖包:
yum install sharutils -y
下载并安装ldapscripts:
cd /opt
tar xzvf ldapscripts-2.0.8.tgz
cd ldapscripts-2.0.8 && make install PREFIX=/
配置ldapscripts:
vim /etc/ldapscripts/ldapscripts.conf
修改如下内容:
SERVER="ldap://10.0.59.114"
SUFFIX="dc=wuhanjiayou,dc=cn"
BINDDN="cn=admin,dc=wuhanjiayou,dc=cn"
ICONVCHAR="ISO-8859-15"
修改密码文件:
sh -c "echo -n '123456' > /etc/ldapscripts/ldapscripts.passwd"
管理Group和User
创建Group:
ldapaddgroup it
创建User:
ldapadduser wangj it
设置用户密码:
ldapsetpasswd wangj
基于PHPLDAPAdmin访问管理后台
安装Apache和PHP:
yum install httpd php php-ldap php-gd php-mbstring php-pear php-bcmath php-xml -y
安装PHPLDAPAdmin:
yum -y install epel-release
yum --enablerepo=epel -y install phpldapadmin
配置HTTPD:
vim /etc/httpd/conf/httpd.conf
修改如下内容:
AllowOverride All
DirectoryIndex index.html index.cgi index.php
ServerTokens Prod
KeepAlive On
配置PHPLDAPAdmin:
vim /etc/phpldapadmin/config.php
修改如下内容:
$servers->setValue('login','attr','dn');
$servers->setValue('server','host','127.0.0.1');
配置访问控制权限:
vim /etc/httpd/conf.d/phpldapadmin.conf
修改如下内容:
Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs
<Directory /usr/share/phpldapadmin/htdocs>
<IfModule mod_authz_core.c>
Require local
Require ip 10.0.59.0/24
</IfModule>
<IfModule !mod_authz_core.c>
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
启动PHPLDAPAdmin:
systemctl enable httpd
systemctl start httpd
使用Web浏览器访问:
http://10.0.59.114/ldapadmin/
用户名:cn=admin,dc=wuhanjiayou,dc=cn
密码:123456
如果登录报错,可尝试关闭服务器SELinux:
setenforce 0
至此,OpenLDAP服务器部署完成。
热门推荐
吉林:打造从冰雪火热向四季沸腾的万亿级旅游产业
如何提升观察力?揭秘生活中的微小细节
伤官见官怎么化解
诚信,永不过时
化妆品中的酒精到底是什么成分呢?
国内绝美骑行路线:从海南环岛到川藏线
周围性眩晕 VS 中枢性眩晕
骨折后服用中药的时间及注意事项
电脑如何将系统迁移到新固态硬盘?
固态硬盘怎么装系统(固态硬盘如何装系统)
肾病患者的饮食指南:如何选择低钠、高营养的食物?
儿童脑电图出现慢波怎么办?医生这样建议
韩国留学申请条件要求是什么?留学前辈的条件指南
更微创,更安全!“机器人”助力泌尿系统肿瘤治疗
怪物猎人荒野投射器弹药用途详解
选择决定命运,认知决定选择
OPNsense开源路由器和防火墙系统安装
2025年高考450分左右能上什么大学 可以报考院校有哪些
二极管大揭秘:从普通到特殊,全类型特性与应用解析
如何查询物业合同备案号:法律实务操作指南
常见GPU算力对比:5090与5090D的技术解析
白银期货数据的获取渠道有哪些?这些渠道的准确性如何?
C/S和B/S两种架构的概念、区别和联系
网络货运数字化物流:未来物流行业的新趋势
长时间使用电脑鼠标引发食指疼痛如何处理
深夜网上找人修电闸被收3975块,市场价才500多,记者询问反遭辱骂
二氧化碳中毒能自愈吗?需掌握这些知识!
广州商品房销售现场公示新规生效,个别项目仍未达标
五帝钱入户门用法及忌讳全解析
川字纹怎样去除才有效