1.如何在CentOS6.5安装OpenLDAP并配置客户端

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢

1.文档编写目的


众所周知Hadoop安全模块不存储用户和用户组信息,而是依赖Linux系统的用户和用户组。同时在集群开启安全认证模式之后,需要映射Kerberos Principle到Linux的用户以及映射用户到用户组。那么随之而来的问题是如何统一管理用户信息。这里统一管理用户信息的方式有多种(如OpenLDAP、AD等等),本篇文章主要讲述如何在CentOS6.5中安装OpenLDAP并配置客户端。

  • 内容概述

1.OpenLDAP服务安装

2.导入根域及管理员账号

3.导入基础文件及用户和用户组

4.配置OpenLDAP客户端

测试环境

1.CentOS6.5

2.OpenLDAP版本2.4.40

2.OpenLDAP安装及配置


在集群中选择一台服务器作为OpenLDAP的Server

1.执行如下命令安装OpenLDAP服务,提示:代码块部分可以左右滑动查看噢

yum -y install openldap-clients openldap-devel openldap-servers migrationtools sssd authconfig nss-pam-ldapd

查看安装的RPM包,提示:代码块部分可以左右滑动查看噢

[root@ip-172-31-7-172 ~]# rpm -qa |grep openldap
openldap-2.4.40-16.el6.x86_64
openldap-devel-2.4.40-16.el6.x86_64
openldap-clients-2.4.40-16.el6.x86_64
openldap-servers-2.4.40-16.el6.x86_64
[root@ip-172-31-7-172 ~]# 

2.初始化OpenLDAP服务的配置文件,提示:代码块部分可以左右滑动查看噢

cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf
cp /usr/share//openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown -R ldap:ldap /var/lib/ldap/
rm -rf /etc/openldap/slapd.d/*

3.使用slappasswd命令生成密文密码123456,提示:代码块部分可以左右滑动查看噢

[root@ip-172-31-7-172 openldap]# slappasswd 
New password: 123456
Re-enter new password: 123456
{SSHA}vG3xyBL+Qa/E7e7l5p6hdhU58Jbi0f3C
[root@ip-172-31-7-172 openldap]# 

注意:此处生成的密码({SSHA}vG3xyBL+Qa/E7e7l5p6hdhU58Jbi0f3C)在第四步配置文件中使用。

4.修改/etc/openldap/slapd.conf配置文件

注释配置文件中的如下内容,提示:代码块部分可以左右滑动查看噢

#TLSCACertificatePath /etc/openldap/certs
#TLSCertificateFile "\"OpenLDAP Server\""
#TLSCertificateKeyFile /etc/openldap/certs/password

修改database monitor配置,提示:代码块部分可以左右滑动查看噢

# enable server status monitoring (cn=monitor)
database monitor
access to *
        by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read
        by dn.exact="cn=Manager,dc=fayson,dc=com" read
        by * none

修改database definitions配置,提示:代码块部分可以左右滑动查看噢

#######################################################################
# database definitions
#######################################################################
database        bdb
suffix          "dc=fayson,dc=com"
checkpoint      1024 15
rootdn          "cn=Manager,dc=fayson,dc=com"
rootpw          {SSHA}vG3xyBL+Qa/E7e7l5p6hdhU58Jbi0f3C

注意:rootpw属性必须顶格写

5.先启动slapd再停止slapd服务,初始化数据库文件,提示:代码块部分可以左右滑动查看噢

[root@ip-172-31-7-172 ldap]# service slapd start
ls: cannot access /etc/openldap/slapd.d//cn=config/olcDatabase*.ldif: No such file or directory
Starting slapd:                                            [  OK  ]
[root@ip-172-31-7-172 ldap]# service slapd stop
Stopping slapd:                                            [  OK  ]
[root@ip-172-31-7-172 ldap]# ll
total 11484
-rw-r--r-- 1 ldap ldap      2048 Nov 23 14:18 alock
-rw------- 1 ldap ldap     24576 Nov 23 14:17 __db.001
-rw------- 1 ldap ldap   9101312 Nov 23 14:17 __db.002
-rw------- 1 ldap ldap 335552512 Nov 23 14:17 __db.003
-rw------- 1 ldap ldap   2359296 Nov 23 14:17 __db.004
-rw------- 1 ldap ldap    753664 Nov 23 14:17 __db.005
-rw------- 1 ldap ldap     32768 Nov 23 14:17 __db.006
-rw-r--r-- 1 ldap ldap       845 Nov 23 14:17 DB_CONFIG
-rw------- 1 ldap ldap      8192 Nov 23 14:17 dn2id.bdb
-rw------- 1 ldap ldap     32768 Nov 23 14:17 id2entry.bdb
-rw------- 1 ldap ldap  10485760 Nov 23 14:18 log.0000000001
[root@ip-172-31-7-172 ldap]# pwd
/var/lib/ldap
[root@ip-172-31-7-172 ldap]# 

6.重新生成slapd服务配置文件信息,提示:代码块部分可以左右滑动查看噢

[root@ip-172-31-7-172 ldap]# rm -rf /etc/openldap/slapd.d/*
[root@ip-172-31-7-172 ldap]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/
config file testing succeeded
[root@ip-172-31-7-172 ldap]# chown -R ldap:ldap /etc/openldap/slapd.d/
[root@ip-172-31-7-172 ldap]# ll /etc/openldap/slapd.d/
total 8
drwxr-x--- 3 ldap ldap 4096 Nov 23 14:20 cn=config
-rw------- 1 ldap ldap 1118 Nov 23 14:20 cn=config.ldif
[root@ip-172-31-7-172 ldap]# 

7.启动slapd服务并加入系统自启动列表,提示:代码块部分可以左右滑动查看噢

[root@ip-172-31-7-172 ldap]# service slapd start
Starting slapd:                                            [  OK  ]
[root@ip-172-31-7-172 ldap]# chkconfig --add slapd
[root@ip-172-31-7-172 ldap]# chkconfig slapd on
[root@ip-172-31-7-172 ldap]# chkconfig --list slapd
slapd           0:off   1:off   2:on    3:on    4:on    5:on    6:off
[root@ip-172-31-7-172 ldap]# service slapd status

至此OpenLDAP服务安装成功。

3.导入根域及管理员账号


1.创建root.ldif文件,内容如下

[root@ip-172-31-7-172 openldap-ldif]# vim root.ldif 
dn: dc=fayson,dc=com
dc: fayson
objectClass: top
objectClass: domain
dn: cn=Manager,dc=fayson,dc=com
objectClass: organizationalRole
cn: Manager

2.导入根域及管理员信息到OpenLDAP服务中

[root@ip-172-31-7-172 openldap-ldif]# ldapadd -D "cn=Manager,dc=fayson,dc=com" -W -x -f root.ldif 
Enter LDAP Password: 123456
adding new entry "dc=fayson,dc=com"
adding new entry "cn=Manager,dc=fayson,dc=com"
[root@ip-172-31-7-172 openldap-ldif]# 

3.查看是否导入成功

ldapsearch -h ip-172-31-7-172.fayson.com -b "dc=fayson,dc=com" -D "cn=Manager,dc=fayson,dc=com" -W

4.导入基础文件及用户和用户组


1.基础文件配置base.ldif

[root@ip-172-31-7-172 openldap-ldif]# vim base.ldif 
dn: ou=People,dc=fayson,dc=com
ou: People
objectClass: top
objectClass: organizationalUnit

dn: ou=Group,dc=fayson,dc=com
ou: Group
objectClass: top
objectClass: organizationalUnit

2.用户组配置文件group.ldif

[root@ip-172-31-7-172 openldap-ldif]# vim group.ldif 
dn: cn=faysontest,ou=Group,dc=fayson,dc=com
objectClass: posixGroup
objectClass: top
userPassword: {SSHA}KYgsfyI/uny0dKPNeMRNG54BdwV6KlWA
cn: faysontest
gidNumber: 510

3.用户配置文件user.ldif

[root@ip-172-31-7-172 openldap-ldif]# vim user.ldif 
dn: uid=faysontest,ou=People,dc=fayson,dc=com
uid: faysontest
cn: faysontest
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword: {SSHA}KYgsfyI/uny0dKPNeMRNG54BdwV6KlWA
shadowLastChange: 17493
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 510
gidNumber: 510
homeDirectory: /home/faysontest

注意:这里的userPassword密码是通过slappasswd命令生成的。

4.使用slapadd命令将基础文件及用户和组导入OpenLDAP

ldapadd -D "cn=Manager,dc=fayson,dc=com" -W -x -f base.ldif
ldapadd -D "cn=Manager,dc=fayson,dc=com" -W -x -f group.ldif
ldapadd -D "cn=Manager,dc=fayson,dc=com" -W -x -f user.ldif

5.查看是否导入成功

ldapsearch -h ip-172-31-7-172.fayson.com -b "dc=fayson,dc=com" -D "cn=Manager,dc=fayson,dc=com" -W |grep dn

5.OpenLDAP客户端配置


1.客户端安装软件包

yum -y install openldap-clients

Fayson在安装OpenLDAP服务的时候已经安装了。

2.修改/etc/openldap/ldap.conf文件,内容如下:

[root@ip-172-31-6-148 openldap]# vim ldap.conf
#
# LDAP Defaults
#
# See ldap.conf(5) for details
# This file should be world readable but not world writable.
#BASE   dc=example,dc=com
#URI    ldap://ldap.example.com ldap://ldap-master.example.com:666
#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never
TLS_CACERTDIR /etc/openldap/cacerts
URI ldap://ip-172-31-7-172.fayson.com
BASE dc=fayson,dc=com

3.测试客户端是否配置成功

[root@ip-172-31-6-148 ~]# ldapsearch  -D "cn=Manager,dc=fayson,dc=com" -W |grep dn

注意:如果未配置/etc/openldap/ldap.conf文件则需要在ldapsearch命令后加-h ip-172-31-7-172.fayson.com -b "dc=fayson,dc=com"参数。

提示:代码块部分可以左右滑动查看噢 为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操

原文发布于微信公众号 - Hadoop实操(gh_c4c535955d0f)

原文发表时间:2018-01-04

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏LanceToBigData

SpringBoot(一)走进Springboot的世界

什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使...

34190
来自专栏纯洁的微笑

springboot(一):入门篇

什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使...

31770
来自专栏玄魂工作室

Hacker基础之工具篇 acccheck

如果你确定了一个主机正在使用SMB协议,那么你可以使用这个工具加上一些字典来破解Windows的登录密码

15720
来自专栏云计算教程系列

如何在Ubuntu 18.04上使用Nginx反向代理配置Jenkins SSL

默认情况下,Jenkins自带内置的Winstone Web服务器监听端口8080方便入门。但是,使用SSL保护Jenkins以保护通过Web界面传输的密码和敏...

69300
来自专栏Hadoop实操

如何在CDH集群的非元数据库节点安装MySQL5.7.12

在CDH集群中默认使用的MySQL版本是操作系统自带的版本,一般操作系统自带的MySQL版本都会比较低,对于企业已有应用可能会用较新的MySQL版本,使用集群中...

39960
来自专栏10km的专栏

linux下protobuf 下载并cmake编译安装全过程脚本

protobuf源码下载 github上下载最新版本的protobuf源码zip包,并解压缩到本地 fetch_protobuf.sh #!/bin/bas...

31960
来自专栏Laoqi's Linux运维专列

Kubernetes 1.8.6 集群部署–Etcd集群(三)

因为虚拟机有限,我的DELL工作站年龄也不小了,暂时就开三个节点(三个虚机均为2H , 2G),集群也都部署在这三台机器,当然线上的资源充足的话肯定是要和mas...

46770
来自专栏编程

Hue中使用Oozie创建Shell工作流在脚本中切换不同用户

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproje...

28190
来自专栏landv

php归档格式:phar文件详解(创建、使用、解包还原提取)

13760
来自专栏python3

Centos7 安装python虚拟环境+Django

鉴于virtualenv不便于对虚拟环境集中管理,所以推荐直接使用virtualenvwrapper。 virtualenvwrapper提供了一系列命令使得和...

29820

扫码关注云+社区

领取腾讯云代金券