Kerberos作用

简单来说安全相关一般涉及以下方面:用户认证(Kerberos的作用)、用户授权、用户管理.。而Kerberos功能是用户认证,通俗来说解决了证明A是A 的问题。

认证过程(时序图)

Kerberos集成yarn kerberos api_实例名

核心角色/概念

  • KDC:密钥分发巾心,负责管理发放票据,记录授权。
  • Realm: Kerberos管理领域的标识。
  • principal:Kerberos 下的用户可以称为 Principal,当每添加一个用户或服务的时候都需要向kdc添加一条principal, principal的形式为:主名称/实例名@领域名。
    1)用户principal
    用户principal的形式:
    Name[/Instance]@REALM
    其中Instance是可选 的,通常用于更好地限定用户的类型。比如,一个管理员用户通常会有admin instance,即Name/admin@REALM。
    下面是指代用户的 一些principal的例子:
    pippo@EXAMPLE.COM
    admin/admin@EXAMPLE.COM
    cnicetoupp/admin@EXAMPLE.COM
    2)服务principal
    用户principal的形式:
    Service/Hostname@REALM
    第一部分是service的名字,比如imap, AFS, ftp. 通常'host'这个名字被用于指明对一台机器的通用的访问(telnent, rsh, ssh)。
    第二个component是提供这个服务的机器的全限定域名(FQDN)。这个component跟DNS对应用服务器的IP地址进行逆向解析后得到的主机名。
    下面是指代服务principal的例子:
    imap/hadoop-node1@EXAMPLE.COM
    host/hadoop-node1@EXAMPLE.COM
    afs/hadoop-node1@EXAMPLE.COM
  • 主名称:主名称可以是用户名或服务名,表示是用于提供各种网络服务(如hdfs、yam,、hive) 的主体。
  • 实例名:实例名简单理解为主机名。
  • keytab文件:存储了用户的加密密码。常用这种方式认证。

常用认证相关命令

  1. 登录控制台
kadmin.local
  1. 用户创建
kadmin.local -q "addprinc -pw 111111 testuser"
  1. 用户生成授权
kadmin.local -q "xst -k user.keytab user@BLUE.COM"
  1. 使用授权
kinit  test.keytab testuser@xxx.com
  1. 查看当前认证信息
klist
  1. 销毁当前认证
kdestory

官方使用文档

详细的官方使用文档、命令可以参考官方链接:[https://web.mit.edu/kerberos/krb5-latest/doc/](https://web.mit.edu/kerberos/krb5-latest/doc/)

win客户端,访问Kerberos大数据组件页面

  1. 下载客户端安装 http://web.mit.edu/kerberos/dist/
  2. 复制远程服务器/etc/krb5.conf里面的内容到本机:C:\ProgramData\MIT\Kerberos5\krb.ini

大数据组件相关问题