windows 配置kerberos访问启用spnego的CDH 集群web UI页面

一 问题描述

  CDH集群启用 HTTP Web 控制台的 Kerberos 身份验证后,FireFox下HTTP访问HDFS、Yarn、Hive、HBase等Hadoop服务的Web UI(如Namenode的50070,Yarn的8088)等出现错误:

GSSException: Defective token detected (Mechanism level: GSSHeader did not find the right tag)

二 解决方案
思路:
  • windows 10 安装kerberos客户端
  • 配置谷歌浏览器
  • 测试

参考:https://blog.csdn.net/hadoop_sc/article/details/84108404

1. win10安装kerberos 客户端

1.1 下载地址:http://web.mit.edu/kerberos/dist/kfw-4.1-amd64.msi

1.2  双击安装,默认下一步,选择typical,install。

 

1.3 配置C:\ProgramData\MIT\Kerberos5\krb5.ini文件

将centos7 /etc/krb5.conf 中的内容:

[libdefaults]
 dns_lookup_realm = false
 ticket_lifetime = 24h
 renew_lifetime = 7d
 forwardable = true
 rdns = false
 default_realm = HADOOP.COM
 udp_preference_limit = 1
# default_ccache_name = KEYRING:persistent:%{uid}

[realms]
 HADOOP.COM = {
  kdc = duan139
  admin_server = duan139
 }

[domain_realm]
 .example.com = HADOOP.COM
 example.com = HADOOP.COM

复制到krb5.ini中。注意:此处将标注部分拷贝至krb5.ini文件中,否则会导致MIT Kerberos无法正常启动,如果直接将krb5.conf文件更名为ini文件并替换krb5.ini文件会出现文件格式问题导致MIT Kerberos无法正常启动。

1.4 配置完成后,启动MIT Kerberos客户端

输入centos 7上创建的用户,可以看到获取的Ticket。

 

cmd命令运行窗口:

kinit duan@HADOOP.COM

报错:ICMP Port Unreachable,先不管。kdestroy命令为清除缓存。

 2. firefox浏览器配置

2.1 网址栏输入about:config

修改: network.negotiate-auth.trusted-uris    =   duan139

参数说明:network.negotiate-auth.trusted-uris此参数主要配置需要访问服务的hostname,如果需要访问多个host则以“,”分割。

修改:network.auth.use-sspi  =  false

 3. 测试

namenode web UI :50070端口 ,正常访问。

posted @ 2018-11-29 09:50  duaner92  阅读(1902)  评论(1编辑  收藏  举报