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服务器部署完成。
热门推荐
儿童喉部有结节怎么办
肺结节会不会发展成癌症?掌握这5个关键特征,决绝隐患
苏州大学最新研究揭示肺腺癌潜在靶向治疗策略
东西文化中的“生命”与“美”
减肥瘦脸方法全攻略:最佳时间与科学方案
乳制品卫生知识全解析
《十八岁出门远行》:一场关于成长与探寻的心灵之旅
《圣经》经典语录精选50句
烟草加工企业ERP管理系统的特点、功能及主要作用
如何使用VOSviewer分析多数据库
佛教基础理论研修:如何修习十二因缘
遇到城市内涝,如何避险?这份安全防范指南请收好
重庆自驾玉溪中途在哪里休息?旅游线路推荐-重庆到玉溪自驾
CD36是什么?详解这种关键细胞表面蛋白的功能与作用
莱芜海边一日旅游:景点攻略与行程路线
名正而言顺,汉语称谓的“法”与“礼”
解析RAID技术:保障数据安全,如何选择适当级别与硬盘配置
2025年2月全国受理网络违法和不良信息举报1768.3万件
为什么吃完菠萝舌头麻
管制刀具可以邮寄吗?
西班牙如何开启大航海时代?从统一建国到征服海洋——西班牙简史5
“黄金护目镜”——维生素A!
献血的好处和坏处 献血后要注意什么
苏妲己姓氏起源探究:一个红颜背后的家族与历史
XO型腿康复训练与手术治疗的选择
编码器选型注意事项及推荐
适合1-12岁孩子简单有效的感统训练游戏
喊江节:东北千年渔猎文化的时代回响
六大茶类是怎么区分的
英国的实力到底有多强?看看英国的真实水平,我们一直低估它了!