
正文
ldap yum安装-centos6
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
yum安装openldap系统环境信息
操作系统:CentOS release 6.7基础的环境准备
iptables -F && /etc/init.d/iptables save
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config && setenforce )安装OpenLDAP的相关
yum -y install openldap openldap-servers openldap-clients openldap-devel compat-openldap #其中compat-openldap这个包与主从有很大的关系 安装完后,可以看到自动创建了ldap用户:
[root@base ~ ::&&]#cat /etc/passwd | grep ldap
ldap:x:::LDAP User:/var/lib/ldap:/sbin/nologin 可以通过rpm -qa |grep openldap查看安装了哪些包:
[root@base ~ ::&&]#rpm -qa | grep openldap
openldap-2.4.-.el6.x86_64
openldap-servers-2.4.-.el6.x86_64
compat-openldap-2.3.-.el6.x86_64
openldap-devel-2.4.-.el6.x86_64
openldap-clients-2.4.-.el6.x86_64)OpenLDAP的相关配置文件信息
/etc/openldap/slapd.conf:OpenLDAP的主配置文件,记录根域信息,管理员名称,密码,日志,权限等
/etc/openldap/slapd.d/*:这下面是/etc/openldap/slapd.conf配置信息生成的文件,每修改一次配置信息,这里的东西就要重新生成
/etc/openldap/schema/*:OpenLDAP的schema存放的地方
/var/lib/ldap/*:OpenLDAP的数据文件
/usr/share/openldap-servers/slapd.conf.obsolete 模板配置文件
/usr/share/openldap-servers/DB_CONFIG.example 模板数据库配置文件3) OpenLDAP监听的端口:
默认监听端口:389(明文数据传输)
加密监听端口:636(密文数据传输)4)初始化OpenLDAP的配置
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf5)修改配置文件
首先,slappasswd生成密文密码123456,拷贝这个到/etc/openldap/slapd.conf里
[root@base ~ 10:04:04&&12]#slappasswd
New password:
Re-enter new password:
{SSHA}6guCnCELUuh3+7DF9NmuA9CgO2uVEej+ 修改后的配置文件内容:红色字体的为修改的部分
[root@base /etc/openldap 10:08:35&&20]#cat /etc/openldap/slapd.conf
include /etc/openldap/schema/corba.schema
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/duaconf.schema
include /etc/openldap/schema/dyngroup.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/java.schema
include /etc/openldap/schema/misc.schema
include /etc/openldap/schema/nis.schema
include /etc/openldap/schema/openldap.schema
include /etc/openldap/schema/ppolicy.schema
include /etc/openldap/schema/collective.schema
allow bind_v2
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
TLSCACertificatePath /etc/openldap/certs
TLSCertificateFile "\"OpenLDAP Server\""
TLSCertificateKeyFile /etc/openldap/certs/password
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=admin,dc=puyi,dc=com" read
by * none
database bdb
suffix "dc=puyi,dc=com"
checkpoint 1024 15
rootdn "cn=admin,dc=puyi,dc=com"
rootpw {SSHA}6guCnCELUuh3+7DF9NmuA9CgO2uVEej+
directory /var/lib/ldap
index objectClass eq,pres
index ou,cn,mail,surname,givenname eq,pres,sub
index uidNumber,gidNumber,loginShell eq,pres
index uid,memberUid eq,pres,sub
index nisMapName,nisMapEntry eq,pres,sub6)重新生成配置文件信息文件
先检测/etc/openldap/slapd.conf是否有错误:slaptest -f /etc/openldap/slapd.conf [root@base /etc/openldap 10:08:57&&21]#slaptest -f /etc/openldap/slapd.conf
5ad6a916 bdb_db_open: database "dc=puyi,dc=com": db_open(/var/lib/ldap/id2entry.bdb) failed: No such file or directory (2).
5ad6a916 backend_startup_one (type=bdb, suffix="dc=puyi,dc=com"): bi_db_open failed! (2)
slap_startup failed (test would succeed using the -u switch) 这里报错是因为在第三步后没有重新生成配置文件,启动slapd。而是直接修改配置文件去了。先启动slapd: [root@base /etc/openldap 10:10:30&&22]#/etc/init.d/slapd restart
Stopping slapd: [FAILED]
/var/lib/ldap/__db.001 is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.002 is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.006 is not owned by "ldap" [WARNING]
/var/lib/ldap/alock is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.004 is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.005 is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.003 is not owned by "ldap" [WARNING]
Starting slapd: 这里又报错,这是因为没有给/var/lib/ldap授权,授权后chown -R ldap.ldap /var/lib/ldap/,再重启slapd,/etc/init.d/slapd restart,可以看到成功的 [root@base /etc/openldap 10:11:27&&23]#chown -R ldap.ldap /var/lib/ldap/
[root@base /etc/openldap 10:12:19&&24]#/etc/init.d/slapd restart
Stopping slapd: [FAILED]
Starting slapd: [ OK ] 接着回到检测/etc/openldap/slapd.conf是否有错误:slaptest -f /etc/openldap/slapd.conf
[root@base /etc/openldap 10:12:33&&25]#slaptest -f /etc/openldap/slapd.conf
config file testing succeeded 可以看到没问题,然后重新生成配置文件的配置信息:
先删除最先的配置文件生成的信息:rm -rf /etc/openldap/slapd.d/*
重新生成:slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/
查看是否生成的是自己修改的配置文件信息:cat /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif [root@base /etc/openldap 10:13:03&&26]#rm -rf /etc/openldap/slapd.d/*
[root@base /etc/openldap 10:13:55&&27]#slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/
config file testing succeeded
[root@base /etc/openldap 10:14:05&&28]#cat /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif | grep puyi
olcSuffix: dc=puyi,dc=com
olcRootDN: cn=admin,dc=puyi,dc=com 授权:chown -R ldap.ldap /etc/openldap/slapd.d/
重启:/etc/init.d/slapd restart [root@base /etc/openldap 10:14:18&&29]#chown -R ldap.ldap /etc/openldap/slapd.d/
[root@base /etc/openldap 10:15:26&&30]#/etc/init.d/slapd restart
Stopping slapd: [ OK ]
Starting slapd: [ OK ]
7)创建1个管理员账号(此账号用来登陆phpldapadmin)
编辑ldif文件 #注意与slapd.conf文件中保持一致,下面的命令同理,
#本人曾在下面的ldapadd命令中将"admin"写成了"amdin",导致一直报" ldap_bind: Invalid credentials (49)"错(每次都是翻回上一条命令执行),排查了3个小时左右才发现。
[root@localhost ~]# vim admin.ldif #此文件格式必须按照下面的格式编写,[开头不能有空格,中间有个空行]
dn: dc=puyi,dc=com
objectclass: dcObject
objectclass: organization
o: Puyi.Inc
dc: puyi
dn: cn=admin,dc=puyi,dc=com
objectclass: organizationalRole
cn: admin
插入数据库
[root@base /etc/openldap 10:39:51&&42]#ldapadd -x -D "cn=admin,dc=puyi,dc=com" -W -f admin.ldif
Enter LDAP Password: #些密码就是用slappasswd生成的密码,slapd.conf配置文件里的那个。
adding new entry "dc=puyi,dc=com"
adding new entry "cn=admin,dc=puyi,dc=com"
到这里为止,OpenLDAP服务端基本上完成了,我们可以通过PhpLDAPAdmin来登录看一下,那先得安装PhpLDAPAdmin
PhpLDAPAdmin的搭建)安装EPEL仓库,镜像里没有PhpLDAPAdmin这个的安装包,所以得安装EPEL仓库
wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/epel-6.repo
yum clean all #清除YUM缓存,yum 会把下载的软件包和header存储在cache中,而不自动删除。如果觉得占用磁盘空间,可以使用yum clean指令进行清除,
更精确 的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all一全部清除
yum makecache # 将服务器上的软件包信息 现在本地缓存,以提高 搜索 安装软件的速度
)安装PhpLDAPAdmin
yum install -y phpldapadmin)修改phpldapadmin的配置文件,访问控制权限vim /etc/httpd/conf.d/phpldapadmin.conf,允许谁访问
[root@base /etc/openldap ::&&]#cat /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>
# Apache 2.4
Require local
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Allow,Deny
Allow from all
#Deny from 127.0.0.1
#Deny from ::
</IfModule>
</Directory>
)修改配置文件:vim /etc/phpldapadmin/config.php
$servers->setValue('login','attr','dn'); 这一行的注释去掉
//$servers->setValue('login','attr','uid'); 这一行注释掉)重启httpd服务
[root@base /etc/openldap ::&&]#/etc/init.d/httpd restart
Stopping httpd: [ OK ]
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.159.14 for ServerName
[ OK ]
)在浏览器输入OpenLDAP服务端的IP 10.0.0.138/ldapadmin 登陆:用户 cn=admin,dc=puyi,dc=com 密码:
OpenLDAP的打开日志信息vim /etc/openldap/slapd.conf #加上loglevel -这里修改了配置文件,所有得重新生成配置文件的信息
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/在 vim /etc/rsyslog.conf加上
local4.* /var/log/slapd/slapd.log然后重启/etc/init.d/rsyslog restart创建日志文件目录,授权
mkdir /var/log/slapd
chmod 755 /var/log/slapd/
chown ldap.ldap /var/log/slapd/重启slapd服务,/etc/init.d/slapd restart
就可以看到日志信息了cat /var/log/slapd/slapd.log
创建1个具有部门属性的员工创建1个具有部门属性的员工编辑ldif文件#这里其实是先创建1个部门”yunwei”,再在”yunwei”部门创建了1个员工,实际上是两条命令
[root@localhost ~]# vim yunwei.ldif
dn: ou=yunwei,dc=puyi,dc=com
ou: yunwei
objectClass: organizationalUnitdn: cn=hxh,ou=yunwei,dc=puyi,dc=com
ou: yunwei
cn: hxh
sn: hui
objectClass: inetOrgPerson
objectClass: organizationalPerson插入数据库(admin是管理员,必须用admin来创建)
[root@localhost ~]# ldapadd -x -D "cn=admin,dc=puyi,dc=com" -W -f yunwei.ldif验证
ldapsearch -x -b 'dc=puyi,dc=com' '(objectClass=*)'
常见对象属性
系统环境信息
操作系统:CentOS release 6.7基础的环境准备
iptables -F && /etc/init.d/iptables save
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config && setenforce )安装OpenLDAP的相关
yum -y install openldap openldap-servers openldap-clients openldap-devel compat-openldap #其中compat-openldap这个包与主从有很大的关系 安装完后,可以看到自动创建了ldap用户:
[root@base ~ ::&&]#cat /etc/passwd | grep ldap
ldap:x:::LDAP User:/var/lib/ldap:/sbin/nologin 可以通过rpm -qa |grep openldap查看安装了哪些包:
[root@base ~ ::&&]#rpm -qa | grep openldap
openldap-2.4.-.el6.x86_64
openldap-servers-2.4.-.el6.x86_64
compat-openldap-2.3.-.el6.x86_64
openldap-devel-2.4.-.el6.x86_64
openldap-clients-2.4.-.el6.x86_64)OpenLDAP的相关配置文件信息
/etc/openldap/slapd.conf:OpenLDAP的主配置文件,记录根域信息,管理员名称,密码,日志,权限等
/etc/openldap/slapd.d/*:这下面是/etc/openldap/slapd.conf配置信息生成的文件,每修改一次配置信息,这里的东西就要重新生成
/etc/openldap/schema/*:OpenLDAP的schema存放的地方
/var/lib/ldap/*:OpenLDAP的数据文件
/usr/share/openldap-servers/slapd.conf.obsolete 模板配置文件
/usr/share/openldap-servers/DB_CONFIG.example 模板数据库配置文件3) OpenLDAP监听的端口:
默认监听端口:389(明文数据传输)
加密监听端口:636(密文数据传输)4)初始化OpenLDAP的配置
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf5)修改配置文件
首先,slappasswd生成密文密码123456,拷贝这个到/etc/openldap/slapd.conf里
[root@base ~ 10:04:04&&12]#slappasswd
New password:
Re-enter new password:
{SSHA}6guCnCELUuh3+7DF9NmuA9CgO2uVEej+ 修改后的配置文件内容:红色字体的为修改的部分
[root@base /etc/openldap 10:08:35&&20]#cat /etc/openldap/slapd.conf
include /etc/openldap/schema/corba.schema
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/duaconf.schema
include /etc/openldap/schema/dyngroup.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/java.schema
include /etc/openldap/schema/misc.schema
include /etc/openldap/schema/nis.schema
include /etc/openldap/schema/openldap.schema
include /etc/openldap/schema/ppolicy.schema
include /etc/openldap/schema/collective.schema
allow bind_v2
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
TLSCACertificatePath /etc/openldap/certs
TLSCertificateFile "\"OpenLDAP Server\""
TLSCertificateKeyFile /etc/openldap/certs/password
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=admin,dc=puyi,dc=com" read
by * none
database bdb
suffix "dc=puyi,dc=com"
checkpoint 1024 15
rootdn "cn=admin,dc=puyi,dc=com"
rootpw {SSHA}6guCnCELUuh3+7DF9NmuA9CgO2uVEej+
directory /var/lib/ldap
index objectClass eq,pres
index ou,cn,mail,surname,givenname eq,pres,sub
index uidNumber,gidNumber,loginShell eq,pres
index uid,memberUid eq,pres,sub
index nisMapName,nisMapEntry eq,pres,sub6)重新生成配置文件信息文件
先检测/etc/openldap/slapd.conf是否有错误:slaptest -f /etc/openldap/slapd.conf [root@base /etc/openldap 10:08:57&&21]#slaptest -f /etc/openldap/slapd.conf
5ad6a916 bdb_db_open: database "dc=puyi,dc=com": db_open(/var/lib/ldap/id2entry.bdb) failed: No such file or directory (2).
5ad6a916 backend_startup_one (type=bdb, suffix="dc=puyi,dc=com"): bi_db_open failed! (2)
slap_startup failed (test would succeed using the -u switch) 这里报错是因为在第三步后没有重新生成配置文件,启动slapd。而是直接修改配置文件去了。先启动slapd: [root@base /etc/openldap 10:10:30&&22]#/etc/init.d/slapd restart
Stopping slapd: [FAILED]
/var/lib/ldap/__db.001 is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.002 is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.006 is not owned by "ldap" [WARNING]
/var/lib/ldap/alock is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.004 is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.005 is not owned by "ldap" [WARNING]
/var/lib/ldap/__db.003 is not owned by "ldap" [WARNING]
Starting slapd: 这里又报错,这是因为没有给/var/lib/ldap授权,授权后chown -R ldap.ldap /var/lib/ldap/,再重启slapd,/etc/init.d/slapd restart,可以看到成功的 [root@base /etc/openldap 10:11:27&&23]#chown -R ldap.ldap /var/lib/ldap/
[root@base /etc/openldap 10:12:19&&24]#/etc/init.d/slapd restart
Stopping slapd: [FAILED]
Starting slapd: [ OK ] 接着回到检测/etc/openldap/slapd.conf是否有错误:slaptest -f /etc/openldap/slapd.conf
[root@base /etc/openldap 10:12:33&&25]#slaptest -f /etc/openldap/slapd.conf
config file testing succeeded 可以看到没问题,然后重新生成配置文件的配置信息:
先删除最先的配置文件生成的信息:rm -rf /etc/openldap/slapd.d/*
重新生成:slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/
查看是否生成的是自己修改的配置文件信息:cat /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif [root@base /etc/openldap 10:13:03&&26]#rm -rf /etc/openldap/slapd.d/*
[root@base /etc/openldap 10:13:55&&27]#slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/
config file testing succeeded
[root@base /etc/openldap 10:14:05&&28]#cat /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif | grep puyi
olcSuffix: dc=puyi,dc=com
olcRootDN: cn=admin,dc=puyi,dc=com 授权:chown -R ldap.ldap /etc/openldap/slapd.d/
重启:/etc/init.d/slapd restart [root@base /etc/openldap 10:14:18&&29]#chown -R ldap.ldap /etc/openldap/slapd.d/
[root@base /etc/openldap 10:15:26&&30]#/etc/init.d/slapd restart
Stopping slapd: [ OK ]
Starting slapd: [ OK ]
7)创建1个管理员账号(此账号用来登陆phpldapadmin)
编辑ldif文件 #注意与slapd.conf文件中保持一致,下面的命令同理,
#本人曾在下面的ldapadd命令中将"admin"写成了"amdin",导致一直报" ldap_bind: Invalid credentials (49)"错(每次都是翻回上一条命令执行),排查了3个小时左右才发现。
[root@localhost ~]# vim admin.ldif #此文件格式必须按照下面的格式编写,[开头不能有空格,中间有个空行]
dn: dc=puyi,dc=com
objectclass: dcObject
objectclass: organization
o: Puyi.Inc
dc: puyi
dn: cn=admin,dc=puyi,dc=com
objectclass: organizationalRole
cn: admin
插入数据库
[root@base /etc/openldap 10:39:51&&42]#ldapadd -x -D "cn=admin,dc=puyi,dc=com" -W -f admin.ldif
Enter LDAP Password: #些密码就是用slappasswd生成的密码,slapd.conf配置文件里的那个。
adding new entry "dc=puyi,dc=com"
adding new entry "cn=admin,dc=puyi,dc=com"
到这里为止,OpenLDAP服务端基本上完成了,我们可以通过PhpLDAPAdmin来登录看一下,那先得安装PhpLDAPAdmin
)安装EPEL仓库,镜像里没有PhpLDAPAdmin这个的安装包,所以得安装EPEL仓库
wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/epel-6.repo
yum clean all #清除YUM缓存,yum 会把下载的软件包和header存储在cache中,而不自动删除。如果觉得占用磁盘空间,可以使用yum clean指令进行清除,
更精确 的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all一全部清除
yum makecache # 将服务器上的软件包信息 现在本地缓存,以提高 搜索 安装软件的速度
)安装PhpLDAPAdmin
yum install -y phpldapadmin)修改phpldapadmin的配置文件,访问控制权限vim /etc/httpd/conf.d/phpldapadmin.conf,允许谁访问
[root@base /etc/openldap ::&&]#cat /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>
# Apache 2.4
Require local
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Allow,Deny
Allow from all
#Deny from 127.0.0.1
#Deny from ::
</IfModule>
</Directory>
)修改配置文件:vim /etc/phpldapadmin/config.php
$servers->setValue('login','attr','dn'); 这一行的注释去掉
//$servers->setValue('login','attr','uid'); 这一行注释掉)重启httpd服务
[root@base /etc/openldap ::&&]#/etc/init.d/httpd restart
Stopping httpd: [ OK ]
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.159.14 for ServerName
[ OK ]
)在浏览器输入OpenLDAP服务端的IP 10.0.0.138/ldapadmin 登陆:用户 cn=admin,dc=puyi,dc=com 密码:
OpenLDAP的打开日志信息vim /etc/openldap/slapd.conf #加上loglevel -这里修改了配置文件,所有得重新生成配置文件的信息
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/在 vim /etc/rsyslog.conf加上
local4.* /var/log/slapd/slapd.log然后重启/etc/init.d/rsyslog restart创建日志文件目录,授权
mkdir /var/log/slapd
chmod 755 /var/log/slapd/
chown ldap.ldap /var/log/slapd/重启slapd服务,/etc/init.d/slapd restart
就可以看到日志信息了cat /var/log/slapd/slapd.log
创建1个具有部门属性的员工创建1个具有部门属性的员工编辑ldif文件#这里其实是先创建1个部门”yunwei”,再在”yunwei”部门创建了1个员工,实际上是两条命令
[root@localhost ~]# vim yunwei.ldif
dn: ou=yunwei,dc=puyi,dc=com
ou: yunwei
objectClass: organizationalUnitdn: cn=hxh,ou=yunwei,dc=puyi,dc=com
ou: yunwei
cn: hxh
sn: hui
objectClass: inetOrgPerson
objectClass: organizationalPerson插入数据库(admin是管理员,必须用admin来创建)
[root@localhost ~]# ldapadd -x -D "cn=admin,dc=puyi,dc=com" -W -f yunwei.ldif验证
ldapsearch -x -b 'dc=puyi,dc=com' '(objectClass=*)'
常见对象属性
vim /etc/openldap/slapd.conf #加上loglevel -这里修改了配置文件,所有得重新生成配置文件的信息
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/在 vim /etc/rsyslog.conf加上
local4.* /var/log/slapd/slapd.log然后重启/etc/init.d/rsyslog restart创建日志文件目录,授权
mkdir /var/log/slapd
chmod 755 /var/log/slapd/
chown ldap.ldap /var/log/slapd/重启slapd服务,/etc/init.d/slapd restart
就可以看到日志信息了cat /var/log/slapd/slapd.log
创建1个具有部门属性的员工编辑ldif文件#这里其实是先创建1个部门”yunwei”,再在”yunwei”部门创建了1个员工,实际上是两条命令
[root@localhost ~]# vim yunwei.ldif
dn: ou=yunwei,dc=puyi,dc=com
ou: yunwei
objectClass: organizationalUnitdn: cn=hxh,ou=yunwei,dc=puyi,dc=com
ou: yunwei
cn: hxh
sn: hui
objectClass: inetOrgPerson
objectClass: organizationalPerson插入数据库(admin是管理员,必须用admin来创建)
[root@localhost ~]# ldapadd -x -D "cn=admin,dc=puyi,dc=com" -W -f yunwei.ldif验证
ldapsearch -x -b 'dc=puyi,dc=com' '(objectClass=*)'
常见对象属性
LDAP为人员组织机构中常见的对象都设计了属性(比如commonName,surname)。下面有一些常用的别名:
属性名称 | 属性别名 | 语法 | 描述 | 值(举例) |
commonName | cn | Directory String | 名子 | sean |
surname | sn | Directory String | 姓氏 | Chow |
organizationalUnitName | ou | Directory String | 单位(部门)名称 | IT_SECTION |
organization | o | Directory String | 组织(公司)名称 | linuxprobe |
telephoneNumber | Telephone Number | 电话号码 | 911 | |
objectClass | 内置属性 | organizationa |
ldif文件示例
http://www.linuxidc.com/Linux/2017-10/147559.htm








