整套大数据学习资料(视频+笔记)百度网盘无门槛下载:http://www.edu360.cn/news/content?id=3377

9.6.3其他安全性改进

hadoop 小红牛 21℃ 0评论

HDFS和MapReduce已经全面强化了安全措施,以阻止用户在未授权的情

况下访问资源。®—些显著的变化如下。

•任务可以由提交作业的用户以操作系统帐号启动运行,而不一定要
由运行tasktracker的用户启动。这意味着,在这种情况下,可以借助操作系统来隔离正在运行的任务,使它们之间无法相互传送指令
(例如,终止其他用户的任务),这样的话,诸如任务数据等本地信 息的隐私即可通过本地文件系统的安全性而得到保护。

要启用这项特性,需要将
mapped.task.tracker.task-controller 属性设置为
org.apache.hadoop.mapred.LinuxTaskController。此外,管理员还需确保各用户在集群的每个节点上都已经分配帐号
(一般使用LDAP)。

•当任务由提交作业的用户启动运行时,分布式缓存(参见8.4.2节) 是安全的:把所有用户均可读的文件放到共享缓存中(默认的非安 全方式),把其他文件放在私有缓存中,仅限拥有者读取。

•用户只能査看和修改自己的作业,无法操控他人的作业。为了启动
该特性,需要将mapred.acls.enabled属性项设为true。另外,mapreduce.job.acl-view-job 和
mapreduce.job.acl- modify-job属性分别对应一个逗号分隔的用户列表,描述能够查 看或修改指定作业的所有用户。

• shuffle是安全的,可以阻止恶意用户请求获取其他用户的map输 出。然而,由于shuffle并未加密,易受到恶意嗅探(sniffing)攻击。

•正确配置之后,可以阻止恶意的辅助namenode、datanoe或 tasktracker加入集群,从而破坏集群中的数据。这可以通过要求 master节点对试图与之连接的守护进程进行认证来实现。

为了启用该特性,需要使用先前由ktutil命令创建的知声^文件来
配置 Hadoop。以 datanode 为例,首先,把 dfs.datanode.keytab.
file属性设置为keytab文件名称;其次,把dfs.datanode.
kerberos.principal.•属性设置为要用的datanode用户名称;最 后,把 hadoop-policy.xm!文件中
security.datanode.protocol.acl 属性设置为datanode的用户名称,以设置DataNodeProtocol的
ACL。DatanodeProtocol 是 datanode 用于和 namenode 通信的协 议类。

• datanode最好运行在特权端口(端口号小于1024),使客户端确信它

是安全启动的。

•任务只与其父tasktracker通信,从而阻止攻击者经由其他用户的作 业获取MapReduce数据。

到目前为止,Hadoop还未考虑数据加密问题:不管是RPC还是块传输,数
据均未被加密。此外,HDFS块也没有以加密方式被存储。这些特性预计会 被加到未来发布中去。实际上,可以将当前Hadoop版本与特定应用程序相
结合,以提供加密特性。(例如,实现加密接口 CompressionCodec)。

转载请注明:全栈大数据 » 9.6.3其他安全性改进

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址