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服务器部署完成。
热门推荐
合同中的货币单位:概念、选择与书写规范
通货膨胀来袭!如何应对超长期国债风险?
人社厅联合通知:2025年五险一金缴费基数,定了!
易经第四十一卦:损卦详解
安卓如何访问云数据库
委外加工库存管理指南:从基础记录到智能监控
9种特殊涂料的种类、特点与用途全解析
「ADELES和GALOIS理论课件及习题讲解」
贵州九大徒步路线全攻略:从紫江地缝到猴子沟
C语言函数递归终止条件判断详解
说法识法:一纸遗嘱写明身后事 不悖本心庇荫身边人
遺囑寫了沒效?自書遺囑範例、預立遺囑範本報你知!
深入探索激光雷达的线数之谜,从单线到多线,不同应用场景下的传感器解析
如何提高蛋鸭产蛋率?解密鸭子下蛋的秘密与养殖技巧!
胃肠镜——做你胃肠道疾病的「照妖镜」!
虾壳能吃吗?营养价值与食用注意事项全解析
如何理解黄金价格和股市的关联关系?这种关系对投资策略有何影响?
为选手“医”路护航!2024南京马拉松赛事医疗保障专项培训顺利举行
提升个人信用的重要性与方法解析
在美国老板不发工资怎么办?
工地上讨要工资的最佳方法有哪些
羧甲基纤维素钠的多功能应用
中药刺梨的功效与作用
宇宙洪荒怎么理解?
五莲人文考
约起来!打卡五莲这条网红路,一起“环”游五莲吧!
正月三十祭祖宴的八大禁忌!年轻人不懂,老一辈却严守!
八字命理分析程序,探索传统占星术的现代应用
东契奇未完的复仇:三双缔造纪录,独行侠总经理沦为背景板
新生活游戏哪些值得玩2025 有意思的新生活游戏top5