zoukankan      html  css  js  c++  java
  • Kerberos

    kerberos里面有两个理念,分别是王国(realm)和领域domain
    安装过程中,kdb5_util create -s 将会等待很长时间。
    异常:Cannot contact any KDC for realm
    首先是要确包Hosts文件中已经做了realm的相关映射;
    然后就是kinit一定是要root/localhost,就是和你当初注册的时候是一样的才行。
    Caused by: javax.security.sasl.SaslException: GSS initiate failed [Caused by GSSException: No valid credentials provided (Mechanism level: Failed to find any Kerberos tgt)]一种可能是因为Cache过期,通过sudo klist来查看主体的超时时间;
     
    如果想要看keytab文件里面的主体情况可以通过klist -e -k XXX.keytab来查看
    -e代表显示加密类型,一个主体将会有多种加密;-k 代表keytab,后面紧跟着keytab的路径
     
    验证主体是否可以被keytab包含:
    kinit -k -t hdfs.keytab hdfs/master@HADOOP.COM
    -k代表使用keytab,-t代表keytab文件,紧跟着keytab文件路径,最后一个是主体名称;
     
    Kerberos的用户名是由三部分组成:hdfs,是用户名,emr*是指本机的”hostname",@之后则是domain_name,是在/etc/krb5.conf里面配置的内容。
     
    Login failure for hadoop/master@HADOOP.COM from keytab /etc/hasec/hadoop.keytab: javax.security.auth.login.LoginException: Unable to obtain password from user
    我的这个问题是因为生成的keytab文件的默认权限是root,需要修改为hadoop用户权限问题解决
     
    javax.security.auth.login.LoginException: Checksum failed
    可以采用kinit -k -t XXX.keytab user/hostname@YYY.com来对keytab文件进行验证是否可以通过KDC的校验。
    kerberos但是生成了keytab就会随机的生成密码(网调说是添加到krb5.keytab文件),所以admin用户(addprinc username方式添加)和这种用于交互的用户(addprinc -randkey username方式添加)一定是要却分开来;之前我就是hadoop/master@HADOOP.COM用户既作为管理用户也作为交流用户,这是有问题的,一定要区分开来。
    修改密码指令:change_password
     
    Unable to obtain password from user
    因为.keytab文件是root权限,需要通过chown添加当前用户的权限。
     
  • 相关阅读:
    如何使用数据卷在宿主机和docker容器之间共享文件
    Debian 7 安装 Docker
    ajax简单封装
    GridView列的排序功能
    SqlHelper帮助类
    模板引擎小例子
    WCF练习小程序总结
    热线接口开发调试工作记录
    在Oracle中使用rank()over()排名的问题
    项目实施中出现的问题点汇总
  • 原文地址:https://www.cnblogs.com/xiashiwendao/p/7189594.html
Copyright © 2011-2022 走看看