当前位置: 代码迷 >> 综合 >> 企业级大数据的安全方案 Kerberos 的 expire 及 renew说明
  详细解决方案

企业级大数据的安全方案 Kerberos 的 expire 及 renew说明

热度:58   发布时间:2023-12-09 22:38:27.0

企业级大数据集群有两个层面的安全系统:

一个是每一台服务器的本地有个linux的账户系统,这个可以批量处理配置。为每个服务器建立一个本地的账号和组。用这个账号去SSH登录。

另一个就是大数据集群,即Hadoop的账号系统,是Hadoop通过 Kerberos 协议实现的。Kerberos是一个协议,而具体实现这种协议的组件有几个,一般比较广泛使用的是FreeIPA(顾名思义:免费的)。所以在每台节点上,会装一个ipa client, 用这个 client 向 装了ipa server的服务器申请票据。票据就是登录的一个凭证。

得到票据后,这个principal (principal 简单理解就是账号的意思)具体有哪些权限呢?

这时候LDAP登场了,他来判定这个账号的权限。FreeIPA 里集成了 ldap 的功能。

 

一些备注:

https://www.systutorials.com/docs/linux/man/1-ipa-getkeytab/

https://www.freebuf.com/sectool/125387.html

Most people will not use Kerberos by itself; once an user is authenticated (Kerberos), we need to figure out what this user can do (authorization). And that would be the job of programs such as LDAP.

 

这里讲一下Kerberos:

kerberos可以用kinit得到一个ticket(又叫tgt), 在这个ticket生效期间不用输入密码, ticket可以不停续期, 有一个expire日期,下面的例子是12月07到12月08的一天时间, 但是生效期内可以通过 kinit -R 来续期这个ticket, 但是还有个renew until, 表示最长可以续期多久, 下面例子表示12/12号以后,  kinit -R 就不能续期了.

这个ticket和keytab无关, keytab是一个密码文件, 加密了你的密码而已.

Execute a klist command to verify the values that the system actually granted you.

Ticket cache: FILE:/tmp/krb5cc_1234
Default principal:someuser@UCAR.EDU
Valid starting Expires Service principal
12/07/15 13:00:05 12/08/15 13:00:01 krbtgt/UCAR.EDU@UCAR.EDU
renew until 12/12/15 15:48:44

The ticket will expire like an ordinary ticket in 24 hours, but you can renew multiple times before its expiration, until the final expiration date (Dec 12 in the example above). You must do the kinit command interactively because you will have to provide your Kerberos passphrase; this cannot be put into a cron job or other unattended situation.