Kerberos安装及Hadoop搭建提高安全性

Kerberos安装

前期准备

你可能需要:

  • JDK
  • byacc.x86_64
  • ntp

    yum install byacc byaccj
    chkconfig ntpd on && service ntpd start

我这台机器是当时编译Hadoop源码的机器,可能有些譬如C++之类的环境已经配置了。

不过没关系,大家编译中的报错应该可以直接找到少哪些东西

下载源码

下载地址

或YUM安装

于所有机器进行

修改配置文件

编译安装:

  • 配置文件位于/etc/krb5.conf
  • 库文件和acl认证文件位于/usr/local/var/krb5kdc
  • 启动文件位于/usr/local/sbin

或者通过覆盖KRB5_KDC_PROFILE环境变量修改配置文件位置。

YUM安装:

  • 配置文件位于/etc/krb5.conf
  • 库文件和acl认证文件位于/var/kerberos/krb5kdc/
  • 启动文件位于/etc/init.d/

先修改/etc/krb5.conf


原文件:

修改后:


添加acl文件

这个文件可能原本不存在

vim /usr/local/var/krb5kdc/kadm5.acl

修改

注意,此处删除了supported_enctypes256位验证

分发文件

Kerberos的编译要在所有机器上都做,完成后向下继续

pscp命令在之前Hadoop安装的文档中配置过了,大致就是scp到多个主机的快捷方式。

在主机生成数据库

在主机上运行命令kdb5_util create HADOOP.COM -s

添加管理员用户

启动

主机上运行

其他机器上没必要运行

测试

在其他机器上

如果回显为

并允许你开始输入,即成功

Kerberos对应Hadoop配置

用户准备

首先进入Kerberos管理器,为了顺便验证成功,建议在非主机上进入kadmin

首先这是完成后的结果:

我们需要在每一台主机上建立rootHTTP账号

格式为:

addprinc -randkey 用户名/主机名

譬如需要给hadoop1.example.com的主机添加HTTP用户

一台机器上创建的用户,在任意主机上都可以看到

密钥导出

我们可以使用

的方式来导出一组密钥

其中:

  • ktadd等效于xst
  • -k参数为使用keytab文件
  • 路径完全自定义,hadoop可读即可
  • 用户名/主机名,可以写多个使用空格分割

Hadoop配置

修改配置文件

core-site.xml:

hdfs-site.xml:

mapred-site.xml:

yarn-site.xml:

分发配置文件

验证

启动

进程都在,成功

ZooKeeper配置

建立Zookeeper用户,或使用安装Zookeeper时建立的用户

此处新建:

切换到用户后使用kadmin建立keytab文件

注意使用kadmin -p root/admin,否则无法登陆

建立zk/hadoop1.example.com,并导出到/home/zk/zk.keytab

在其他机器上也这样做,你可以用脚本,也可以用其他方法。

自己试验想要稳妥的话就自己手动过去。但最终是要用自动化来完成的

修改zoo.cfg添加配置:

在配置目录中添加对应账户的keytab文件且创建jaas.conf配置文件,内容如下:

其中keytab填写真实的keytab的绝对路径,principal填写对应的认证的用户和机器名称。

在配置目录中添加java.env的配置文件,内容如下:

每个zookeeper的机器都进行以上的修改

启动方式和平常无异,如成功使用安全方式启动,日志中看到如下日志:

我突然发现我的Zookeeper日志中写的时间比显示时间早一个小时……不知道是什么问题

HBase配置

前期准备

HBase下载编译请参考http://90hadoop.com/2016/03/03/hbase-yuan-ma-bian-yi/

HBase安装高可用请参考http://www.cnblogs.com/smartloli/p/4513767.html

在高可用安装中,HBase会因为ZooKeeper已启用Kerberos而无法启动,报错如下:

这是正常现象

配置HBase

vim /opt/hbase-1.1.3/conf/hbase-site.xml

同步配置文件

启动

验证

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值