----------------------目录导航见左上角-------------------------------

环境

HDP 3.0.1.0 (已有)

JDK   1.8.0_91 (已有)

Mysql  5.7.25 (已有)

Kerberos       1.10.3-30 (后续文档中有介绍如何安装)

LDAP       knox自带的通用LDAP (已有)

Ranger    1.1.0 (已有)

目的

集成HDP kerberos /LDAP/ranger之前必须先了解为什么要这样做,kerberos/LDAP是用来做身份认证的,ranger用来做授权审计的,KNOX负责集群安全,所以集成后应该要满足同一个账号,例如hux可以在linux、ambari、ranger、kerberos等等等均可使用,ranger上可以同步LDAP中的用户,并进行统一的用户权限管理,所以需要在linux中创建的用户与LDAP、kerberos中创建的用户相同,由于此次使用的是knox自带的LDAP,所以里面没有集成kerberos,需要在LDAP和kerberos中分别创建同样的账号,如果使用的AD、IPA就不需要这样做了,因为它们有集成kerberos。

以下以创建hux用户为例做集成

一、安装部署kerberos

1,在server上安装KDC

yum install krb5-server krb5-libs krb5-workstation

2,修改配置并取消注释

vi /etc/krb5.conf

default_realm = EXAMPLE.COM

[realms]

EXAMPLE.COM = {

kdc = test002

admin_server = test002

}

3,创建数据库

kdb5_util create -s -r EXAMPLE.COM

输入密码并确认

4,创建管理员

kadmin.local

输入(上面确认的密码)

addprinc admin/admin(管理员账号admin,密码admin)

5,重启服务

systemctl restart krb5kdc

systemctl restart kadmin

查看状态

systemctl krb5kdc status

或者

service krb5kdc status

6,将KDC服务器设置为在引导时的自动启动

chkconfig krb5kdc on

chkconfig kadmin on

7,为kerberos安装JCE

下载jdk对应版本的JCE文件

wget http://download.oracle.com/otn-pub/java/jce/8/jce_policy-8.zip

8,将压缩包内的jar包解压至JDK对应的子目录

/usr/local/jdk1.8.0_91/jre/lib/security/

并SCP至另外俩个节点

重启ambari

9,运行kerberos安全向导

(注意kerberos对时间高度敏感,需要检查时间是否一致,查看NTP状态)

10,基础操作

添加普通用户

kadmin.local -q "addprinc hux"

hux

查看kerberos用户(K管理员才可查看)

Klist

使用hdfs 的认证登陆kerberos用户并提交hdfs任务

klist -kt /etc/security/keytabs/hdfs.headless.keytab

kinit -kt /etc/security/keytabs/hdfs.headless.keytab hdfs-myc1@EXAMPLE.COM

list

hdfs dfs -put /etc/resolv.conf /tmp/     (显示是HDFS用户上传的)

二、部署LDAP(通用LDAP)

1,在ambari knox组件上开启ldap demo

2,执行ambari初始化命令

ambari-server setup-ldap

输入的参数在ambari knox Advanced users-ldif 文件中可见(一定要和配置文件中相同)

Setup参数如下:

查看端口:netstat -natp | grep 389

如上 端口为33389

3,配置LDAPadmin win配置连接:

LDAPadmin(windows下进行管理ambari用户)参数参考如下:

组相关信息:

用户相关信息:

4,重启ambari

ambari-server restart

5,创建用户

touch users.txt

vim users.txt

输入如下内容:

hux

6,创建组

touch groups.txt

vim groups.txt

输入如下内容:

analyst,scientist

7,创建及同步用户、组示例*

ambari-server sync-ldap --users users.txt --groups groups.txt

8,将kerberos用户添加至ldap文件夹中,准备同步至ambari

echo "hux" > users.txt

ambari-server sync-ldap --users users.txt

在LDAP客户端中创建hux用户,也可通过命令创建(尽量创建的组与组,用户与用户之间其他的属性基本一致,方便后面做ranger用户同步)

三、配置Ranger同步LDAP用户

1,打开user sync

2,配置LDAP同步的相关信息(一一对应)

可结合上面LDAP win客户端及配置文件的信息和下面ranger界面对LDAP的配置对应着看来结合自身的作参考。

在advance中的配置

配置完成后保存,重启所有受影响的

3,配置完成

用admin账户登录ranger可以看到同步过来的组,用户信息

创建的用户信息

在ranger中对hux账户赋权,hux可以进行相关的操作,例如上传hdfs文件,访问HIVE等等,并且现在huv账户应该是除了对赋予的权限可以进行操作外,还可以同一个账户登录ambari,ranger,kerberos,LDAP,linux(su,id)

 

(对配置有不理解的可评论联系我)

HDP安全之集成kerberos/LDAP、ranger(knox自带LDAP)的更多相关文章

  1. Ambari集成Kerberos报错汇总

    Ambari集成Kerberos报错汇总 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看报错的配置信息步骤 1>.点击Test Kerberos Client,查看相 ...

  2. LDAP第三天 MySQL+LDAP 安装

    https://www.easysoft.com/applications/openldap/back-sql-odbc.html      OpenLDAP 使用 SQLServer 和 Oracl ...

  3. 管理员技术(五): 配置文档的访问权限、 配置附加权限、绑定到LDAP验证服务、配置LDAP家目录漫游

    一.配置文档的访问权限 问题: 本例要求将文件 /etc/fstab 拷贝为 /var/tmp/fstab,并调整文件 /var/tmp/fstab的权限,满足以下要求: 1>  此文件的拥有者 ...

  4. 挖坑:hive集成kerberos

    集成hive+kerberos前,hadoop已经支持kerberos,所以基础安装略去: https://www.cnblogs.com/garfieldcgf/p/10077331.html 直接 ...

  5. hive集成kerberos

    1.票据的生成 kdc服务器操作,生成用于hive身份验证的principal 1.1.创建principal # kadmin.local -q “addprinc -randkey hive/yj ...

  6. zookeeper、hbase集成kerberos

    1.KDC创建principal 1.1.创建认证用户 登陆到kdc服务器,使用root或者可以使用root权限的普通用户操作: # kadmin.local -q “addprinc -randke ...

  7. Kafka集成Kerberos之后如何使用生产者消费者命令

    1.生产者1.1.准备jaas.conf并添加到环境变量(使用以下方式的其中一种)1.1.1.使用Kinit方式前提是手动kinit 配置内容为: KafkaClient { com.sun.secu ...

  8. presto集成kerberos以及访问集成了kerberos的hive集群

    1.创建主体 注: 192.168.0.230 为单节点集群 192.168.4.50为kdc服务器 192.168.0.9为客户端 1.1.Kdc服务器创建主体 # kadmin.local -q ...

  9. hdfs、yarn集成kerberos

    1.kdc创建principal 1.1.创建认证用户 登陆到kdc服务器,使用root或者可以使用root权限的普通用户操作: # kadmin.local -q “addprinc -randke ...

随机推荐

  1. Rsyslog的模板template详解

    一. Template功能 根据用户需求指定任意格式 动态生成文件名 每个输出都使用了一些模板,包括针对文件的,针对用户消息等 备注: 旧版本:$template 新版本:template() V6之 ...

  2. Alpha阶段敏捷冲刺 ADY8

    一.举行站立式例会 今天也没有拍照片,人不齐. 二.团队报告 1.昨日已完成的工作 (1)创建一个test,并且将图片导入进去使其可以显示. 2.今日计划完成的工作 完成收尾工作.实现代码的连接. 3 ...

  3. 软件工程个人作业3——集大通APP案例分析

    第一部分:调研, 评测 1.第一次上手体验 主要界面截图: 感受: 1.界面不美观: 2.特色功能展现模块不突出,以上截图为打开APP所看到的界面展示,但是这些功能都不是该APP的特色功能,显得有些累 ...

  4. 使用Kettle导出excel

    1.开发背景 在web项目中,经常会需要查询数据导出excel,以前比较常见的就是用poi.使用poi的时候也有两种方式,一种就是直接将集合一次性导出为excel,还有一种是分批次追加的方式适合数据量 ...

  5. bootstrap心得

    最近在弄个人的博客,之前对bootstrap的使用老是感觉使用的一般 幸好在看了慕课网的一个老师的实例教程之后,才感觉是真正对前端使用bootstrap有了一点理解 首先就是. 这些标签,其实都是相当 ...

  6. C 语言疑难杂症 [转:http://blog.chinaunix.net/uid-20688544-id-1894880.html]

    无聊在网上找了些C语言的东东练一下手,竟然发现其实还有好多细节之前,没注意到,该好好复习一下先. 解决掉的问题先不发出来,把疑问的先做个笔记,过几天解决了就回来修改补上.   #include < ...

  7. [Git/Github] ubuntu 14.0 下github 配置

    转载自:http://www.faceye.net/search/77573.html 一:创建Repositories1:首先在github下创建一个帐号.这个不用多说,然后创建一个Reposito ...

  8. node+express搭建个人网站(2)

    node+express搭建个人网站(1)这一节中成功启动了一个网站但还很简陋,仅仅打印了一个helloworld的网页 作为个人网站,我们当然想输出自己设计好的网页, 我们借助 Express 应用 ...

  9. HttpWebRequest 保存Cookies,模拟Session登录

    前面使用HttpWebRequest 对象可以抓取网页中一些资料,不过有些页面可以直接打开,而有些页面必登录之后才能打开,也就是在登录后保存登录信息在Session,这样就可以访问有权限的页面了.下面 ...

  10. BZOJ3811 玛里苟斯(线性基+概率期望)

    k=1的话非常好做,每个有1的位都有一半可能性提供贡献.由组合数的一些性质非常容易证明. k=2的话,平方的式子展开可以发现要计算的是每一对位提供的贡献,于是需要计算每一对位被同时选中的概率.找出所有 ...