Kerberos及其工作原理
Kerberos是认证协议,它假设主机是可信任的,但是网络不是。Kerberos安全涉及三个关键实体:
- 想要认证自身的用户
- 用户尝试验证的服务
- Kerberos安全服务器(密钥分发中心或KDC),受用户和服务信任。KDC存储用户和服务的秘密密钥
Kerberos主要的术语和管理实体:
密钥分发中心(KDC)
KDC是包含加密数据库的Kerberos服务器,存储用户 、主机和服务相关的主题信息。
认证服务(AS)
一旦用户成功地向AS完成了身份验证,AS便会向安全集群中的其他服务认证的客户端授予TGT
TGS
票据验证服务器验证客户端传递的TGT,然后给客户端服务授予票据,以便他们可以访问Hadoop服务。
KeyTab文件
Keytab文件是一个安全文件,其中包含雨中所有服务主体主体的密码。
主节点和客户端安装Kerberos服务
主节点Kerberos服务安装
代码语言:javascript复制yum -y install krb5-server krb5-libs krb5-auth-dialog krb5-workstation
修改配置文件/etc/krb5.conf
修改配置文件/var/kerberos/krb5kdc/kadm5.acl
修改配置文件/var/kerberos/krb5kdc/kdc.conf
创建数据库,此处设置密码为123456
代码语言:javascript复制kdb5_util create -r CMBCHINA.CN -s
添加管理员账号admin/admin,此处密码设置为123456
启动kadmin与kdc,并添加到开机自启动
验证安装成功
安装客户端,每个节点安装
代码语言:javascript复制yum -y install krb5-libs krb5-workstation
同步配置文件到每个节点
代码语言:javascript复制./batch_scp.sh node.list /etc/krb5.conf /etc
添加cloudera-scm/admin用户,密码设置为123456
集群启用Kerberos
登录CM主页,选择“安全”
点击“启用Kerberos”
确保执行完成下列步骤
修改相关配置信息
不通过Cloudera Manager管理krb5.conf文件
输入创建用户的凭据
导入成功
配置Kerberos和DataNode端口
重启集群
Kerberos启用成功