Windows 配置kerberos访问并启动访问CDH 集群web UI页面

1、问题描述:

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

2、解决方案:

思路:
windows 10 安装kerberos客户端

1、win10安装Kerberos客户端

在Kerberos官网下载Kerberos安装包,下载地址
下载画圈圈的这个压缩包
Windows 配置kerberos访问并启动访问CDH 集群web UI页面_第1张图片

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

Windows 配置kerberos访问并启动访问CDH 集群web UI页面_第2张图片

3、配置windows 下面的环境配置文件

将linux /etc/krb5.conf 中的内容 复制到C:\ProgramData\MIT\Kerberos5\krb5.ini
关于一些日志路径之类的可以删掉,不然会导致Kerberos启动不起不来,为了防止Windows找不到,我们把该文件继续复制到C:\Windows下面

# Configuration snippets may be placed in this directory as well

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

[realms]
 HADOOP.COM = {
  kdc = cdh21:88
  admin_server = cdh21:749
 }

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

4、启动MIT Kerberos客户端

输入集群的 principal 账户与密码,测试与集群kerberos通不通
Windows 配置kerberos访问并启动访问CDH 集群web UI页面_第3张图片

  • 测试通过之后MIT客户端会生成一个TicKet(举例)
    Windows 配置kerberos访问并启动访问CDH 集群web UI页面_第4张图片

5、测试通过之后配置火狐浏览器的配置信息,让其能关联Kerberos进行访问web页面

  1. 配置浏览器
    打开 firefox 浏览器 (为啥不是 chrome 及 ie ,可以百度,秘钥传输会失败),
    输入 about:config
  2. firefox浏览器配置
    2.1 网址栏输入about:config
    修改: network.negotiate-auth.trusted-uris = cdh21,cdh22,cdh24
    参数说明:network.negotiate-auth.trusted-uris此参数主要配置需要访问服务的hostname,如果需要访问多个host则以“,”分割,映射关系在hosts里面已经配置
    修改:network.auth.use-sspi = false
    需要注意的是这边在配置完成之后,并且下面或得到keytab初始化之后,浏览器一定要重启,不然会无法关联到一起,秘钥无法发送到集群进行验证
    Windows 配置kerberos访问并启动访问CDH 集群web UI页面_第5张图片

6、制作集群上的hdfs.keytab,到windows来初始化用户秘钥信息

  • 由于配置完火狐之后,还没有hdfs.keytab账户密码文件等信息,所以需要在集群上面初始化出来,会在当前文件夹下面生成一个 hdfs.keytab,然后sz,这边制作的时候一定要加 -norandkey 不然会直接导致密码重新初始化
[root@dounine ~]# kadmin.localAuthenticating as principal root/[email protected] with password.
kadmin.local:  xst -k hdfs.keytab -norandkey hdfs/[email protected]
Entry for principal admin/[email protected] with kvno 6, encryption type aes256-cts-hmac-sha1-96 added to keytab WRFILE:admin.keytab.
Entry for principal admin/[email protected] with kvno 6, encryption type aes128-cts-hmac-sha1-96 added to keytab WRFILE:admin.keytab.
Entry for principal admin/[email protected] with kvno 6, encryption type des3-cbc-sha1 added to keytab WRFILE:admin.keytab.
Entry for principal admin/[email protected] with kvno 6, encryption type arcfour-hmac added to keytab WRFILE:admin.keytab.
Entry for principal admin/[email protected] with kvno 6, encryption type camellia256-cts-cmac added to keytab WRFILE:admin.keytab.
Entry for principal admin/[email protected] with kvno 6, encryption type camellia128-cts-cmac added to keytab WRFILE:admin.keytab.
Entry for principal admin/[email protected] with kvno 6, encryption type des-hmac-sha1 added to keytab WRFILE:admin.keytab.
Entry for principal admin/[email protected] with kvno 6, encryption type des-cbc-md5 added to keytab WRFILE:admin.keytab.
kadmin.local:  exit
  • 在本地cmd中进行运行命令,首先进入到安装的kerberos客户端的bin里面,使用安装的kinit klist命令才能生效,然后使用klist查看本地默认登录的是否是改初始化用户,在测试登录ui
    注意点:由于本机JDK或者安装的其他一些环境都带有klist kinit等工具类,所以我们在初始化的时候一定要进入到我们上面安装的Kerberos的bin里面,使用安装的工具类初始化才行
  • 还有个注意点,其实这边初始化一个用户就可以了,如果
C:\Users\user> cd C:\Program Files\MIT\Kerberos\bin
C:\Program Files\MIT\Kerberos\bin> kinit.exe -kt  C:\Users\user\Desktop\hdfs.keytab hdfs/cdh21

初始化之后会在Kerberos客户端生成一个ticket
Windows 配置kerberos访问并启动访问CDH 集群web UI页面_第6张图片

  • 重启或火狐浏览器
    访问 http://cdh21:9870 namenode主节点查看文件系统,可以访问,安装成功
    Windows 配置kerberos访问并启动访问CDH 集群web UI页面_第7张图片

  • 在访问该web页面之后,会在Kerberos客户端的ticket principal 里面生成http
    Windows 配置kerberos访问并启动访问CDH 集群web UI页面_第8张图片

你可能感兴趣的:(Kerberos,Kerberos,CDH,web,ui,Windows)