精华内容
下载资源
问答
  • 生成LDIF格式文件4.1 安装migrationtools工具4.2 用migrationtools生成ldif文件4.3 添加ldif到ldap数据库5. 日志配置5.1 openldap的日志级别5.2 配置日志功能6. 客户端配置6.1 基础环境准备6.2 配置nslcd客户端7. ...

    1. 概述

    本篇博客主要记录如何部署一台LDAP服务器,用于在内网集群节点中,进行全局用户认证。

    注:有关LDAP的理论部分,参见博客《LDAP协议详解.md》

    本篇博客主要的部署环境为:CentOS6.5_x86_64部署openldap,通过YUM安装相关环境。

    2. 服务端部署过程

    2.1 软件包说明

    软件包软件包说明
    openldap服务端和客户端必须用的库文件
    openldap-clients在LDAP服务端使用,用户增删改查的命令行环境
    openldap-servers用于启动服务和配置,包括单独的LDAP后台守护进程
    openldap-servers-sql支持SQL模块
    compat-openldapopenldap兼容性库环境

    2.2 部署过程

    虚拟机console,通过执行命令:rpm -qa | grep openldap,查看是否已经安装openldap的软件包:

    openldap-clients-2.4.23-32.el6_4.1.x86_64
    openldap-2.4.23-32.el6_4.1.x86_64
    openldap-servers-2.4.23-32.el6_4.1.x86_64

    若没有上述软件包,执行命令:yum -y install openldap openldap-clients openldap-servers
    此过程会同时安装依赖软件包:libtool-ltdl,portserver软件包

    2.3 配置过程

    1. 复制配置文件模板,到系统配置目录下
      cp -a /usr/share/openldap-servers/sldap.conf.obsolete /etc/openldap/slapd.conf
    2. 删除旧的动态配置文件
      rm -rf /etc/openldap/sladp.d/*
    3. 复制数据库配置文件模板,到系统配置目录下
      cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
    4. 修改数据库配置文件所在目录属主
      chown -R ldap.ldap /var/lib/ldap
    5. 生成加密密钥
      虚拟机console执行命令:slappasswd
      提示New password:输入liwanliang
      提示Re-enter new password,输入liwanliang
      将生成的内容:{SSHA}SdorCU0SF/bBERBdPtkSVdWv94Hc826r,复制保存下来
    6. 修改主配置文件,修改内容如下:
      有关openldap的配置详解,参见博客《LDAP-openldap配置文件详解.md》

      database config
      access to *
          by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage
          by * none
      database monitor
      access to *
      by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read
          by dn.exact="cn=Manager,dc=liwanliang,dc=com" read
          by * none
      database bdb
      suffix "dc=liwanliang,dc=com"
      checkpoint 1024 15
      rootdn "cn=Manager,dc=liwanliang,dc=com"
      rootpw {SSHA}SdorCU0SF/bBERBdPtkSVdWv94Hc826r
    7. 修改相关目录属性
      虚拟机console执行命令:chown -R ldap.ldap /etc/openldapchown -R ldap.ldap /var/lib/ldap

    8. 删除旧的动态配置文件
      虚拟机console执行命令:rm -rf /etc/openldap/slapd.d/*
    9. 启动服务并设置开机启动
      虚拟机console执行命令:service slapd start && chkconfilg slpad on
      查看是否启动服务:service slapd statusnetstat -tupln|grep slapd
    10. 动态配置文件
      openldap的动态配置文件位于/etc/openldap/slapd.d/下,每次修改了主配置文件/etc/openldap/slapd.conf之后,都需要重新生成动态配置文件,即:
      删除动态配置文件:rm -rf /etc/openldap/slapd.d/*
      重新生成动态配置文件:slaptest -f /etc/openldap/slapd.conf -f /etc/openldap/slapd.d
      修改动态配置目录属性:chown -R ldap.ldap /etc/openldap/slapd.d/

    3. 测试

    上述过程已经部署好了openldap并启动了服务,这仅是第一步,openldap有没有工作,还需要进一步验证和测试。
    虚拟机console执行命令:ldapsearch -x -LLL;如果这个命令报错:【No suce object(32)】,则需要修改配置文件/etc/openldap/ldap.conf
    修改内容如下:

    BASE dc=liwanliang,dc=com
    URI ldap://192.168.80.8
    TLS_CACERTDIR /etc/openldap/certs

    上过过程说明已经基本完成了openldap的部署和测试,可以投入使用

    4. 生成LDIF格式文件

    往openldap数据库存放数据,有多种方式:1. 手动编辑;2. 用工具生成
    手动编辑这里不介绍。工具生成指的是用migrationtools脚本来产生ldif文件

    4.1 安装migrationtools工具

    虚拟机console执行命令:rpm -qa | grep migrationtools,查看系统是否已经安装migrationtools
    若没有安装,执行命令:yum -y installl migrationtools,进行工具安装
    安装完成之后,进入目录/usr/share/migrationtools,修改文件migrate_common.ph,将以下两行修改为:
    597042-20181120205118209-1088119954.png

    4.2 用migrationtools生成ldif文件

    这里是希望用openldap来实现用户认证,因此需要把系统中存在的user和group产生ldif,添加到ldap的数据库中。
    虚拟机console执行命令:
    /usr/share/migrationtools /migrate_base.pl > base.ldif
    /usr/share/migrationtools/migrate_passwd.pl /etc/passwd > passwd.ldif
    /usr/share/migrationtools/migrate_group.pl /etc/group > group.ldif

    4.3 添加ldif到ldap数据库

    上面过程,已经将用户认证时需要的文件/etc/passwd和/etc/group生成ldif文件。
    改用ldap验证时,就需要将这几个文件添加到ldap数据库中。
    虚拟机console执行命令:
    ldapadd -x -D "cn=Manager,dc=liwanliang,dc=com' -c -W -f base.ldif
    ldapadd -x -D "cn=Manager,dc=liwanliang,dc=com" -c -W -f passwd.ldif
    ldapadd -x -D "cn=Manager,dc=liwanliang,dc=com" -c -W -f group.ldif
    提示输入密码时,输入liwanliang,回车

    5. 日志配置

    5.1 openldap的日志级别

    虚拟机console执行命令:slapd -d ?,能够看到以下内容:
    597042-20181120205118699-770648963.png
    各参数说明如下:

    Any开启所有的函数调用
    Trace跟踪Trace函数调用
    Rackets与函数包处理相关的信息
    Args全面的debug信息
    Conns链接数管理的相关信息
    BER记录包发送和接收的信息
    Filter记录过滤处理的过程
    Config记录配置文件的相关信息
    ACL记录访问控制列表的相关信息
    Stats记录链接,操作系统以及统计信息
    Stats2记录向客户端响应的统计信息
    Shell记录与shell后端通信信息
    Parse记录条目的分析结果信息
    Sync记录数据同步资源消耗信息
    None不记录信息

    5.2 配置日志功能

    1. 修改主配置文件/etc/openldap/slapd.conf,最后一行添加:loglever -1
    2. 虚拟机console执行命令:mkdir -p /var/log/slapd && chown -R ldap.ldap /var/log/sladp
    3. 修改系统日志配置文件,使其重定向日志到ldap日志目录,vim /etc/rsyslog.conf,最后一行添加以下内容:
      local4. * /var/log/slapd/slapd.log
    4. 利用Logrotate自动切割日志
      进入目录/etc/logrotate.d,创建文件ldap,添加以下内容:

      /var/log/slapd/slapd.log {
          prerotate
             /usr/bin/chattr    -a    /var/log/slapd/slapd.log
          endscript
          compress
          delaycompress
          notifempty
          rotate    100
          size    10M
          postroatte
              /usr/bin/chattr    +a    /var/log/slapd/slapd.log
          endsript
      }
    5. 重启日志服务并观察
      虚拟机console执行命令:service rsyslogd restart
      观察日志文件是否更新:tail -f /var/log/slapd/slapd.log

    6. 客户端配置

    这里的客户端端不是指ldap命令行客户端,而是需要通过LDAP服务器验证的客户端节点。
    本篇博客已经部署了KVM虚拟机node11,在node11上配置采用用户采用LDAP验证。

    6.1 基础环境准备

    关闭sssd进程,并安装nslcd进程

    注:有关NSS,NSCD,NSLCD,SSSD服务的区别,参见包括《》

    虚拟机console执行命令:rpm -qa | grep nss-pam-ldapd,查看系统是否已经安装客户端
    若未安装,执行命令:yum -y install nss-pam-ldapd进行安装

    6.2 配置nslcd客户端

    1. 修改nslcd.conf配置文件,vim /etc/nslcd.conf,文末添加内容如下:

      uri ldap://192.168.80.8/
      base dc=liwanliang,dc=com
      ssl no
      tls_cacertdir /etc/openldap/certs
    2. 修改pam_ldap.conf配置文件,vim /etc/pam_ldap.conf,文末添加内容如下:

      uri ldap://192.168.80.8
      ssl no
      tls_cacertdir /etc/openldap/certs
      bind_policy soft
    3. 修改系统认证的PAM配置,vim /etc/pam.d/system-auth,修改内容如下:597042-20181120205119060-1210604148.png

    4. 修改名字服务NSS配置文件,vim /etc/nssiwch.conf,修改部分如下:

      passwd:      files     ldap
      shadow:     files     ldap
      group:      files     ldap
    5. 修改系统认证方式配置文件,vim /etc/sysconfig/authconfig,修改部分内容如下:

      USESHADOW=yes    //启用密码验证
      USELDAPAUTH=yes    //启用openldap验证
      USELOCAUTHORIZE=yes    //启用本地验证
      USELDAP=yes        //启用LDAP认证协议
    6. 启动nslcd服务进程
      虚拟机console执行命令:service iptables stop && setenforce 0,即关闭防火墙和selinux
      启动服务,并设置开机启动:service nslcd start && chkconfig nslcd on
    7. 客户端验证
      在虚拟机node11上,执行命令:id liwl01,如果获取到liwl01的用户信息,则说明配置成功

    7. 添加系统用户

    在今后的实践过程中,会存在添加系统进程用户的需求,比如部署Nagios时,需要添加nagios和nagioscmd用户;
    部署slurm任务调度系统时,需要添加munge和slurmadmim用户等。
    这里就需要利用migrationtools来实现往LDAP服务器中添加用户,然后实现全局认证即可。具体过程如下:

    7.1 添加用户

    这里添加用户liwl02
    在虚拟机console中执行命令:useradd -u 501 liwl02
    给liwl02添加密码:passwd liwl02,输入密码两次完成密码添加

    7.2 产生ldif文件

    因为已经生成了base.ldif文件,此次添加用户,不再需要生成base.ldif文件
    虚拟机console执行命令:
    migrate_passwd.pl /etc/passwd > passwd.ldif,该命令创建passwd.ldif
    migrate_group.pl /etc/group > group.ldif,该命令创建group.ldif
    编辑passwd.ldif,只保留以下部分内容,其余删除:

    dn: uid=liwl02,ou=People,dc=liwanliang,dc=com
    uid: liwl02
    cn: liwl02
    objectClass: account
    objectClass: posixAccount
    objectClass: top
    objectClass: shadowAccount
    userPassword: {crypt}$6$VKwyR9xY$GmXIUT9zJqE5/foaPKwgoDPfXS8XnkG1WcqjHoNBmLcMUvbyrOV6BVLXEmc6K140BM9r4fHAL33ZxSzWiZ8c//
    shadowLastChange: 17699
    shadowMin: 0
    shadowMax: 99999
    shadowWarning: 7
    loginShell: /bin/bash
    uidNumber: 501
    gidNumber: 501

    编辑group.ldif,只保留以下部分,其余删除:

    dn: cn=liwl02,ou=Group,dc=liwanliang,dc=com
    objectClass: posixGroup
    objectClass: top
    cn: liwl02
    userPassword: {crypt}x
    gidNumber: 501

    7.3 添加ldif文件至LDAP数据库中

    虚拟机console执行命令, 添加两个文件中新加的内容:
    ldapadd -x -D "cn=Manager,dc=liwanliang,dc=com" -c -W -f passwd.ldif
    ldapadd -x -D "cn=Manager,dc=liwanliang,dc=com" -c -W -f group.ldif
    输入密码liwanliang即可添加进入

    7.4 验证

    在虚拟机node11上,通过执行命令id liwl02验证是否添加成功

    转载于:https://www.cnblogs.com/liwanliangblog/p/9991499.html

    展开全文
  • 粘一个早年学习ldap学习笔记,[@more@]粘一个早年学习ldap的自己整理的一些东西. 1)这时候启动libexec/slapd进程,的相关日志输出:2)向ldap中添加相关数据,文件格式、命令和相应的日志输出:3)再杀掉...

    粘一个早年学习ldap学习笔记,

    [@more@]粘一个早年学习ldap的自己整理的一些东西.

    1)这时候启动libexec/slapd进程,的相关日志输出:

    2)向ldap中添加相关数据,文件格式、命令和相应的日志输出:

    3)再杀掉slapd进程时候的日志输出:

    4)启动slapd的时候使用-h指定绑定参数

    5)ldapsearch的查询过程和及相关的日志输出

    6)通过/home/openldap/var/slapd.args文件内容得知启动slapd进程时所带的参数。

    7)使用sbin/slapdpasswd生成SSHA密码。

    8)把LDBM数据库转换成LDIF格式

    9)使用ldapmodify对数据加进行修改

    10client限制从ldap server查询的entry数目

    11)ldapsearch查询匹配uid值及相应日志

    12)通过ldif文件,删除,添加,修改,替换相应属性值

    13)通过slapadd进行大量entry的添加

    下面做的试验是基于as2.1openldap-2.0.10版本来做的,安装

    ./configure --prefix=/home/openldap --with-ldbm-api=gdbm

    ./make

    ./make intall

    我测试机的sldap.conf需要添加如下:

    include /usr/local/openldap/etc/openldap/schema/core.schema

    include /usr/local/openldap/etc/openldap/schema/cosine.schema

    include /usr/local/openldap/etc/openldap/schema/inetorgperson.schema

    loglevel 256

    database

    ldbm

    suffix "dc=myhome,dc=com"

    rootdn "cn=root,dc=myhome,dc=com"

    rootpw secret

    directory /home/openlda-2.0.10/var/myhome

    lastmod on

    上为slapd.conf文件的配置

    还需要为openldap建立myhome目录,以便可以保证相关的文件。并且设置这个目录的属性为700

    #mkdir /home/openld-2.0.10/var/myhome

    #chmod 700 /home/openld-2.0.10/var/myhome

    还需要为openldap设置日志级别,这个需要设置系统的/etc/syslog.conf文件,添加内容如下:

    local4.* /var/log/ldap.log

    保存退出。

    #touch /var/log/ldap.log

    #/etc/init.d/syslog restart 重启syslog服务

    1)这时候启动libexec/slapd进程,的相关日志输出:

    #libexec/slapd

    # ps -ef | grep slapd

    root 20907 1 0 10:05 ? 00:00:00 libexec/slapd

    root 20908 20907 0 10:05 ? 00:00:00 libexec/slapd

    root 20909 20908 0 10:05 ? 00:00:00 libexec/slapd

    root 20911 20908 0 10:05 ? 00:00:00 libexec/slapd

    root 20912 20908 0 10:05 ? 00:00:00 libexec/slapd

    root 20924 20749 0 10:14 pts/1 00:00:00 grep slapd

    确认进程已经启来,下面为slapd进程再启动的时候输出到ldap.log中的相应日志信息:

    Feb 18 10:05:05 oradb slapd[20905]: daemon: socket() failed errno=97 (Address family not supported by protocol)

    Feb 18 10:05:05 oradb slapd[20907]: slapd starting

    2)ldap中添加相关数据,文件格式、命令和相应的日志输出:

    #more ff.ldif

    dn: dc=myhome,dc=com

    objectClass: dcObject

    objectClass: organization

    o: myhome

    dc: myhome

    description: this is myhome domain

    dn: uid=bbb,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: bbb

    sn: bbb

    cn: bbb

    telephoneNumber: 111-111-111

    mail: bbb@myhome.com

    dn: uid=ccc,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ccc

    sn: ccc

    cn: ccc

    telephoneNumber: 222-111-111

    mail: ccc@myhome.com

    下面为向ldap数据库中添加相关内容:

    #bin/ldapadd -f ff.ldif -W -x -D 'cn=root,dc=myhome,dc=com'

    Enter LDAP Password:

    adding new entry "dc=myhome,dc=com"

    adding new entry "uid=bbb,dc=myhome,dc=com"

    adding new entry "uid=ccc,dc=myhome,dc=com"

    下面为在添加相关数据的ldap.log的输出内容:

    Feb 18 10:05:58 oradb slapd[20909]: daemon: conn=0 fd=9 connection from IP=127.0.0.1:32770 (IP=0.0.0.0:34049) accepted.

    Feb 18 10:05:58 oradb slapd[20911]: conn=0 op=0 BIND dn="CN=ROOT,DC=MYHOME,DC=COM" method=128

    Feb 18 10:05:58 oradb slapd[20911]: conn=0 op=0 RESULT tag=97 err=0 text=

    Feb 18 10:05:58 oradb slapd[20912]: conn=0 op=1 ADD dn="DC=MYHOME,DC=COM"

    Feb 18 10:05:58 oradb slapd[20911]: conn=0 op=2 ADD dn="UID=BBB,DC=MYHOME,DC=COM"

    Feb 18 10:05:58 oradb slapd[20912]: conn=0 op=1 RESULT tag=105 err=0 text=

    Feb 18 10:05:58 oradb slapd[20912]: conn=0 op=3 ADD dn="UID=CCC,DC=MYHOME,DC=COM"

    Feb 18 10:05:58 oradb slapd[20911]: conn=0 op=2 RESULT tag=105 err=0 text=

    Feb 18 10:05:59 oradb slapd[20911]: conn=0 op=4 UNBIND

    Feb 18 10:05:59 oradb slapd[20912]: conn=0 op=3 RESULT tag=105 err=0 text=

    Feb 18 10:05:59 oradb slapd[20912]: conn=-1 fd=9 closed

    3)再杀掉slapd进程时候的日志输出:

    #killall slapd

    相关的ldap.log日志输出如下:

    Feb 18 10:20:09 oradb slapd[20909]: slapd shutdown: waiting for 0 threads to terminate

    Feb 18 10:20:09 oradb slapd[20907]: slapd stopped.

    4)启动slapd的时候使用-h指定绑定参数

    #libexec/slapd -h ldap://127.0.0.1:9009/

    # netstat -anp | grep 9009

    tcp 0 0 127.0.0.1:9009 0.0.0.0:* LISTEN 20980/slapd

    # lsof -i:9009

    COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

    slapd 20980 root 6u IPv4 40630 TCP localhost.localdomain:9009 (LISTEN)

    slapd 20981 root 6u IPv4 40630 TCP localhost.localdomain:9009 (LISTEN)

    slapd 20982 root 6u IPv4 40630 TCP localhost.localdomain:9009 (LISTEN)

    相关的ldap.log日志输出如下:

    Feb 18 10:22:50 oradb slapd[20980]: slapd starting

    5)在slapd使用-h绑定参数后,再使用ldapadd添加相应的数据.

    # bin/ldapadd -f ff.ldif -W -x -D 'cn=root,dc=myhome,dc=com' -h ldap://127.0.0.1:9009

    Enter LDAP Password:

    ldap_bind: Can't contact LDAP server

    开始的时候使用-h指定ldap绑定的URL进行添加,提示无法连接LDAP服务器。

    # ps -ef | grep slapd

    root 20980 1 0 10:22 ? 00:00:00 libexec/slapd -h ldap://127.0.0.

    root 20981 20980 0 10:22 ? 00:00:00 libexec/slapd -h ldap://127.0.0.

    root 20982 20981 0 10:22 ? 00:00:00 libexec/slapd -h ldap://127.0.0.

    root 20997 20749 0 10:27 pts/1 00:00:00 grep slapd

    # bin/ldapadd -f ff.ldif -W -x -D 'cn=root,dc=myhome,dc=com' -H ldap://127.0.0.1:9009

    Enter LDAP Password:

    adding new entry "dc=myhome,dc=com"

    ldap_add: Already exists

    ldif_record() = 68

    相关的ldap.log日志输出如下,因为提示Alread exists所以这次添加是不成功:

    Feb 18 10:28:08 oradb slapd[20982]: daemon: conn=0 fd=9 connection from IP=127.0.0.1:32772 (IP=127.0.0.1:12579) accepted.

    Feb 18 10:28:08 oradb slapd[20999]: conn=0 op=0 BIND dn="CN=ROOT,DC=MYHOME,DC=COM" method=128

    Feb 18 10:28:08 oradb slapd[20999]: conn=0 op=0 RESULT tag=97 err=0 text=

    Feb 18 10:28:08 oradb slapd[21000]: conn=0 op=1 ADD dn="DC=MYHOME,DC=COM"

    Feb 18 10:28:08 oradb slapd[21000]: conn=0 op=1 RESULT tag=105 err=68 text=

    Feb 18 10:28:08 oradb slapd[20999]: conn=0 op=2 UNBIND

    Feb 18 10:28:08 oradb slapd[20999]: conn=-1 fd=9 closed

    ff.ldif文件如下所示:

    dn: uid=aaa,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: aaa

    sn: aaa

    cn: aaa

    telephoneNumber: 111-111-111

    mail: aaa@myhome.com

    dn: uid=ddd,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ddd

    sn: ddd

    cn: ddd

    telephoneNumber: 222-111-111

    mail: ddd@myhome.com

    # bin/ldapadd -f ff.ldif -W -x -D 'cn=root,dc=myhome,dc=com' -H ldap://127.0.0.1:9009

    Enter LDAP Password:

    adding new entry "uid=aaa,dc=myhome,dc=com"

    adding new entry "uid=ddd,dc=myhome,dc=com"

    提示已经添加成功,下面为相关的添加成功的日志记录。

    Feb 18 10:28:28 oradb slapd[20982]: daemon: conn=1 fd=9 connection from IP=127.0.0.1:32773 (IP=127.0.0.1:12579) accepted.

    Feb 18 10:28:28 oradb slapd[21000]: conn=1 op=0 BIND dn="CN=ROOT,DC=MYHOME,DC=COM" method=128

    Feb 18 10:28:28 oradb slapd[21000]: conn=1 op=0 RESULT tag=97 err=0 text=

    Feb 18 10:28:28 oradb slapd[20999]: conn=1 op=1 ADD dn="UID=AAA,DC=MYHOME,DC=COM"

    Feb 18 10:28:28 oradb slapd[20999]: conn=1 op=1 RESULT tag=105 err=0 text=

    Feb 18 10:28:28 oradb slapd[21000]: conn=1 op=2 ADD dn="UID=DDD,DC=MYHOME,DC=COM"

    Feb 18 10:28:28 oradb slapd[20999]: conn=1 op=3 UNBIND

    Feb 18 10:28:28 oradb slapd[21000]: conn=1 op=2 RESULT tag=105 err=0 text=

    Feb 18 10:28:28 oradb slapd[21000]: conn=-1 fd=9 closed

    上面的-h-H两个参数的解释如下:

    -h host LDAP server

    -H URI LDAP Uniform Resource Indentifier(s)

    5)ldapsearch的查询过程和及相关的日志输出

    #bin/ldapsearch -LLL -b 'dc=myhome,dc=com' -W -x

    Enter LDAP Password:

    dn: dc=myhome,dc=com

    objectClass: dcObject

    objectClass: organization

    o: myhome

    dc: myhome

    description: this is myhome domain

    dn: uid=bbb,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: bbb

    sn: bbb

    cn: bbb

    telephoneNumber: 111-111-111

    mail: bbb@myhome.com

    dn: uid=ccc,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ccc

    sn: ccc

    cn: ccc

    telephoneNumber: 222-111-111

    mail: ccc@myhome.com

    dn: uid=aaa,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: aaa

    sn: aaa

    cn: aaa

    telephoneNumber: 111-111-111

    mail: aaa@myhome.com

    dn: uid=ddd,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ddd

    sn: ddd

    cn: ddd

    telephoneNumber: 222-111-111

    mail: ddd@myhome.com

    相关的日志输出如下:

    Feb 18 10:48:39 oradb slapd[21021]: daemon: conn=0 fd=9 connection from IP=127.0.0.1:32774 (IP=0.0.0.0:34049) accepted.

    Feb 18 10:48:39 oradb slapd[21034]: conn=0 op=0 BIND dn="" method=128

    Feb 18 10:48:39 oradb slapd[21034]: conn=0 op=0 RESULT tag=97 err=0 text=

    Feb 18 10:48:39 oradb slapd[21035]: conn=0 op=1 SRCH base="dc=myhome,dc=com" scope=2 filter="(objectClass=*)"

    Feb 18 10:48:39 oradb slapd[21035]: conn=0 op=1 SEARCH RESULT tag=101 err=0 text=

    Feb 18 10:48:39 oradb slapd[21034]: conn=0 op=2 UNBIND

    Feb 18 10:48:39 oradb slapd[21034]: conn=-1 fd=9 closed

    上面是查询dc=myhome,dc=com下面的所有项

    下面为只查询一个单项的所有内容。

    #bin/ldapsearch -LLL -b 'uid=ccc,dc=myhome,dc=com' -W -x

    Enter LDAP Password:

    dn: uid=ccc,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ccc

    sn: ccc

    cn: ccc

    telephoneNumber: 222-111-111

    mail: ccc@myhome.com

    下面为相关查询日志的输出:

    Feb 18 10:51:33 oradb slapd[21021]: daemon: conn=2 fd=9 connection from IP=127.0.0.1:32776 (IP=0.0.0.0:34049) accepted.

    Feb 18 10:51:33 oradb slapd[21034]: conn=2 op=0 BIND dn="" method=128

    Feb 18 10:51:33 oradb slapd[21034]: conn=2 op=0 RESULT tag=97 err=0 text=

    Feb 18 10:51:33 oradb slapd[21035]: conn=2 op=1 SRCH base="uid=ccc,dc=myhome,dc=com" scope=2 filter="(objectClass=*)"

    Feb 18 10:51:33 oradb slapd[21035]: conn=2 op=1 SEARCH RESULT tag=101 err=0 text=

    Feb 18 10:51:33 oradb slapd[21034]: conn=2 op=2 UNBIND

    Feb 18 10:51:33 oradb slapd[21034]: conn=-1 fd=9 closed

    # bin/ldapsearch -LLL -b 'uid=ccc,dc=myhome,dc=com' -W -x -A

    Enter LDAP Password:

    dn: uid=ccc,dc=myhome,dc=com

    objectClass:

    uid:

    sn:

    cn:

    telephoneNumber:

    mail:

    -A选项参数查找所有项,返回属性值,但不返回他们的值。这个命令的输出日志与上面的输出类似,没有特别的地方。

    6)通过/home/openldap/var/slapd.args文件内容得知启动slapd进程时所带的参数。

    # ../libexec/slapd -h ldap://127.0.0.1:9009/

    # ls -l

    total 20

    drwx------ 2 root root 4096 Feb 18 10:05 myhome

    drwx------ 2 root root 4096 Feb 18 09:36 openldap-ldbm

    drwx------ 2 root root 4096 Feb 18 09:36 openldap-slurp

    -rw-r--r-- 1 root root 44 Feb 19 11:07 slapd.args

    -rw-r--r-- 1 root root 4 Feb 19 11:07 slapd.pid

    # more slapd.args

    ../libexec/slapd -h ldap://127.0.0.1:9009/

    # pwd

    /home/openlda-2.0.10/var

    #

    Slapd.pid文件记录的是当前slapd运行的pid值。

    7)使用sbin/slapdpasswd生成SSHA密码。

    使用slapdpasswd命令生成加密密码,添加到slapd.conf文件当中

    # sbin/slappasswd

    New password:

    Re-enter new password:

    {SSHA}xngCMl1VTdywMSGlERVBg1wulbsyLE8I

    # vi etc/openldap/slapd.conf

    database

    ldbm

    suffix "dc=myhome,dc=com"

    rootdn "cn=root,dc=myhome,dc=com"

    #rootpw secret

    rootpw {SSHA}xngCMl1VTdywMSGlERVBg1wulbsyLE8I

    directory /home/openlda-2.0.10/var/myhome

    lastmod on

    # libexec/slapd 启动slapd进程,添加相应的ldif文件

    # bin/ldapadd -W -x -D 'cn=root,dc=myhome,dc=com' -f ff.ldif

    Enter LDAP Password:

    adding new entry "uid=a1,dc=myhome,dc=com"

    adding new entry "uid=a2,dc=myhome,dc=com"

    #

    8)把LDBM数据库转换成LDIF格式

    sbin/slapcat -n /home/openldap-2.0.10/var/myhome/id2entry.dbb > oo.ldif

    详细的slapcat请看man手册

    9)使用ldapmodify对数据加进行修改

    下面是已经添加好的数据,通过ldapsearch进行相关的查询输出

    # bin/ldapsearch -LLL -b 'dc=gogo,dc=com' -W -x

    Enter LDAP Password:

    dn: dc=gogo,dc=com

    objectClass: dcObject

    objectClass: organization

    o: gogo

    dc: gogo

    telephoneNumber: 110-110

    postalCode: 0451

    description: this is gogo domain

    dn: cn=aaa,dc=gogo,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    sn: aaa

    cn: aaa

    telephoneNumber: 111-111-111

    mail: aaa@gogo.com

    dn: cn=bbb,dc=gogo,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    sn: bbb

    cn: bbb

    telephoneNumber: 222-111-111

    mail: bbb@gogo.com

    下面的ldif是准备要修改的文件内容

    # more mod.ldif

    dn: cn=bbb,dc=gogo,dc=com

    changetype: modify

    add: homePhone

    homePhone: 112-233

    #bin/ldapmodify -D 'cn=root,dc=gogo,dc=com' -f ./mod.ldif -W -x

    Enter LDAP Password:

    modifying entry "cn=bbb,dc=gogo,dc=com"

    通过ldapsearch查询,下面标红色的是已经添加修改生效的部分:

    # bin/ldapsearch -LLL -b 'dc=gogo,dc=com' -W -x

    Enter LDAP Password:

    dn: dc=gogo,dc=com

    objectClass: dcObject

    objectClass: organization

    o: gogo

    dc: gogo

    telephoneNumber: 110-110

    postalCode: 0451

    description: this is gogo domain

    dn: cn=aaa,dc=gogo,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    sn: aaa

    cn: aaa

    telephoneNumber: 111-111-111

    mail: aaa@gogo.com

    dn: cn=bbb,dc=gogo,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    sn: bbb

    cn: bbb

    telephoneNumber: 222-111-111

    mail: bbb@gogo.com

    homePhone: 112-233

    ldapmodify修改相应记录的日志为:

    Feb 19 07:04:34 vm-252 slapd[1840]: daemon: conn=14 fd=9 connection from IP=127.0.0.1:1083 (IP=0.0.0.0:34049) accepted.

    Feb 19 07:04:34 vm-252 slapd[1849]: conn=14 op=0 BIND dn="CN=ROOT,DC=GOGO,DC=COM" method=128

    Feb 19 07:04:34 vm-252 slapd[1849]: conn=14 op=0 RESULT tag=97 err=0 text=

    Feb 19 07:04:34 vm-252 slapd[1844]: conn=14 op=1 MOD dn="cn=bbb,dc=gogo,dc=com"

    Feb 19 07:04:34 vm-252 slapd[1844]: conn=14 op=1 RESULT tag=103 err=0 text=

    Feb 19 07:04:34 vm-252 slapd[1848]: conn=14 op=2 UNBIND

    Feb 19 07:04:34 vm-252 slapd[1848]: conn=-1 fd=9 closed

    ===============================================================

    10client限制从ldap server查询的entry数目

    [root@oradb openlda-2.0.10]# bin/ldapsearch -b 'dc=myhome,dc=com' -W -x -LLL

    Enter LDAP Password:

    dn: dc=myhome,dc=com

    objectClass: dcObject

    objectClass: organization

    o: myhome

    dc: myhome

    description: this is myhome domain

    dn: uid=bbb,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: bbb

    sn: bbb

    cn: bbb

    telephoneNumber: 111-111-111

    mail: bbb@myhome.com

    dn: uid=ccc,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ccc

    sn: ccc

    cn: ccc

    telephoneNumber: 222-111-111

    mail: ccc@myhome.com

    dn: uid=aaa,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: aaa

    sn: aaa

    cn: aaa

    telephoneNumber: 111-111-111

    mail: aaa@myhome.com

    dn: uid=ddd,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ddd

    sn: ddd

    cn: ddd

    telephoneNumber: 222-111-111

    mail: ddd@myhome.com

    dn: uid=ppp,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ppp

    sn: ppp

    cn: ppp

    telephoneNumber: 111-111-111

    mail: ppp@myhome.com

    dn: uid=ttt,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ttt

    sn: ttt

    cn: ttt

    telephoneNumber: 222-111-111

    mail: ttt@myhome.com

    dn: uid=a1,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: a1

    sn: a1

    cn: a1

    telephoneNumber: 111-111-111

    mail: a1@myhome.com

    dn: uid=a2,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: a2

    sn: a2

    cn: a2

    telephoneNumber: 222-111-111

    mail: a2@myhome.com

    正常查询结果如上所示,下面使用-z 参数限制返回的匹配数目。

    [root@oradb openlda-2.0.10]# bin/ldapsearch -b 'dc=myhome,dc=com' -W -x -LLL -z 3

    Enter LDAP Password:

    dn: dc=myhome,dc=com

    objectClass: dcObject

    objectClass: organization

    o: myhome

    dc: myhome

    description: this is myhome domain

    dn: uid=bbb,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: bbb

    sn: bbb

    cn: bbb

    telephoneNumber: 111-111-111

    mail: bbb@myhome.com

    dn: uid=ccc,dc=myhome,dc=com

    objectClass: Person

    objectClass: inetOrgPerson

    uid: ccc

    sn: ccc

    cn: ccc

    telephoneNumber: 222-111-111

    mail: ccc@myhome.com

    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/1806527/viewspace-1006988/,如需转载,请注明出处,否则将追究法律责任。

    转载于:http://blog.itpub.net/1806527/viewspace-1006988/

    展开全文
  • 它能够生成详细的监视日志报告,并且日志格式和文件格式可以由管理员自定义,它具有高度的可配置性。内嵌日志分析器可以收集统计信息,显示某个主机或者某个时间段的图形化日志报表。 【转自VeryCD】
  • 它能够生成详细的监视日志报告,并且日志格式和文件格式可以由管理员自定义,它具有高度的可配置性。内嵌日志分析器可以收集统计信息,显示某个主机或者某个时间段的图形化日志报表。 软体版权归原作者及其公司...
  • 它能够生成详细的监视日志报告,并且日志格式和文件格式可以由管理员自定义,它具有高度的可配置性。内嵌日志分析器可以收集统计信息,显示某个主机或者某个时间段的图形化日志报表。  KS-Soft Advanced Host ...
  • 它能够生成详细的监视日志报告,并且日志格式和文件格式可以由管理员自定义,它具有高度的可配置性。内嵌日志分析器可以收集统计信息,显示某个主机或者某个时间段的图形化日志报表。 KS-Soft Advanced Host ...
  • 1、AD或LDAP域整合:支持企业内部AD或LDAP环境的帐号直接整合登录,可设置DC地址,并且可进行相应同步或自动检测添加用户进行登录。 2、文件版本管理:在线编辑的office文件或文本文件保存时或上传覆盖时均可自动...
  •  处理xml和yaml等格式的配置文件  使用dbi管理数据库,包括mysql、ms sql和oracle  处理ldap和active directory等目录服务  编写脚本管理电子邮件协议和垃圾邮件  高效地创建、处理和分析日志文件  管理网络...
  •  桃源企业文件管理系统 v3.3 更新日志:1、AD或LDAP域整合:支持企业内部AD或LDAP环境的帐号直接整合登录,可设置DC地址,并且可进行相应同步或自动检测添加用户进行登录。2、文件版本管理:在线编辑的office文件或...
  • xlight ftp服务器

    2012-11-06 09:09:47
    xferlog的支持 - 支持UNIX下FTP文件传输xferlog格式日志,能够直接被如AWStats之类的流量统计工具使用。 MODE Z 支持 - 支持数据传输的实时压缩。 反盗链保护功能 - FTP服务器能够提供反盗链保护功能。
  • 14.6XML日志格式2.1 78 14.7 Sample Attributes 80 14.8保存响应数据 81 14.9Loading (reading) response data 81 15. 远程测试 81 15.2 技巧 82 15.3 使用不同的端口 82 15.4 Using sample batching 83 16.最佳实践...
  • LDAP验证 支持图像,PDF,ODT,DOCX,PPTX文件 视频文件支持 灵活的搜索引擎,带有建议和突出显示 在所有受支持的文件中进行全文搜索 所有元数据 自定义用户定义的元数据 工作流程系统 存储文件的256位AES加密 ...
  • dbmmanage - 管理DBM格式的用户认证文件 htcacheclean - 清理磁盘缓冲区 htdbm - 操作DBM密码数据库 htdigest - 管理用于摘要认证的用户文件 htpasswd - 管理用于基本认证的用户文件 httpd - Apache超文本传输协议...
  • php网络开发完全手册

    热门讨论 2009-03-02 13:17:26
    4.2.4 格式化本地时间日期的函数date 62 4.2.5 获得本地化时间戳的函数mktime 64 4.2.6 输出控制函数flush 65 4.2.7 变量检测函数isset与变量释放 4.2.7 函数unset 66 4.2.8 随机函数rand与srand 66 4.3 关于引用的...
  • 检查binlog格式,需要为ROW,binlog_row_image为FULL 检查DML的表是否存在主键 检查语句是否有影响数据 检查备份库是否开启autocommit 检查是否为连表更新语句 检查执行实例是否为mysql 脱敏规则未生效 检查脱敏...
  • 中文版RFC,共456

    2009-04-19 22:56:29
    RFC20 用于网络交换的 ASCII 格式 RFC21 网络会议 RFC22 主机-主机控制信息格式 RFC23 多重传送的调节信息 RFC24 文档规范 RFC25 不使用高的连接号 RFC27 文档规范 RFC28 时间标准 RFC29 响应 RFC 28 RFC30 文档规范...
  • RFC中文文档-txt

    2009-09-11 14:56:56
    RFC20_用于网络交换的 ASCII 格式 RFC21 网络会议 RFC22 主机-主机控制信息格式 RFC23_多重传送的调节信息 RFC24 文档规范 RFC25 不使用高的连接号 RFC27 文档规范 RFC28 时间标准 RFC29 响应 RFC 28 RFC30 文档规范...
  • RFC20_用于网络交换的 ASCII 格式 RFC21 网络会议 RFC22 主机-主机控制信息格式 RFC23_多重传送的调节信息 RFC24 文档规范 RFC25 不使用高的连接号 RFC27 文档规范 RFC28 时间标准 RFC29 响应 RFC 28 RFC30 文档...
  • ElasticSearch(基本操作和高级查询)、Async(异步任务)、集成Dubbo(采用官方的starter)、MongoDB(文档数据库)、neo4j(图数据库)、docker(容器化)、JPA多数据源、Mybatis多数据源、代码生成器、GrayLog(日志收集)、...
  • DokuWiki v20101107a.rar

    2019-07-10 03:05:34
    DokuWiki 2010-11-07a 更新日志: 改进的快速搜索算法 改善电子邮件订阅 模板作者需要检查,如果他们实施正确的按钮 对差异的看法 永久链接 许可证澄清各种第三方库 在简易编辑时预装节一节的名称 在安装许可证选配...
  • 该源码是桃源企业文件管理系统源码 v3.2,源码系统比较完整,而且是该行业中比较不错的,用户量也很多...17、AD或LDAP域整合:支持企业内部AD或LDAP环境的帐号直接整合登录,可设置DC地址,并且可进行相应同步或自动检
  • CURL用法大全

    2011-10-21 01:03:34
    通常服务器的日志会记录客户端浏览器的信息 curl -A “浏览器信息” http://www.neocanable.com 5.批量下载文件 curl http://www.xxx.com/action/[1-100].html > /dev/null 这个最适合爬自己网站的缓存了 文件...
  • Weblogic管理指南 (Doc&Pdf)

    热门讨论 2008-06-18 11:37:13
    配置WEBLOGIC服务器的WEB组件 1 概述 1 HTTP参数 1 配置监听...日志格式 1 使用扩展日志格式 1 防止“POST拒绝服务”攻击 1 设置WEBLOGIC服务器的HTTP隧道 1 配置HTTP隧道连接 1 建立客户端...
  • 桃源文件系统v3.3

    2014-08-04 12:12:37
    11、完善的日志记录功能:后台管理员及用户前台的各种操作行为,访客或其它用户对有关用户文件进行的操作均会产生实时操作日志,以便于出现问题追根溯源。 12、文件(公文)签收审批:前台用户得到他们共享给其的...
  • TCP/IP详解

    2013-07-25 11:17:06
    16.8.1 LDAP数据互换格式(LDIF) 161 16.8.2 LDAP复制 162 16.9 设计LDAP服务 162 16.9.1 定义需求 162 16.9.2 设计策略 163 16.9.3 性能 164 16.9.4 网络功能 165 16.9.5 安全 166 16.10 LDAP配置 169 16.11 产品...
  • TCP-IP协议详解

    热门讨论 2008-11-24 20:46:50
    16.8.1 LDAP数据互换格式(LDIF) 161 16.8.2 LDAP复制 162 16.9 设计LDAP服务 162 16.9.1 定义需求 162 16.9.2 设计策略 163 16.9.3 性能 164 16.9.4 网络功能 165 16.9.5 安全 166 16.10 LDAP配置 169 16.11 产品...
  • JAVA_API1.6文档(中文)

    万次下载 热门讨论 2010-04-12 13:31:34
    java.util.logging 提供 JavaTM 2 平台核心日志工具的类和接口。 java.util.prefs 此包允许应用程序存储并获取用户和系统首选项和配置数据。 java.util.regex 用于匹配字符序列与正则表达式指定模式的类。 java....
  • TCP/IP教程TCP/IP基础

    热门讨论 2009-11-23 20:58:46
    16.8.1 LDAP数据互换格式(LDIF) 161 16.8.2 LDAP复制 162 16.9 设计LDAP服务 162 16.9.1 定义需求 162 16.9.2 设计策略 163 16.9.3 性能 164 16.9.4 网络功能 165 16.9.5 安全 166 16.10 LDAP配置 169 16.11 产品...
  • TCP/IP技术大全

    2010-03-10 10:25:24
    16.8.1 LDAP数据互换格式(LDIF) 161 16.8.2 LDAP复制 162 16.9 设计LDAP服务 162 16.9.1 定义需求 162 16.9.2 设计策略 163 16.9.3 性能 164 16.9.4 网络功能 165 16.9.5 安全 166 16.10 LDAP配置 169 16.11 产品...

空空如也

空空如也

1 2 3 4
收藏数 77
精华内容 30
关键字:

ldap日志格式