Hadoop2.x 安全:hadoop 集群之 kerberos 认证 (一、原理 + 安装配置)
一、为什么启用Kerberos安全认证
大家都知道,Hadoop1.0.0或者CDH3版本以前,并没有安全认证的概念,用户与HDFS文件系统或者提交分布式任务(Mapreduce、Spark)都是不需要认证的,这样就导致任意用户都可以智联集群进行操作和任务提交;测试环境的恶意操作我们还能接受,如果是生产环境恶意的提交作业,修改文件和数据将会造成严重的后果。
鉴于安全认证的迫切性,Hadoop1.0.0或CDH3b版本以后都加入了Kerberos认证机制。开启Kerberos认证的集群运行时,集群内的节点使用密钥得到认证。只有被认证过节点才能正常使用。企图冒充的节点由于没有事先得到的密钥信息,无法与集群内部的节点通信。防止了恶意的使用或篡改Hadoop集群的问题,确保了Hadoop集群的可靠安全。
二、Kerberos认证解决的问题
1.集群节点之间的认证
kerberos实现是服务器节点之间的认证,首先由管理员在KDC服务器节点将集群所有节点加到Kerberos认证数据库中,然后生成主机与各个节点的Keytab
文件,并分发到集群各个节点,然后通过认证文件
和认证密钥
进行通信认证。
2.client与服务器端的认证
与服务器节点间认证原理相同,客户端通过keytab文件和密钥连接集群,与集群进行通信。
3.未实现用户级别的认证
Kerberos只是控制集群的登录,相当于一把钥匙打开了进入集群操作的大门,并没有实现用户操作权限的管理,这一点要搞清楚,举个例子:有一个房间,Kerberos相当于房间的钥匙,有了钥匙之后才可以进行房间,这是Kerberos干的事,进入之后至于你干什么这个不在Kerberos管理的范围之内,这是权限认证的东西,一般我们生产上是通过Ranger去做权限认证。
二、Kerberos认证基本原理
基本认证原理请参考CSDN这位大牛的分析:
参考链接:
https://blog.csdn.net/kwame211/article/details/78728989
相关文章:
Hadoop2.x安全:hadoop集群之kerberos认证(一、原理+安装配置)
Hadoop2.x安全:hadoop集群之kerberos认证(二、Ambari开启)
Hadoop2.x安全:hadoop集群之kerberos认证(三、常用命令、有效期)
为者常成,行者常至
自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)