标签(空格分隔): hadoop安全系列
- 一:hadoop安全背景
- 二: Kerberos基本概念
#一: hadoop安全背景
##1.1、共享集群
1. 按照业务或应用的规划份资源队列,并分配给特定用户
2. hdfs上存放各种数据,包括公共的,机密的
##1.2、重要概念
1.安全认证:
确保某个用户是自己声称的那个用户
2.安全授权:
确保某个用户只能做它允许的那些操作
3. user :
hadoop 用户,可以提交作业,查看自己作业状态,查看HDFS上的文件
4. Service:
Hadoop 中的服务组件,包括:
namenode ,resourcemanager ,datanode, nodemanager
##1.3、hadoop1.0 的安全问题
1.User to Service
Namenode或者jobtracker缺乏安全认证机制
DataNode缺乏安全授权机制
JobTracker缺乏安全授权机制
2.Service to service安全认证
Datanode与TaskTracker缺乏安全授权机制,这使得用户可以随意启动假的datanode和tasktracker
3.磁盘或者通信连接没有经过加密
4. Apache Hadoop 1.0.0版本和Cloudera CDH3之后的版本添加了安全机制
Hadoop提供了两种安全机制:Simple和Kerberos
4.1:Simple
采用SAAS协议,默认机制
配置简单、使用简单、适合单一团队使用
4.2: kerberos
Kerberos可以将认证的密钥在集群部署时事先放到可靠的节点上。只有被认证过节点才能正常使用,配置稍复杂、使用稍麻烦、安全性高
1. kerberos实现的是机器级别的安全认证,也就是服务到服务的认证
2. 解决服务器到服务器的认证
2.1、防止了用户伪装成Datanode,Tasktracker,去接受JobTracker,Namenode的任务指派
3. 解决client到服务器的认证
Kerberos对可信任的客户端提供认证,确保他们可以执行作业的相关操作
4. 对用户级别上的认证并没有实现
无法控制用户提交作业的操作
Principal(安全个体):被认证的个体,有一个名字和口令
KDC(key distribution center ) : 是一个网络服务,提供ticket 和临时会话密钥
Ticket:一个票据,客户用它来向服务器证明自己的身份,包括客户标识、会话密钥、时间戳。
AS (Authentication Server): 认证服务器
TGS(Ticket Granting Server): 许可证服务器
TGT:Ticket-granting Ticket
分两部分
Client从KDC获取TGT
Client利用获取的TGT向KDC请求其他Service的Ticket
认证过程也是Session Key安全发布的过程
原文地址:http://blog.51cto.com/flyfish225/2113875