OpenLDAP2.4.47安装及配置

前言

因为公司存在版本管理,项目管理,bug管理系统等各种持续集成开发工具,故通过openldap进行统一账号管理,方便运维进行账号授权及人员调动后的权限清除

安装配置过程

通过yum安装openldap

yum -y install openldap openldap-clients openldap-servers

openldap 常用名词解释

o– organization(组织-公司)
ou – organization unit(组织单元/部门)
c - countryName(国家)
dc - domainComponent(域名组件)
sn – suer name(真实名称)
cn - common name(常用名称)
dn - distinguished name(专有名称)

配置openldap-server

(1)修改openldap默认端口,vim /etc/sysconfig/slapd

SLAPD_URLS="ldapi://0.0.0.0:56388/ ldap://0.0.0.0:56389/"

(2)修改openldap配置文件ldap.conf,配置如下

# LDAP Defaults
#

# See ldap.conf(5) for details
# This file should be world readable but not world writable.

BASE    dc=test,dc=com
URI ldap://localhost:56389

#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never

TLS_CACERTDIR   /etc/openldap/certs

# Turning this off breaks GSSAPI used with krb5 when rdns = false
SASL_NOCANON    on

(3)运行slappasswd,设置管理员密码,获得加密串{SSHA}zbOvBUVcAfrL8ayUUt5M62pJ3Ow0srJg

(4)修改根DN并添加密码,vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}hdb.ldif,修改内容如下:

olcSuffix: dc=test,dc=com
olcRootDN: cn=root,dc=test,dc=com
olcRootPW: {SSHA}zbOvBUVcAfrL8ayUUt5M62pJ3Ow0srJg

(5)修改验证文件中管理员的相关信息,vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{1\}monitor.ldif,修改内容如下:

olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=extern
 al,cn=auth" read by dn.base="cn=root,dc=test,dc=com" read by * none

(6)验证openldap的基本配置,如下出现succeeded说明配置正确

[root@stest openldap]# slaptest -u
5c625cf4 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif"
5c625cf4 ldif_read_file: checksum error on "/etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif"
config file testing succeeded

(7)授权及配置openldap数据库

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown ldap:ldap -R /var/lib/ldap
chmod 700 -R /var/lib/ldap
chown ldap:ldap -R /var/run/openldap
chown -R ldap:ldap /etc/openldap/

(8)启动openldap并检查服务是否启动成功,如果有输出则说明启动成功

systemctl start slapd
ldapsearch -x -b '' -s base'(objectclass=*)'

(9)在/etc/openldap目录下新建base.ldif文件,文件内容为:

dn: dc=test,dc=com
o: test
objectClass: top
objectclass: dcObject
objectclass: organization

dn: cn=root,dc=test,dc=com
cn: root
objectClass: organizationalRole
description: Directory Manage

(10)导入管理员账号到数据库

ldapadd -x -D "cn=root,dc=test,dc=com" -W -f base.ldif

(11)验证是否导入成功,ldapsearch -x -b "dc=test,dc=com" -H ldap://127.0.0.1:56389,如看到以下输出说明导入成功

# extended LDIF
#
# LDAPv3
# base  with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# test.com
dn: dc=test,dc=com
o: test
objectClass: top
objectClass: dcObject
objectClass: organization
dc: test

# root, test.com
dn: cn=root,dc=test,dc=com
cn: root
objectClass: organizationalRole
description: Directory Manage

# search result
search: 2
result: 0 Success

# numResponses: 3
# numEntries: 2

还可以通过ldapadmin管理工具进行账户管理

你可能感兴趣的:(Linux,openldap)