HDP安全之集成kerberos/LDAP、ranger;安装部署kerberos;安装Knox;安装LDAP;启动LDAP;验证Knox网关

本文详细介绍了如何在HDP环境中集成Kerberos、LDAP和Ranger,确保集群的安全性。首先安装部署Kerberos,接着安装并配置Knox,然后安装与启动LDAP服务,包括使用jxplorer进行验证。接着验证Knox网关,包括Resourcemanager、YARN WebUI等服务的配置。同时,文章还讨论了在不同情况下同步LDAP用户到Ambari和Ranger的方法,以及解决同步问题的步骤,提供了详细的配置过程和参考资料。
摘要由CSDN通过智能技术生成

5.HDP安全之集成kerberos/LDAP、ranger

集成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用户为例做集成。

[root@bigdata2 ~]# kadmin.local -q "addprinc hux"      密码为123456

5.1.安装部署kerberos

此处略,按照上面的安装方式。(注意:这里的KDC在bigdata2上),client在bigdata1和bigdata2上都有。

5.2.安装Knox

进入Ambari,点击添加Knox
在这里插入图片描述
勾选上knox
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Knox Master Secret填写的是Admin123456
在这里插入图片描述
开始安装Knox。
在这里插入图片描述
在这里插入图片描述

5.3.安装LDAP

Knox网关自带了一个用于测试LDAP服务,并定义好了一些用户,同时它所有的认证配置都默认指向这个测试的LDAP。

5.3.1.启动LDAP

登陆Knox网关所在的服务器,进入安装目录并执行启动脚本。

[root@bigdata2 ~]# cd /usr/hdp/current/knox-server/bin/
[root@bigdata2 bin]# ls
gateway      gateway.sh   knoxcli.jar  knox-functions.sh  ldap.sh
gateway.cmd  gateway.xml  knoxcli.sh   ldap.cmd           ldap.xml
gateway.jar  knoxcli.cmd  knox-env.sh  ldap.jar           shell.jar
[root@bigdata2 bin]# ./ldap.sh start
Starting LDAP succeeded with PID 118746.
[root@bigdata2 bin]# 

如果启动之后,意外停止了,可以执行:
[root@bigdata2 bin]# vim ldap.sh 
[root@bigdata2 bin]# ./ldap.sh clean
Removed the LDAP PID file: /usr/hdp/current/knox-server/pids/ldap.pid.
Removed the LDAP OUT file: /usr/hdp/current/knox-server/logs/ldap.out.
Removed the LDAP ERR file: /usr/hdp/current/knox-server/logs/ldap.err.
[root@bigdata2 bin]# ./ldap.sh start
Starting LDAP succeeded with PID 34755.
[root@bigdata2 bin]#

ldap.sh中的命令有:start|stop|status|clean
5.3.1.1.查看端口
[root@bigdata2 config]# netstat -natp | grep 389
tcp6       0      0 :::33389                :::*                    LISTEN      118746/java         
[root@bigdata2 config]#

5.3.2.登陆验证

LDAP测试服务预置的用户信息有两种途径查看,一种是登陆Knox网关所在的服务器查看配置文件,配置文件地址是”/etc/knox/conf/users.ldif”,另一种是通过Ambari的配置管理查看,如下图所示:
在这里插入图片描述

5.3.2.1.在windows下安装jxplorer

下载地址:http://jxplorer.org/downloads/users.html
在这里插入图片描述
在windows下安装:jxplorer-3.3.1.2-windows-installer.exe (这个工具依赖jdk)
这里只需要傻瓜式的下一步下一步的方式进行安装。

5.3.2.2.使用客户端连接LDAP

现在我们使用客户端工具链接到LDAP,测试一下服务是否正确启动。
在windows的菜单下,找到jxplorer,并点击:
在这里插入图片描述

没有连接时的界面如下:
在这里插入图片描述
配置如下:
在这里插入图片描述
可以将上面的配置保存成一个模板。

下面是几个比较重要的信息:
主机:192.168.106.135 (这里也可以直接输入IP地址,根据你的环境输入相应的主机名称即可)
端口:33389 (这个端口可以在ldap服务端使用netstat名称查看)
协定:LDAP v3
基底DN: dc=hadoop,dc=apache,dc=org
层次:用户 + 密码
使用者DN: uid=admin,ou=people,dc=hadoop,dc=apache,dc=org
密码:admin-password

登录之后我们会看到LDAP里面已经配置了一些组和用户的数据了,如下图所示:
在这里插入图片描述

5.3.3.验证Knox网关

5.3.3.1.配置resourcemanager

由于使用了Knox网关自带的LDAP服务,所以我们无须更改它的配置便可以直接使用。作为代理网关,Knox将所有支持代理的RESTful服务和页面进行了一层地址映射。现在我们来测试一下YARN的RESTful服务,打开浏览器输入:https://192.168.106.135:8443/gateway/default/resourcemanager/v1/cluster/apps。这是YARN查看任务集群的RESTFULL服务接口。如下图所示,Knox网关需要进行登录认证。

其中,用户名admin,密码是:admin-password
在这里插入图片描述
上面的用户名和密码是Knox Advanced users-ldif中配置的内容用户名和密码。
在这里插入图片描述
输入用户名和密码进行认证登录,认证通过之后我们如愿访问到数据了,如下图所示:
在这里插入图片描述

5.3.3.2.配置YARN的WebUI控制

接下来我们尝试访问YARN的Web UI控制台,Knox网关的默认配置中只代理了RESful接口,所以我们需要修改它的配置文件,添加想要代理的Web UI控制台。打开Ambari找到Knox网关的配置页面,选择Advanced topology配置项,在末尾添加YARN UI的配置,保存后需要重启Knox网关服务。
最终的内容如下:

<topology>

	<gateway>

		<provider>
			<role>authentication</role>
			<name>ShiroProvider</name>
			<enabled>true</enabled>
			<param>
				<name>sessionTimeout</name>
				<value>30</value>
			</param>
			<param>
				<name>main.ldapRealm</name>
				<value>org.apache.hadoop.gateway.shirorealm.KnoxLdapRealm</value>
			</param>
			<param>
				<name>main.ldapRealm.userDnTemplate</name>
				<value>uid={
   0},ou=people,dc=hadoop,dc=apache,dc=org</value>
			</param>
			<param>
				<name>main.ldapRealm.contextFactory.url</name>
				<value>ldap://{
   {
   knox_host_name}}:33389</value>
			</param>
			<param>
				<name>main.ldapRealm.contextFactory.authenticationMechanism</name>
				<value>simple</value>
			</param>
			<param>
				<name>urls./**</name>
				<value>authcBasic</value>
			</param>
		</provider>

		<provider>
			<role>identity-assertion</role>
			<name>Default</name>
			<enabled
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

涂作权的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值