目录
- 术语说明
- 背景
- 第一部分 Kerberos认证原理
- 第二部分
- 第三部分
- 第五部分 总结
- 参考文献及资料
背景
对于Hadoop
生产集群,通常需要开启安全模式,拦截来自集群外部或者内部的恶意攻击和破坏,保护集群数据和作业运行的安全。
通常企业级集群使用的安全组件为Kerberos
。下面是维基百科的介绍:
Kerberos
是一种计算机网络认证协议,它允许某实体在非安全网络环境下通信,向另一个实体以一种安全的方式证明自己的身份。它的设计主要针对客户-服务器模型,并提供了一系列交互认证——用户和服务器都能验证对方的身份。Kerberos协议可以保护网络实体免受窃听和重复攻击。
这个协议以希腊神话中的人物Kerberos
(或者Cerberus
)命名,他在希腊神话中是Hades
的一条凶猛的三头保卫神犬。在系统设计上Kerberos
采用C/S架构,基于DEC
加密技术,支持客户端和服务器端双向认证。
为什么
Hadoop
集群不基于Linux
实现身份认证?Hadoop
是一个分布式系统,对象是集群级别的多节点。Linux认证管理限制于操作系统层面的单机。所以Hadoop需要基于集群网络的身份认证系统。为什么选择
Kerberos
,而不是SSL
?Kerberos
的性能优于SSL
,而在Kerberos
中管理用户要简单得多。要删除用户,我们只是从Kerberos
中删除它,而撤销SSL
证书是一件复杂的事情。
但是开源Hadoop中没有内置身份认证系统,所以对于生产集群,用户要么自研身份认证组件,要么使用专用的身份认证系统与Hadoop集群集成。
第一部分 Kerberos认证原理介绍
第三部分 常见故障排除
第四部分 总结
1、
https://www.jianshu.com/p/aefd553050e6
参考文献及资料
1、什么是Kerberos?,链接:https://steveloughran.gitbooks.io/kerberos_and_hadoop/content/sections/what_is_kerberos.html
2、维基百科:Kerberos,链接:https://zh.wikipedia.org/wiki/Kerberos
3、Kerberos Concepts - Principals, Keytabs and Delegation Tokens 链接:https://www.cloudera.com/documentation/enterprise/5-8-x/topics/cm_sg_principal_keytab.html