我的编程空间,编程开发者的网络收藏夹
学习永远不晚

hadoop和hbase的安全认证Kerberos部署

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

hadoop和hbase的安全认证Kerberos部署

(接上一篇)

五、Kerberos

1、jsvc

所有节点:

# cd ~/soft

# wget http://mirror.bit.edu.cn/apache/commons/daemon/source/commons-daemon-1.0.15-native-class="lazy" data-src.tar.gz

# tar zxfcommons-daemon-1.0.15-native-class="lazy" data-src.tar.gz

# cd commons-daemon-1.0.15-native-class="lazy" data-src/unix;./configure; make

# cp jsvc /usr/local/hadoop-2.4.0/libexec/

# cd ~/soft

# wgethttp://mirror.bit.edu.cn/apache//commons/daemon/binaries/commons-daemon-1.0.15-bin.tar.gz

# tar zxf commons-daemon-1.0.15-bin.tar.gz

# cpcommons-daemon-1.0.15/commons-daemon-1.0.15.jar/usr/local/hadoop-2.4.0/share/hadoop/hdfs/lib/

# cpcommons-daemon-1.0.15/commons-daemon-1.0.15.jar/usr/local/hadoop-2.4.0/share/hadoop/httpfs/tomcat/webapps/webhdfs/WEB-INF/lib/

# rm -f /usr/local/hadoop-2.4.0/share/hadoop/hdfs/lib/commons-daemon-1.0.13.jar

# rm -f/usr/local/hadoop-2.4.0/share/hadoop/httpfs/tomcat/webapps/webhdfs/WEB-INF/lib/commons-daemon-1.0.13.jar

# # vim/usr/local/hadoop-2.4.0/etc/hadoop/hadoop-env.sh

                   exportJSVC_HOME=/usr/local/hadoop-2.4.0/libexec/

2、256位加密

所有节点:

# wget–c http://download.oracle.com/otn-pub/java/jce/7/UnlimitedJCEPolicyJDK7.zip?AuthParam=1400207941_ee158c414c707a057960c521a7b29866

# unzipUnlimitedJCEPolicyJDK7.zip

# cp UnlimitedJCEPolicyadmin@cc.cn *

创建数据库

# kdb5_util create -r cc.cn –s

Enter KDC database master key:

启动及开机启动

# service krb5kdc start

# service kadmin start

# chkconfig krb5kdc on

# chkconfig kadmin on

创建管理员用户

# kadmin.local

kadmin.local:  addprinc root/admin

Enter password for principal "root/admin@cc.cn":

六、Hadoop整合Kerberos

1、配置节点认证

主机test1:

# yum -y install krb5\*

# scp test3:/etc/krb5.conf /etc/

# kadmin –p root/admin

kadmin: addprinc -randkey root/test1

kadmin: addprinc -randkey HTTP/test1

kadmin: ktadd -k /hadoop/krb5.keytab root/test1 HTTP/test1

主机test2:

# yum -y install krb5\*

# scp test3:/etc/krb5.conf /etc/

# kadmin -p root/admin

kadmin: addprinc -randkey root/test2

kadmin: addprinc -randkey HTTP/test2

kadmin: ktadd -k /hadoop/krb5.keytab root/test2 HTTP/test2

主机test3:

# kadmin.local

kadmin.local:   addprinc -randkey root/test3

kadmin.lcoal:   addprinc -randkey HTTP/test3

kadmin.local:   ktadd -k /hadoop/krb5.keytab root/test3 HTTP/test3

2、添加配置

配置文件core-site.xml

主机test1:

# vim/usr/local/hadoop-2.4.0/etc/hadoop/core-site.xml

<property>

       <name>hadoop.security.authentication</name>

       <value>kerberos</value>

</property>

<property>

       <name>hadoop.security.authorization</name>

       <value>true</value>

</property>

配置文件hdfs-site.xm

主机test1:

# vim /usr/local/hadoop-2.4.0/etc/hadoop/hdfs-site.xml

<property>

       <name>dfs.journalnode.keytab.file</name>

       <value>/hadoop/krb5.keytab</value>

</property>

<property>

       <name>dfs.journalnode.kerberos.principal</name>

       <value>root/_HOST@cc.cn</value>

</property>

<property>

       <name>dfs.journalnode.kerberos.internal.spnego.principal</name>

       <value>HTTP/_HOST@cc.cn</value>

</property>

<property>

       <name>dfs.block.access.token.enable</name>

       <value>true</value>

</property>

<property>

       <name>dfs.namenode.keytab.file</name>

       <value>/hadoop/krb5.keytab</value>

</property>

<property>

       <name>dfs.namenode.kerberos.principal</name>

       <value>root/_HOST@cc.cn</value>

</property>

<property>

       <name>dfs.web.authentication.kerberos.keytab</name>

       <value>/hadoop/krb5.keytab</value>

</property>

<property>

       <name>dfs.web.authentication.kerberos.principal</name>

       <value>HTTP/_HOST@cc.cn</value>

</property>

<property>

       <name>ignore.secure.ports.for.testing</name>

       <value>true</value>

</property>

<property>

       <name>dfs.datanode.keytab.file</name>

       <value>/hadoop/krb5.keytab</value>

</property>

<property>

       <name>dfs.datanode.kerberos.principal</name>

       <value>root/_HOST@cc.cn</value>

</property>

<property>

       <name>hadoop.http.staticuser.user</name>

       <value>root</value>

</property>

配置文件yarn-site.xml

主机test1:

# vim/usr/local/hadoop-2.4.0/etc/hadoop/yarn-site.xml

<property>

       <name>yarn.resourcemanager.keytab</name>

       <value>/hadoop/krb5.keytab</value>

</property>

<property>

       <name>yarn.resourcemanager.principal</name>

       <value>root/_HOST@cc.cn</value>

</property>

<property>

       <name>yarn.nodemanager.keytab</name>

       <value>/hadoop/krb5.keytab</value>

</property>

<property>

       <name>yarn.nodemanager.principal</name>

       <value>root/_HOST@cc.cn</value>

</property>

配置文件mapred-site.xml

主机test1:

# vim /usr/local/hadoop-2.4.0/etc/hadoop/mapred-site.xml

<property>

       <name>mapreduce.jobhistory.keytab</name>

       <value>/hadoop/krb5.keytab</value>

</property>

<property>

       <name>mapreduce.jobhistory.principal</name>

       <value>root/_HOST@cc.cn</value>

</property>

3、同步配置文件

主机test1:

# scp -r/usr/local/hadoop-2.4.0/ test2:/usr/local/

# scp -r/usr/local/hadoop-2.4.0/ test3:/usr/local/

4、启动

主机test1:

# start-all.sh

5、验证

主机test3:

# kinit -k -t /hadoop/krb5.keytab root/test3

# hdfs dfs –ls /

七、Hbase整合Kerberos

1、添加配置

配置文件hbase-site.xml

主机test1:

# vim/usr/local/hbase-0.98.1/conf/hbase-site.xml

<property>

       <name>hbase.security.authentication</name>

       <value>kerberos</value>

</property>

<property>

       <name>hbase.security.authorization</name>

        <value>true</value>

</property>

<property>

       <name>hbase.rpc.engine</name>

       <value>org.apache.hadoop.hbase.ipc.SecureRpcEngine</value>

</property>

<property>

       <name>hbase.coprocessor.region.classes</name>

       <value>org.apache.hadoop.hbase.security.token.TokenProvider</value>

</property>

<property>

       <name>hbase.master.keytab.file</name>

       <value>/hadoop/krb5.keytab</value>

</property>

<property>

       <name>hbase.master.kerberos.principal</name>

       <value>root/_HOST@cc.cn</value>

</property>

<property>

       <name>hbase.regionserver.keytab.file</name>

       <value>/hadoop/krb5.keytab</value>

</property>

<property>

       <name>hbase.regionserver.kerberos.principal</name>

       <value>root/_HOST@cc.cn</value>

</property>

2、同步配置文件

主机test1:

# scp/usr/local/hbase-0.98.1/conf/hbase-site.xml test2:/usr/local/hbase-0.98.1/conf/

# scp /usr/local/hbase-0.98.1/conf/hbase-site.xmltest3:/usr/local/hbase-0.98.1/conf/

3、启动

主机test1:

# start-hbase.sh

4、验证

主机test3:

# kinit -k -t /hadoop/krb5.keytab root/test3

# hbase shell

八、集群连接方式

1、keytab文件位置

/etc/xiaofeiyun.keytab

创建过程

主机test1:

# kadmin -p root/admin

Password for root/admin@cc.cn:

kadmin: addprinc -randkey data/xiaofeiyun

kadmin: addprinc -randkey platform/xiaofeiyun

kadmin: ktadd -k /etc/xiaofeiyun.keytab data/xiaofeiyun platform/xiaofeiyun

# scp /etc/xiaofeiyun.keytab test2:/etc/

# scp /etc/xiaofeiyun.keytab test3:/etc/

2、krb5.conf文件位置

/etc/krb5.conf

3、hadoop连接

conf.set("fs.defaultFS","hdfs://cluster1");

conf.set("dfs.nameservices","cluster1");

conf.set("dfs.ha.namenodes.cluster1","test1,test2");

conf.set("dfs.namenode.rpc-address.cluster1.test1","test1:9000");

conf.set("dfs.namenode.rpc-address.cluster1.test2","test2:9000");

conf.set("dfs.client.failover.proxy.provider.cluster1","org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider");

4、hbase连接

<name>ha.zookeeper.quorum</name>

<value>test1:2181,test2:2181,test3:2181</value>


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

hadoop和hbase的安全认证Kerberos部署

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何使用Python实现对ElasticSearch的安全认证和权限管理?(在Python中,怎样进行ElasticSearch的安全认证和权限设置?)

在Python中实现Elasticsearch安全认证和权限管理涉及以下步骤:创建用户,设置密码和角色。创建角色,指定索引权限。将角色与用户关联。启用安全。启用TLS以加密通信。使用用户名和密码进行身份验证。检查用户权限。最佳实践包括使用强密码、定期轮换密码、创建多个角色和限制特权访问。遵循这些步骤可确保Elasticsearch集群免受未经授权的访问和安全威胁。
如何使用Python实现对ElasticSearch的安全认证和权限管理?(在Python中,怎样进行ElasticSearch的安全认证和权限设置?)
2024-04-02

如何解决PHP开发中的安全认证和权限管理

随着互联网的发展,Web应用程序的安全性变得越来越重要。在PHP开发中,安全认证和权限管理是必不可少的。本文将介绍如何解决PHP开发中的安全认证和权限管理,并提供具体的代码示例。一、安全认证(Authentication)安全认证是验证用户
2023-10-21

如何解决PHP开发中的安全认证和授权问题

在PHP开发中,安全认证和授权问题是非常重要的,尤其是在涉及到用户登录、访问控制和权限管理等方面。本文将介绍一些解决PHP开发中安全认证和授权问题的方法,并提供具体的代码示例。一、安全认证(Authentication)安全认证是验证用户身
2023-10-21

Teradata的安全认证和访问控制机制是如何实施的

Teradata的安全认证和访问控制机制主要通过以下几种方式实施:用户认证:Teradata支持多种用户认证方式,包括密码认证、LDAP认证、Kerberos认证等。用户需要通过有效的凭证来进行身份验证,以确保只有经过授权的用户能够访问系统
Teradata的安全认证和访问控制机制是如何实施的
2024-04-09

Web登录认证类漏洞分析和安全验证机制设计的示例分析

本篇文章为大家展示了Web登录认证类漏洞分析防御总结和安全验证机制设计的示例分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。web登录认证方面,从子功能上可以划分为登录框登录、忘记密码(密码重置)
2023-06-17

如何在Ubuntu 16.04、 CentOS 7和HypriotOS v1.0.1操作系统上部署一套安全的Kubernetes集群

如何在Ubuntu 16.04、 CentOS 7和HypriotOS v1.0.1操作系统上部署一套安全的Kubernetes集群,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,
2023-06-05

编程热搜

目录