kerberos的使用
KDC常用操作
kadmin.local :打开KDC控制台,需要root权限
addprinc :添加用户
1 2 3 4 5
| 添加用户,密码随机 addprinc -randkey root/admin
添加用户,输入用户密码 addprinc root/admin
|
delprinc :删除principle
xst -k keytab文件 用户:导出keytab文件
1
| xst -k /xxx/xxx/kerberos.keytab hdfs/admin
|
getprinc:查看指定Principal的信息,包括每种密钥的加密类型、KVNO标签等
listprincs:列出所有Principal,在KDC控制台使用
二、Client 常用操作
klist :列出当前系统用户的Kerberos认证情况
klist -kt :列出指定Keytab文件中包含的Principal信息,需要该文件的读权限
kinit :使用输入密码的方式认证指定的Principal
kinit -kt :使用指定Keytab中的指定Principal进行认证,需要该文件的读权限
1
| kinit -kt keytab文件 test/admin@HADOOP.COM
|
kdestroy :注销当前已经认证的Principal
三、ktutil :进入Keytab工具控制台
klist:查看当前ktutil中的秘钥表
1 2 3
| ktutil: list slot KVNO Principal ---- ---- ---------------------------------------------------------------------
|
rkt keytab文件:读取一个Keytab中的所用Principal信息到密钥表,需要有该文件的读权限
1 2 3 4 5 6 7 8 9 10
| rkt /home/installer/test_kt.keytab
ktutil: list slot KVNO Principal ---- ---- --------------------------------------------------------------------- 1 2 test_kt/hadoop1.tingyun.com@TINGYUN.COM 2 2 test_kt/hadoop1.tingyun.com@TINGYUN.COM rkt /home/kerberos/kudu2.keytab
|
wkt keytab文件:将密钥表中的所有Principal信息写入指定文件中。如果文件已存在,则需要该文件的写权限,信息会附加至文件末
1
| wkt /home/installer/test_kt2.keytab
|
addent -password -p -k -e :手动添加一条Principal信息到密钥表,执行后需要输入指定Principal的密码。-e后面添加内容需要先执行klist -e
1
| addent -password -p zhs2/admin@HENGHE.COM -k 1 -e aes128-cts-hmac-sha1-96
|
delent:从密钥表中删除指定行号的Principal信息,行号可使用list或者l命令查看
quit :退出ktutil控制台
https://blog.csdn.net/weixin_42728895/article/details/114532759
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| # 列出Kerberos中的所有认证用户,即principals kadmin.local -q "list_principals" # 添加认证用户,需要输入密码 kadmin.local -q "addprinc user1" # 使用该用户登录,获取身份认证,需要输入密码 kinit user1 # 查看当前用户的认证信息ticket klist # 更新ticket kinit -R # 销毁当前的ticket kdestroy # 删除认证用户 kadmin.local -q "delprinc kudu/hadoop3.tingyun.com@TINGYUN.COM"
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| 导出时 ,一定要 + -norandkey参数, ktadd -k /home/kerberos/kudu2.keytab -norandkey kudu/hadoop2.tingyun.com@TINGYUN.COM ktadd -k /home/kerberos/kudu2.keytab -norandkey HTTP/hadoop2.tingyun.com@TINGYUN.COM ktadd -k /home/kerberos/kudu2.keytab -norandkey kudu/hadoop3.tingyun.com@TINGYUN.COM
addprinc druid/hadoop@TINGYUN.COM trino
ktadd -k /home/kerberos/trino.keytab -norandkey trino@TINGYUN.COM ktadd -k /home/kerberos/trino2.keytab -norandkey trino1/hadoop@TINGYUN.COM
addprinc druid/hadoop@TINGYUN.COM ktadd -k /home/kerberos/druid.keytab -norandkey druid/hadoop@TINGYUN.COM
klist -k /root/kudu.keytab
xst -k /var/kerberos/keytab/kudu.keytab kudu/hadoop2.tingyun.com@TINGYUN.COM
ktpass -princ hdfs/admin@FAYSON.COM -mapuser hdfs/admin -pass 123!QAZ -out hdfsadmin.keytab -crypto RC4-HMAC-NT
|