前言

参考资料:

  http://yhz61010.iteye.com/blog/2352672

  https://www.cnblogs.com/lemon-le/p/6266921.html

实验环境centos6,如果用centos7,新版移除了slapd.conf配置文件,改为动态的config配置,菜鸟还是习惯slapd.conf文件方式,两者区别不是很大,如果用

slapd.conf配置,每次配置后需要重新生成配置,有点麻烦,而动态的config配置不需要重新生成.

安装

1.yum -y install openldap openldap-servers openldap-clients openldap-devel compat-openldap

2.看下目录结构

3.几个重要的配置文件

两个模版文件

/usr/share/openldap-servers/slapd.conf.obsolete 模版配置文件

/usr/share/openldap-servers/DB_CONFIG.example  模版数据库配置文件

主配置文件

/etc/openldap/slapd.conf:OpenLDAP的主配置文件,记录根域信息,管理员名称,密码,日志,权限等

/etc/openldap/slapd.d/*:这下面是/etc/openldap/slapd.conf配置信息生成的文件,每修改一次配置信息,这里的东西就要重新生成

模式文件

/etc/openldap/schema/*:OpenLDAP的schema存放的地方  //模式文件就是一个objectClass对象的模版,比如一个电话本模式文件,里面有很多属性。就是说用ldapadd添加一个条目,把条目理解为数据库的一个主键,一个主键里必须有一个objectClass并必须有一个属性值.

数据文件

/var/lib/ldap/*:OpenLDAP的数据文件

4.初始化配置文件

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf

5.修改主配置文件

vi /etc/openldap/slapd.conf

解释:

114行,指明用的什么数据库

115行,根节点.ldap默认采用dns的命名方式比如域名wan.com 就写出 dc=wan,dc=com

117行,生成个管理员帐号,记住这个帐号名是"cn=Manager,dc=wan,dc=com" 而不是 Manager

121行,密码,可以明文,可以加密.

      生成个密文

把红色密文粘贴到rootpw 后面

找到access to 部门对着修改下:

6.配置文件修改后,重新生成配置文件

顺序:

1.删除原有的生成的配置文件

rm -rf /etc/openldap/slapd.d/*

2.重新生成

slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/

3.授权

chown -R ldap.ldap /etc/openldap/slapd.d/

4.重启

/etc/init.d/slapd restart

7.查看下修改后的配置信息

cat /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif

增删改查

1.查:

ldap默认匿名用户是打开的,所以可以直接执行:

ldapsearch -x -b "dc=wan,dc=com"

搜索结果两条

关掉匿名用户查看方法:

ldapsearch -x  -D "cn=manager,dc=wan,dc=com"  -W  -b "dc=wan,dc=com"

解释:-x 表示用普通方式访问 -D 管理员帐号 -W 提示输入密码 -b 搜索字段

2.添加:

vi people.ldif

dn: ou=people,dc=wan,dc=com

objectclass: top
objectclass: organizationalUnit
ou: people

这是一个组织单元,

ldapadd -x -D "cn=Manager,dc=wan,dc=com" -W -f people.ldif

 在这个单元下面,添加一个t3的成员

vi t3.ldif

dn: cn=t3,ou=people,dc=wan,dc=com

cn: t3

givenname: t3

mail: t1@wq.com
     objectclass: inetOrgPerson
     objectclass: top
     sn: t3
     uid: t3
    userpassword: 123456

ldapadd -x -D "cn=Manager,dc=wan,dc=com" -W -f t3.ldif

3.删除

ldapdelete -x  -D   "cn=Manager1,dc=wan,dc=com"  "cn=t3,ou=people,dc=wan,dc=com" -W

4.修改

vi t2_mod.ldif   

dn: cn=t1 t2,ou=people,dc=wan,dc=com
   changetype: modify
   replace: userpassword
   userpassword: 123456789

ldapmodify -x -D "cn=manager1,dc=wan,dc=com" -W -f t2_mod.ldif

暂时在这................

OpenLDAP 2.4 禁止匿名用户访问

直接在命令行下粘贴进去

ldapmodify -Q -Y EXTERNAL -H ldapi:/// <<EOF
dn: cn=config
changetype: modify
add: olcDisallows
olcDisallows: bind_anon
EOF
 
ldapmodify -Q -Y EXTERNAL -H ldapi:/// <<EOF
dn: olcDatabase={-1}frontend,cn=config
changetype: modify
add: olcRequires
olcRequires: authc
EOF

#cn=config配置方法

参考连接:http://blog.csdn.net/umke888/article/details/54380507

初始化安装后

cd /etc/openldap//cn\=config/

vi olcDatabase\=\{2\}

增加一行

olcRootPW: 123456 

修改域信息

olcSuffix: dc=ixmsoft,dc=com

olcRootDN: cn=Manager,dc=ixmsoft,dc=com

2.导入基本 Schema   参考连接:http://yhz61010.iteye.com/blog/2352672

  1. cd /etc/openldap/schema/
  2. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f cosine.ldif
  3. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f nis.ldif
  4. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f collective.ldif
  5. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f corba.ldif
  6. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f core.ldif
  7. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f duaconf.ldif
  8. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f dyngroup.ldif
  9. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f inetorgperson.ldif
  10. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f java.ldif
  11. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f misc.ldif
  12. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f openldap.ldif
  13. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f pmi.ldif
  14. ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f ppolicy.ldif

增加日志倒入

参考连接:https://www.cnblogs.com/donneyliu/p/Centos-Openldap-Server-Log-Anon-OlcAccess.html

ldap日志配置

创建个logging.ldif文件,添加下面的信息:

dn: cn=config

changetype: modify

replace: olcLogLevel

olcLogLevel: stats

倒入修改后的配置:
ldapmodify -Q -Y EXTERNAL -H ldapi:/// -f logging.ldif

centos(6-7)安装openldap的更多相关文章

  1. centos安装openldap过程

    1.下载软件如下,db是数据库 2.首先安装数据库db # tar xf db-4.8.30.tar.gz # cd db-4.8.30 # cd build_unix/ (# ../dist/con ...

  2. Centos6 yum安装openldap+phpldapadmin+TLS+双主配置

    原文地址:http://54im.com/openldap/centos-6-yum-install-openldap-phpldapadmin-tls-%E5%8F%8C%E4%B8%BB%E9%8 ...

  3. CentOS6.5安装openLdap

    一.关闭防火墙和selinux 关闭防火墙 chkconfig iptables off service iptables stop 关闭selinux vim /etc/selinux/config ...

  4. CentOS7安装OpenLDAP+MySQL+PHPLDAPadmin

    安装环境:CentOS 7 1.安装和设置数据库 在CentOS7下,默认安装的数据库为MariaDB,属于MySQL数据库的一个分支,所以我还是使用了MariaDB.安装命令为: [root@loc ...

  5. [转帖]CentOS下iRedMail安装配置

    CentOS下iRedMail安装配置 中文名为艾瑞得邮件,由 rhms 项目更名而来.是针对 Linux 设计的邮件服务器解决方案,是在操作系统安装好后使用的一套 shell 脚本,用于快速部署一套 ...

  6. CentOS 6.4安装配置ldap

    CentOS 6.5安装配置ldap 时间:2015-07-14 00:54来源:blog.51cto.com 作者:"ly36843运维" 博客 举报 点击:274次 一.安装l ...

  7. Centos 7 集成安装Apache+PHP+Kerberos+LDAP+phpLDAPadmin

    一.安装Apache 1.1.安装Apache Apache程序是目前拥有很高市场占有率的Web服务程序之一,其跨平台和安全性广泛被认可且拥有快速.可靠.简单的API扩展. 它的名字取自美国印第安人土 ...

  8. Centos 7 下安装LDAP 双主同步

    Centos 7 下安装LDAP 双主同步 标签(空格分隔): LDAP 安装说明: 从OpenLDAP2.4.23版本开始所有配置数据都保存在slapd.d目录下的cn=config文件夹中,不再使 ...

  9. MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记

    MonoDevelop 4.2.2/Mono 3.4.0 in CentOS 6.5 安装笔记 说明 以root账户登录Linux操作系统,注意:本文中的所有命令行前面的 #> 表示命令行提示符 ...

  10. Centos、Ubuntu 安装 Mono、Jexus

    Mono是.NET的跨平台实现 在众多关于语言的争论中,.NET一直被以不能跨平台而诟病,Mono改变了这一现状. 有人当心Mono会涉及版权啥的问题.高深的偶不懂,不过我觉得Unity3D都能用,为 ...

随机推荐

  1. python的可视化展示(待更新)

    参考:https://www.cnblogs.com/zhizhan/p/5615947.html 通过matplotlib进行绘图: 例1: import matplotlib.pyplot as ...

  2. Dubbo学习-5-监控中心simpleMonitor搭建

    之前已经下载好的dubbo-admin-master源码中,有dubbo-monitor-simple工程,同理,使用maven命令打包成一个可执行的jar包: 1.进入dubbo-monitor-s ...

  3. php单点登录实现原理实例详解

    单点登录SSO(Single Sign On)说得简单点就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任. 单点登录在大型网站里使用 ...

  4. C#[WinForm]实现自动更新

    C#[WinForm]实现自动更新 winform程序相对web程序而言,功能更强大,编程更方便,但软件更新却相当麻烦,要到客户端一台一台地升级,面对这个实际问题,在最近的一个小项目中,本人设计了一个 ...

  5. MyBatis3学习笔记(曹锋老师版)

    第2讲 这一讲主要讲解了 Mybatis 的主配置文件. 下面是一个示例的配置文件: <?xml version="1.0" encoding="UTF-8&quo ...

  6. 后端技术杂谈7:OpenStack的基石KVM

    Qemu,KVM,Virsh傻傻的分不清 本文转载自Itweet的博客 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://gi ...

  7. EZOJ #393加倍的飞机

    分析 从大到小考虑每个点 记录一个连通块中选了选了几个 如果选的小于siz则直接选否则不选 代码 #include<bits/stdc++.h> using namespace std; ...

  8. 慎用create table as select,一定要注意默认值的问题

    再做一些数据迁移时候,很多人会使用create table  as select * from table where id=-1的方式来年建立一摸一样的表,但是这样做有个很大的弊端,不能将原表中的d ...

  9. openstack介绍及共享组件——消息队列rabbitmq

    一.云计算的前世今生 所有的新事物都不是突然冒出来的,都有前世和今生.云计算也是IT技术不断发展的产物. 要理解云计算,需要对IT系统架构的发展过程有所认识. 请看下 IT系统架构的发展到目前为止大致 ...

  10. Delphi 快速读取TXT 指定行的数据

    http://blog.csdn.net/MichaelJScofield/article/details/41869785 Delphi 快速读取TXT 指定行的数据 分类:Delphi个人挫品 ( ...