openldap的安装与配置
发表于:2025-02-12 作者:千家信息网编辑
千家信息网最后更新 2025年02月12日,今天小编给大家分享的是openldap安装与配置的详细介绍,相信大部分人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,话不多说,一起往下看吧。openldap的介绍与安装传统账户管理存在的
千家信息网最后更新 2025年02月12日openldap的安装与配置
今天小编给大家分享的是openldap安装与配置的详细介绍,相信大部分人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,话不多说,一起往下看吧。
openldap的介绍与安装
传统账户管理存在的问题
- 系统账号无法集中管理
- 系统账号权限无法集中控制
- 系统账号授权无法集中管理
- 系统账号审计无法集中管理
- 系统账号密码策略无法集中控制
简介
- OpenLDAP是一款轻量级目录访问协议(Lightweight Directory Access Protocol)
- 目前有两个家标准
- X.500:openldap
- LDAP:
- 支持TCP/IP协议: 用户读取和搜索比较方便
- 目录结构的信息是按照树形结构组织的
- DN:区别名属性,相当于数据库中的字段概念
优点
- 基于X.500标准协议
- 提供静态数据查询搜索
- 基于推拉的机智进行节点间数据的同步(复制),提供TLS,SASL的安全认证机制
- 基于第三方开源负载均衡软件进行高可用方案解决
- 元素才赢简单的文本字符串,而非特殊字符,便于维护目录树条目
- 集中认证管理
- 默认使用TCP/ZP协议传输条目数据,通过查找操作实现对目录条目信息的读写操作
- 费用低,配置简单,功能强大,管理容易
- 基于ACL控制用户访问数据的权限,从而保证数据的安全性
- 支持Nginx,HTTP,SAMBA,SVN,JENKINS等平台的账户管理
功能
- 查询
- 更新
- 同步
- 认证和管理
openLDAP的目录架构
目前的架构分为如下两种:
互联网命名组织架构
- 树根: 一般定义国家(c=CN)或者域名(dc=com)
- 一个或者多个组织单元:组织(o),组织单元(ou)
- 一个组织单元可以包含员工,设备等信息
- 企业级命名组织架构
openLDAP的工作模型
流程:
- 客户端向服务端发起验证请求
- 服务器端接收到请求之后,并通过slapd进程向后端的数据库进行查询
- slapd将查询结果返回给客户端即可
schema介绍与用途
- 是一个标准,定义了openLDAP目录树对象和属性存取方式
- 主要用于控制目录中各种条目所拥有的对象类以及各种属性的定义
- 通过自身规范来避免不合法数据存在于目录中
- 保证目录树信息的完整性,唯一性
OpenLDAP目录条目概述
objectClass分为如下几类
- structural: 结构型
- auxiliary:辅助型
- abstract: 抽象型
- 属性概述
- dn: 唯一标识名
- rdn: 相对标识名
OpenLDAP安装配置
YUM安装
- 环境与软件版本
- centos7.5+
- openldap2.4.44版本,hdb
~]# yum -y install wget curl git~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo~]# yum -y install epel-release~]# yum -y install openldap openldap-servers openldap-clients compat-openladp openldap-devel migrationtools
初始化配置
~]# cd /etc/openldap/~]# mv slapd.d/ slapd.d.bak~]# mkdir slapd.d && slappasswd #生成密钥New password: Re-enter new password: {SSHA}CYZ2put971vDLOeZVvbG7W9E3aOjantN~]# cp /usr/share/openldap-servers/slapd.ldif /etc/openldap/#### 配置schema加载~]# vim /etc/openldap/slapd.ldif cn: schemainclude: file:///etc/openldap/schema/core.ldifinclude: file:///etc/openldap/schema/collective.ldifinclude: file:///etc/openldap/schema/corba.ldifinclude: file:///etc/openldap/schema/cosine.ldifinclude: file:///etc/openldap/schema/duaconf.ldifinclude: file:///etc/openldap/schema/dyngroup.ldifinclude: file:///etc/openldap/schema/inetorgperson.ldifinclude: file:///etc/openldap/schema/java.ldifinclude: file:///etc/openldap/schema/misc.ldifinclude: file:///etc/openldap/schema/nis.ldifinclude: file:///etc/openldap/schema/openldap.ldifinclude: file:///etc/openldap/schema/pmi.ldifinclude: file:///etc/openldap/schema/ppolicy.ldifolcAccess: to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,c n=auth" read by dn.base="cn=admin,dc=neuvision,dc=ai" read by * noneolcSuffix: dc=neuvision,dc=aiolcRootDN: cn=admin,dc=neuvision,dc=aiolcRootPW: {SSHA}WslU/LDXGf/WTLLYGafxBzmT6y1CDabz~ ]# slapadd -n 0 -F /etc/openldap/slapd.d -l slapd.ldif #生成配置~]# chown -R ldap.ldap /etc/openldap/slapd.d~]# cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG #拷贝数据库配置文件~]# chown ldap.ldap -R /var/lib/ldap/~]# systemctl start slapd && systemctl enable slapd #服务启动~]# vim /usr/share/migrationtools/migrate_common.ph #导入数据脚本配置# Default DNS domain$DEFAULT_MAIL_DOMAIN = "51cto.com";# Default base $DEFAULT_BASE = "dc=51cto,dc=com";# such as person.$EXTENDED_SCHEMA = 1;~ ]# /usr/share/migrationtools/migrate_base.pl > /etc/openldap/basedomain.ldif #生成domain(域)文件~ ]# ldapadd -x -D cn=admin,dc=51cto,dc=com -W -f /etc/openldap/basedomain.ldif #添加条目
自定义组织
~]# mkdir /root/ldif && cd /root/ldif~]# vim config_init.ldifdn: dc=51cto,dc=comobjectClass: dcObjectobjectClass: organizationo: wanghuidc: neuvision~]# ldapadd -x -D "cn=admin,dc=51cto,dc=com" -W -f config_init.ldif ~]# ldapsearch -x -b 'dc=51cto,dc=com' '(objectClass=*)' #查询记录~]# ldapsearch -H ldapi:/// -Y EXTERNAL -b "cn=config" -LLL -Q #ladpi查询
OpenLDAP配置管理
客户端配置文件
系统文件: /etc/openldap/ldap.conf用户文件:$HOME/ldaprc $HOME/.ldaprc
配置文件参数
- BASE: 指定的DN
- URI: LDAP服务器地址
- SIZELIMIT: 限制返回条目大小
- TIMELIMIT:指定搜索持续时间
- TIMEOUT: 操作多久无返回就超时
ldapsearch -x -W -D 'cn=admin,dc=51cto,dc=com' -H ldaps://10.18.99.41 #连接ldap
server全局配置文件介绍
ldif配置语法
主配置文件布局如下:
dn: cn=configdn: cn=module,cn=configdn: cn=schema,cn=configdn: olcDatabase=config,cn=config
初始化域,用户&组
~ ]# /usr/share/migrationtools/migrate_base.pl > /etc/openldap/basedomain.ldif #生成domain(域)文件# 需要创建好一些用户和组,并且将用户添加到组,groupadd DEV,useradd wanghui -g DEV~]# tail -3 /etc/group > system_groupDEV:x:1003:OPS:x:1004:QA:x:1005:~]# tail -4 /etc/passwd > system_userzhangsan:x:1000:1004::/home/zhansan:/bin/bashlisi:x:1001:1003::/home/lisi:/bin/bashwangwu:x:1002:1003::/home/wangwu:/bin/bashmazi:x:1003:1005::/home/mazi:/bin/bash~]#ldapadd -x -W -D "cn=admin,dc=51cto,dc=com" -f base.ldif ~]# ldapadd -x -W -D "cn=admin,dc=51cto,dc=com" -f group.ldif # 添加组到ldap~]# ldapadd -x -W -D "cn=admin,dc=51cto,dc=com" -f user.ldif
openldap的日志配置
~]# mkdir /data/logs/slapd~]# touch /data/logs/slapd/slapd.log~]# chown ldap:ldap /data/logs/slapd/ -R----- 创建日志ldif~]# vim log.ldifdn: cn=configchangetype: modifyadd: olcLogLevelolcLogLevel: stats~]# ldapadd -Y EXTERNAL -H ldapi:/// -f log.ldif #加载配置~]# cat /etc/openldap/slapd.d/cn\=config.ldif #检查是否加载成功olcLogLevel: stats~]# vim /etc/rsyslog.conf #配置日志local7.* /var/log/boot.loglocal4.* /data/logs/slapd/slapd.log~ ]# systemctl restart rsyslog~]# systemctl restart slapd
日志切割
~]# vim /etc/logrotate.d/slapd/data/logs/slapd/slapd.log { daily rotate 5 copytruncate dateext missingok}~]# systemctl restart rsyslog~]# logrotate -f /etc/logrotate.d/slapd #测试日志切割~]# ldapsearch -x -LLL uid=wanghui #查询用户。然后看日志是否正常
openldap图形管理
- phpLDAPadmin: apache,php调用ldap,使用简单,功能支持不是特别好http://phpldapadmin.sourceforge.net/wiki/index.php/Main_Page
- LADP AccountManager: https://www.ldap-account-manager.org/static/doc/manual/index.html
- LADP Admin: windows,界面不友好
phpLDAPadmin的安装与配置
~]# yum -y install phpldapadmin ~]# vim /etc/httpd/conf.d/phpldapadmin.conf ServerName ldap.51cto.comAlias /phpldapadmin /usr/share/phpldapadmin/htdocsAlias /ldapadmin /usr/share/phpldapadmin/htdocs # Apache 2.4 Require all granted Require local # Apache 2.2 Order Deny,Allow Deny from all Allow from 127.0.0.1 Allow from ::1 ~]# vim /etc/phpldapadmin/config.php$servers->setValue('login','attr','dn');~ ]# systemctl start httpd && systemctl enable httpd
phpldapadmin使用
- 登陆使用(cn=admin,dc=51cto,dc=com)密码:xxx
- 登陆之后删除dc,然后手动创建dc
~]# cat config_init.ldif dn: dc=51cto,dc=comobjectClass: dcObjectobjectClass: organizationo: wanghuidc: neuvision~]# ldapadd -x -D 'cn=admin,dc=neuvision,dc=ai' -W -f config_init.ldif
- 创建Group和People两个OU
Generic: Organisational Unit
- 在Group中添加Posix Group
- 在People中创建UserAccount
密码类型是ssha选择对应的GID选择对应的loginshell----------返回终端查询下创建的用户~]# ldapsearch -x -LL -b '51cto,dc=com' '(uid=whui)'~]# ldapsearch -x -LL uid=whui
去除登出登陆的警告信息
~#] vim /etc/phpldapadmin/config.php
$config->custom->appearance['hide_template_warning'] = true;
~#]systemctl restart httpd
以上就是openldap安装与配置的详细内容了,看完之后是否有所收获呢?如果想了解更多相关内容,欢迎关注行业资讯!
配置
数据
目录
管理
文件
用户
查询
条目
日志
系统
信息
账号
属性
架构
控制
服务
生成
内容
功能
单元
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
远程服务器密码
北京工地机械设备管理软件开发
张雪峰软件开发30岁到顶峰
淘淘乐软件开发
大国网络安全博弈加强能力
网络安全行业协会技术交流会
五年服务器是指一定在本单位么
嘉定区网络技术服务
任天堂数据服务器
流量卡充值软件开发
华宇软件开发公司排名
睢宁口碑好的软件开发
excel地址数据库
服务器初始化脚本
天津网络安全宣传周闭幕
新程网络技术服务有限公司
网络安全设备告警邮件通知格式
搞软件开发很累
大一网络安全
北京智慧社区软件开发公司
内蒙古软件开发解决方案咨询
网络安全方式有哪些
福建锐思软件开发
数据库英文简答题
易安信服务器固件
软件开发公摊费用在哪列支
neo4j数据库更新表
小学网络安全海报作品
软件开发客服好做吗
前端线上服务器代理