一、测试环境及主要内容
- 测试环境
- CentOS Linux release 7.6.1810
- CDH 6.2.0
- Cloudera Manager 6.2.0
- 内容概述
- Kerberos概述
- 安装配置KDC服务
- 通过CDH启用Kerberos
二、Kerberos概述
Hadoop使用Kerberos作为用户和服务的强身份验证和身份传播的基础。Kerberos是一种计算机网络认证协议,它允许某实体在非安全网络环境下通信,向另一个实体以一种安全的方式证明自己的身份。 Kerberos是第三方认证机制,其中用户和服务依赖于第三方(Kerberos服务器)来对彼此进行身份验证。 Kerberos服务器本身称为密钥分发中心或KDC。
二、安装配置KDC服务
- Server节点的软件安装
yum install -y krb5-server krb5-workstation krb5-libs
rpm -qa | grep krb5 #查看是否安装
- Client节点安装
yum install -y krb5-workstation krb5-libs
- KDC配置(服务端的配置)
vim /var/kerberos/krb5kdc/kdc.conf
注:绿框中第一个按照自己的领域名进行修改(可以自定义但后面配置需要保持一致)第二个配置是指票据授权票的有效期为一天,但可刷新七次,免密7天。删除了aes456-cts这个校验方式。
- krb5配置(客户端配置)
vim /etc/krb5.conf
注意:这里都是更改过的,可对比原配置改。这个配置中还有一个域名与领域的映射关系,因为这里集群小,只有一个领域(HADOOP.COM),所以没有配置
scp /etc/krb5.conf root@xxxnodex:/etc/ #根据自己的节点分发配置文件
- 生成数据库
kdb5_util create -s
注:设置密码即可
创建好数据库会在这个目录下生成这些文件
- 创建kerberos的管理账号
kadmin.local -q "addprinc admin/admin@HADOOP.COM"
- 赋予kerberos管理员所有权限
vim /var/kerberos/krb5kdc/kadm5.acl
这里要更改的是EXAMPLE为HADOOP
- 开启服务进程和设置服务开机自启
systemctl enable krb5kdc systemctl enable kadmin systemctl start krb5kdc systemctl start kadmin
三、在CDH上启用Kerberos
- 为CM创建管理用户
注意:这个记住后面要用。
- 进入CM平台
- 确保下列都完成并勾选
- 加密类型、KDC服务器
- 不勾选
- 输入CM的kerberos的管理账号,一定要和第一步创建的一样。(下图中的MGONE按照前面的应该是HADOOP)
- 点击继续
- 继续
- 重启集群
- 开启成功