Kerberos Ticket管理

Kerberos Ticket管理


本章介绍如何管理您的Kerberos Ticket,这里的Ticket是指Ticket-Granting-Ticket(TGT),是您访问集群中服务的凭证。咱们假设您已经有本身的principal和密码(或者keytab),若是您尚未这些信息,请联系您的系统管理员获取。下面的指令您能够在安装了Kerberos或Guardian的集群中任意一台机器上执行。node

1. 获取Ticket: kinit

若是您当前的session中没有ticket或者ticket已过时,您都须要使用kinit指令来获取 ticket。您只需执行:session

kinit <your_principal>

这里<your_principal>处提供您的principal并在系统提示下输入密码,便可获取一张ticket。命令行

举例:Alice用户获取ticket:
[root@tw-node118 ~]# kinit alice@TDH
Password for alice@TDH:

若是您的密码存在keytab文件中并想要提供keytab文件进行认证,您须要执行:ip

kinit <your_principal> -kt <keytab_path>

这里<keytab_path>处提供您keytab文件的路径。这个路径能够是绝对路径也能够是相对路径。由于提供keytab文件就是在提供密码,因此您无需再输入密码。ci

举例:Alice用户经过提供keytab获取ticket:
[root@tw-node118 ~]# kinit alice@TDH -kt /root/.keytab

2. 查看Ticket: klist

要查看您当前的session是否有ticket以及ticket的有效期,您只须要在命令行执行klist。it

举例:当前session没有ticket:
[root@tw-node118 ~]# klist
klist: No credentials cache found (ticket cache FILE:/tmp/krb5cc_0)
举例:当前session有ticket:
[root@tw-node118 ~]# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: alice@TDH
Valid starting
Expires
11/26/15 19:04:19 11/27/15 05:04:19
renew until 12/03/15 19:04:19
Service principal
krbtgt/TDH@TDH

在这里您能够看到ticket的过时时间,若是根据这个信息当前session中的ticket已通过期,您是没法访问服务的。您须要使用kinit指令从新获取ticket。io

3. 销毁Ticket: kdestroy

当您结束对集群服务的使用,能够用kdestroy指令手动销毁您的ticket,以防别人持您的ticket来使用您的数据和应用。class

举例
[root@tw-node118 ~]# klist
Ticket cache: FILE:/tmp/krb5cc_0
Default principal: alice@TDH
Valid starting
Expires
11/26/15 19:11:31 11/27/15 05:11:31
renew until 12/03/15 19:11:31
[root@tw-node118 ~]# kdestroy
[root@tw-node118 ~]# klist
Service principal
krbtgt/TDH@TDH
klist: No credentials cache found (ticket cache FILE:/tmp/krb5cc_0)

当前session没有ticket说明ticket已经被销毁。集群