Kerberos Ticket管理
本章介绍如何管理您的Kerberos Ticket,这里的Ticket是指Ticket-Granting-Ticket(TGT),是您访问集群中服务的凭证。我们假设您已经有自己的principal和密码(或者keytab),如果您还没有这些信息,请联系您的系统管理员获取。下面的指令您可以在安装了Kerberos或Guardian的集群中任意一台机器上执行。
1. 获取Ticket: kinit
如果您当前的session中没有ticket或者ticket已过期,您都需要使用kinit指令来获取 ticket。您只需执行:
kinit
这里<your_principal>处提供您的principal并在系统提示下输入密码,即可获取一张ticket。
举例:Alice用户获取ticket:
[root@tw-node118 ~]# kinit alice@TDHPassword for alice@TDH:
如果您的密码存在keytab文件中并想要提供keytab文件进行认证,您需要执行:
kinit-kt
这里<keytab_path>处提供您keytab文件的路径。这个路径可以是绝对路径也可以是相对路径。因为提供keytab文件就是在提供密码,所以您无需再输入密码。
举例:Alice用户通过提供keytab获取ticket:
[root@tw-node118 ~]# kinit alice@TDH -kt /root/.keytab
2. 查看Ticket: klist
要查看您当前的session是否有ticket以及ticket的有效期,您只需要在命令行执行klist。
举例:当前session没有ticket:
[root@tw-node118 ~]# klistklist: No credentials cache found (ticket cache FILE:/tmp/krb5cc_0)
举例:当前session有ticket:
[root@tw-node118 ~]# klistTicket cache: FILE:/tmp/krb5cc_0Default principal: alice@TDHValid startingExpires11/26/15 19:04:19 11/27/15 05:04:19renew until 12/03/15 19:04:19Service principalkrbtgt/TDH@TDH
在这里您可以看到ticket的过期时间,如果根据这个信息当前session中的ticket已经过期,您是无法访问服务的。您需要使用kinit指令重新获取ticket。
3. 销毁Ticket: kdestroy
当您结束对集群服务的使用,可以用kdestroy指令手动销毁您的ticket,以防别人持您的ticket来使用您的数据和应用。
举例
[root@tw-node118 ~]# klistTicket cache: FILE:/tmp/krb5cc_0Default principal: alice@TDHValid startingExpires11/26/15 19:11:31 11/27/15 05:11:31renew until 12/03/15 19:11:31[root@tw-node118 ~]# kdestroy[root@tw-node118 ~]# klistService principalkrbtgt/TDH@TDHklist: No credentials cache found (ticket cache FILE:/tmp/krb5cc_0)
当前session没有ticket说明ticket已经被销毁。