一、windows上使用kerberos进入访问集群( https://blog.csdn.net/hadoop_sc/article/details/84108404 ) 1.步骤: (1)在windows上安装了kerberos的
客户端后, (2)将KDC Server服务器上/ect/krb5.conf
文件中的部分内容,拷贝到krb5.ini文件,然后重启kerberos客户端 (3)在Window下使用kinit测试 1)KDC Server上通过admin创建一个用户: sudo kadmin.local 创建用户:addprinc znn@HADOOP. COM 设置密码:123456 创建成功 2)启动Windows上的kerberos客户端,get ticket,输入新创建的用户 3)销毁获取到的Ticket 选中列表中需要销毁的Ticket,点击Destroy Ticket,客户端没有principal 4)命令行下
初始化,在cmd中安装kerberos客户端的目录下,执行kinit znn@HADOOP.COM, 刷新一下客户端,就可以看到principal了,见下图 5)命令行下kdestroy (4)使用Keytab文件登录Kerberos 1)在KDC Server创建一个keytab文件,使用上一步创建的 znn@HADOOP.C OM sudo kadmin.local 创建keytab:xst -norandkey -k znn123.keytab znn@HADOOP.C OM 注意:创建的znn123.keytab,默认放置在/etc/security/keytabs 在生成keytab文件时需要加参数”-norandkey”否则会导致,直接使用kinit test@CLOUDERA.com初始化时会提示密码错误。 2)测试znn123.keytab文件 注意:在非root用户下需要将生成的keytab文件,权限设置到644以上,否则会初始化失败或者使用sudo权限初始化 3)将生成的test.keytab文件拷贝到Windows Server上,在CMD命令行进行初始化 (5)在火狐上访问集群的hdfs路径 1)直接访问hdfs的50070页面时,会d出kerberos的客户端提示页面(前提是打开kerberos的客户端) 由于此时未将hdfs的ticket初始化所以不能正常访问,提示输入principal和密码 2)在集群的57服务器上找到hdfs的keytab文件hdfs.headless.keytab 3)在服务器上测试该keytab文件有效 kadmin.local listprincs hdfs* 注意:可以使用listprincs列出的hdfs身份进行初始化 4)将hdfs.keytab文件拷贝到Windows机器上,通过CMD命令进行初始化 5)再次通过FireFox浏览器访问HDFS服务,正常访问 2.在此过程中遇到的问题: (1)get ticket时,提示:Kerberos 5:Cannot find KDC for requested realm(error-1765328230) 原因是:在旧的集群10.247.33.57上创建的用户,但是本地的krb5.ini文件中配置的是新集群10.247.32.247的/etc/krb5.conf文件中的内容,所以提示该错误 解决办法: 修改本地的krb5.ini文件,复制老集群的文件你先需要看明白kerberos三方安全认证协议(有两篇不错的文章)
然后在看是配置,一下几个工具
1krb5kdc,kadmin/kadmin.local (KDC管理工具)
2kinit(客户端工具)klist,kdestroy是你需要掌握的
评论列表(0条)