不生产博客,只是别人博客的裁缝
一入kerberos深似海,从此节操是个玩意儿
目录
windows版(win10)
linux版(suse)
kerberos基本操作
cdh启用kerberos后,如果我们需要本地连impala或者hive(本地代码测试或者jdbc工具),都需要在本地装kerberos
如果别的服务器需要通过jdbc访问cdh的服务,也需要安装kerberos客户端
安装包下载地址:
https://web.mit.edu/kerberos/dist/index.html
安装的时候选典型即可
安装完成后,会提示需要重启,可以先配环境变量再重启
配置环境变量
C盘没有ProgramData的话查看隐藏文件即可
其中KRB5_CONFIG路径是固定的,KRB5CCNAME任意目录都可以,picc目录必须手动创建,krb5cache无需创建
修改KRB5_CONFIG配置文件,将kerberos server的 krb5.conf内容复制到krb5.ini
然后修改host文件,将cdh所有的节点的ip 主机名都添加进来,然后就可以重启了
打开kerberos客户端登陆就可以了
如果只是在root用户下安装,按下面流程即可
解压客户端包
rpm -ivh krb5-libs-1.15.1-34.el7.x86_64.rpm
修改/etc/hosts,将cdh所有节点的ip 主机名都添加进来
配置/etc/krb5.conf,默认有内容的,把kerberos server的/etc/krb.conf内容拷过来即可
添加环境变量 vi /etc/profile
export KRB5CCNAME=/tmp/krb5cache
krb5cache文件不需要提前创建
然后就可以kinit了
如果是普通用户安装的话
需要配置普通用户的环境变量
root用户执行:su - user
然后vi .profile添加如下,(如果普通用户没.profile,拷一个过来即可)
export KRB5CCNAME=普通用户家目录/tmp/krb5cache
export KRB5CONF=/etc/krb5.conf
然后source下,就可以kinit了,这样root kinit的时候就不会影响普通用户了
输入kadmin.local进入命令行,或者直接kadmin.local -q ‘要执行的操作’而无需进去命令行
以下示例为2种不同的方式添加用户并指定密码为131420
delprinc删除用户
为用户生成keytab
如果不加-norandkey,生成keytab后,原来的密码就不正确了
xst -norandkey -k /home/keytabs/test.keytab test
修改用户密码cpw
修改完用户密码,用户的keytab也得重新生成,原先的keytab已无法过认证
暂且叫切用户吧kinit,keytab认证无需输密码,直接kinit user需要输密码
kinit -kt xxx.keytab user
kinit user