龙空技术网

嗨爆!大数据程序员必备:一站式Kerberos命令集手册全集

大数据从业者FelixZh 91

前言:

而今咱们对“kerberos加密算法是”大体比较关切,你们都需要知道一些“kerberos加密算法是”的相关知识。那么小编也在网上搜集了一些有关“kerberos加密算法是””的相关资讯,希望看官们能喜欢,看官们快快来学习一下吧!

大数据厂商所提供的大数据平台服务,无论基于公有云还是私有云,都不可或缺的要使用Kerberos认证机制。本文根据作者多年大数据平台实战经验,总结出大数据平台使用Kerberos时候的必备命令集(kdb5_util、kadmin、kpasswd、kinit、klist、kdestroy)的所有实践案例。

kdb5_util

用于管理KDC数据库。可以创建、销毁数据库,也可以dump数据库到ASCII文件中或者loadASCII文件到数据库中。运行kdb5_util时,它会尝试获取主密钥并打开数据库。但是,无论kdb5_util是否成功打开数据库,执行都会继续,因为数据库可能还不存在,或者存储文件可能已损坏。

注意:一些KDC数据库模块可能不支持所有kdb5_util命令。

1. 创建KDC数据库

使用如下命令(自行设置数据库密码):

[root@felixzh1 krb5kdc]# kdb5_util create -r FELIXZH.COM –s

2. Dump KDC数据库

将整个KDC数据dump到指定文件dumpFile(不指定文件的话,打印到控制台)

[root@felixzh1 krb5kdc]# kdb5_util dump dumpFile

将单个principal数据dump到指定文件dumpFile1(不指定文件的话,会打印到控制台)

[root@felixzh1 krb5kdc]# kdb5_util dump dumpFile1 root/admin@FELIXZH.COM

将多个principal数据dump到指定文件dumpFile2(不指定文件的话,会打印到控制台)

[root@felixzh1 krb5kdc]# kdb5_util dump -verbose dumpFile2  root/admin@FELIXZH.COM kadmin/admin@FELIXZH.COM

3. Load KDC数据库

[root@felixzh1 krb5kdc]# kdb5_util load -update dumpFile

4. 销毁KDC数据库

[root@felixzh1 krb5kdc]# kdb5_util destroy -r FELIXZH.COM
kadmin

用于principal和keytab的管理:创建、删除、编辑等。服务端或者客户端都可以使用kadmin命令,通过?可以查看所有参数信息:

[root@felixzh1 krb5kdc]# kadmin -q"?"

说明(逗号分隔的参数等价,任选其一即可):

add_principal, addprinc, ank:

添加principal,如果未指定-randkey或-nokey参数,需要设置密码。

delete_principal, delprinc:

删除principal

modify_principal, modprinc:

修改principal

rename_principal, renprinc:

修改principal名称

change_password, cpw:

修改principal密码(注意:不对原密码进行校验,输入两次新密码直接重置)

get_principal, getprinc:

查看principal信息

list_principals, listprincs, get_principals, getprincs:

显示所有principal

add_policy, addpol:

增加策略设置,policy为该条策略的名称

modify_policy, modpol:

修改策略设置,policy为该条策略的名称

delete_policy, delpol:

删除指定策略信息,policy为该条策略的名称

get_policy, getpol:

查看指定策略信息,policy为该条策略的名称

list_policies, listpols, get_policies, getpols:

查看所有的策略列表

get_privs, getprivs:

查看当前权限,超级用户会拥有增删改查权限。

ktadd, xst:

生成新keytab文件(不存在自动创建),或将principal添加到已有keytab文件。

-norandkey参数表示不重置密码。即principal既可以使用原来的密码认证,也可以使用新生成的keytab认证。

另外,上图打印Entry对应于kdc.conf的supported_enctypes配置项8种加密算法。

ktremove, ktrem:

将指定principal从指定keytab文件移除。

get_strings, getstrs:查看指定principal属性信息

set_string, setstr:设置指定principal属性信息

del_string, delstr: 删除指定principal属性信息

kpasswd

服务端和客户端都可以使用kpasswd命令用于修改Kerberos principal密码。修改密码之前会检查当前密码,然后两次输入新密码,即可。如果principal密码指定了校验策略(如长度、字母等),新密码也必须要满足旧密码的校验策略。

语法: kpasswd [principal]

principal为可选项,如果不指定,默认会使用cache缓存中的principal。

kinit

进行principal认证,获取principal授予的票据,并缓存。

方法1:密码

[root@felixzh1 krb5kdc]# kinit root/admin

方法2:keytab文件

[root@felixzh1 krb5kdc]# klist -kt/home/admin.keytab[root@felixzh1 krb5kdc]# kinit -kt/home/admin.keytab root/admin

票据续约:kinit –R。如果失败,需要修改kdc.conf配置项、重启Kerberos服务、销毁重建KDC数据库,重新kinit –R。

klist

查看kaytab文件中principals列表

[root@felixzh1 krb5kdc]# klist -kt/home/admin.keytab
​kdestroy

销毁当前认证票据,删除凭据缓存。该命令不需要任何参数。可使用kdestroy-A清除所有凭据缓存。

标签: #kerberos加密算法是