openldap的安装与配置
发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,今天小编给大家分享的是openldap安装与配置的详细介绍,相信大部分人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,话不多说,一起往下看吧。openldap的介绍与安装传统账户管理存在的
千家信息网最后更新 2024年11月11日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安全错误
数据库的锁怎样保障安全
多式联运软件开发
普陀区数据软件开发销售方法
河南红苹果网络技术服务怎么样
网络安全周工作计划
服务器运维管理软件有哪些
idea动态查询数据库数据
瑶海区租赁管理软件开发公司
vs2010 自带数据库
网络安全常用的保密措施包括
木筏求生需要服务器吗
网络安全攻防演练领导致辞
新华软件开发商
网络安全审查 征求意见
数据库添加判断语句
sqlite数据库 ef
数据库设计与控制课程
拨打电话链接不到服务器
网络安全记心间教案
java访问sql数据库
杨浦区网络技术咨询服务价格比较
湖北服务器机柜哪里便宜
关于维护信息网络安全
将数据库表显示在jsp页面
学软件开发有前途么
为什么数据库需要连接
路坦力数据库
审计局开展网络安全培训
破坏网络安全的拓扑图
网络技术问答题试题
c能做什么软件开发