Kerberos安装

振鹭2年前技术文章708

1、环境准备

(1)安装好jdk

(2)下载Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy File。解压下载后的zip包,将得到的jar包放到所有服务器上的$JAVA_HOME/jre/lib/security/目录下。

image.png

2、安装kerberos相关服务
选择集群中的一台主机(hadoop01)作为Kerberos服务端,安装KDC,所有主机都需要部署Kerberos客户端。
服务端主机执行以下安装命令
Bash
yum install -y krb5-server
客户端主机执行以下安装命令(hadoop02,hadoop03)
Bash
yum install -y krb5-workstation krb5-libs
3、修改配置文件
(1)服务端主机(hadoop01)
修改/var/kerberos/krb5kdc/kdc.conf文件,内容如下
Bash
vim /var/kerberos/krb5kdc/kdc.conf
Bash
[kdcdefaults]
 kdc_ports = 88
 kdc_tcp_ports = 88
[realms]
 HDP.COM = {
  #master_key_type = aes256-cts
  acl_file = /var/kerberos/krb5kdc/kadm5.acl
  dict_file = /usr/share/dict/words
  admin_keytab = /var/kerberos/krb5kdc/kadm5.keytab
  supported_enctypes = aes256-cts:normal aes128-cts:normal des3-hmac-sha1:normal arcfour-hmac:normal camellia256-cts:normal camellia128-cts:normal des-hmac-sha1:normal des-cbc-md5:normal des-cbc-crc:normal
 }
(2)客户端主机(所有主机)
修改/etc/krb5.conf文件,内容如下
Bash
vim /etc/krb5.conf
# Configuration snippets may be placed in this directory as well
includedir /etc/krb5.conf.d/
[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log
[libdefaults]
 Default_realm = HADOOP.COM
 dns_lookup_realm = false
 dns_lookup_kdc = false
 ticket_lifetime = 24h
 renew_lifetime = 7d
 forwardable = true
 udp_preference_limit = 1 
 rdns = false
 pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt
 default_realm = HADOOP.COM
 #default_ccache_name = KEYRING:persistent:%{uid}
[realms]
 HADOOP.COM = {
  kdc = jz001
  admin_server = jz001
 }
[domain_realm]
# .HADOOP.com = HADOOP.COM
# HADOOP.com = HADOOP.COM
3、修改管理员权限配置权限
在服务端主机(jz001)修改/var/kerberos/krb5kdc/kadm5.acl文件,内容如下
Bash
*/admin@HDP.COM     *

image.png

4、将修改好的文件发送到其它所有客户端主机

Bash
scp /etc/krb5.conf root@hadoop02:/etc/krb5.conf
scp /var/kerberos/krb5kdc/kdc.conf  root@hadoop02:/var/kerberos/krb5kdc/kdc.conf
scp /var/kerberos/krb5kdc/kadm5.acl root@hadoop02:/var/kerberos/krb5kdc/kadm5.acl
5、初始化kdc数据库

在服务端主机(jz001)执行以下命令,并根据提示输入密码。

Bash
kdb5_util create -s -r HADOOP.COM

注意事项:

-s选项指定将数据库的主节点密钥存储在文件中,从而可以在每次启动KDC时自动重新生成主节点密钥。记住主密钥,稍后会使用。
这里需要输入一个管理KDC数据库的密码!千万别忘记了,忘记的话就只能重新初始化KDC数据库啦!
如果遇到数据库已经存在的提示,可以把/var/kerberos/krb5kdc/目录下的principal的相关文件都删除掉。默认的数据库名字都是principal(rm -f /var/kerberos/krb5kdc/principal*)。可以使用-d指定数据库名字。
另外:
当我们创建Kerberos数据库成功后,默认会在该目录下创建以下5个文件。
Bash
[root@hadoop01 hadoop]# ll -a /var/kerberos/krb5kdc/
总用量 56
drwxr-xr-x. 2 root root   168 7月  21 15:34 .
drwxr-xr-x. 4 root root    33 7月   6 17:40 ..
-rw-------. 1 root root    75 7月   6 18:57 .k5.HADOOP.COM
-rw-------. 1 root root    72 7月   6 18:43 .k5.HDP.COM
-rw-------. 1 root root    22 7月   6 17:53 kadm5.acl
-rw-------. 1 root root   446 7月   6 17:41 kdc.conf
-rw-------. 1 root root 32768 7月  19 01:52 principal
-rw-------. 1 root root  8192 7月   6 18:57 principal.kadm5
-rw-------. 1 root root     0 7月   6 18:57 principal.kadm5.lock
-rw-------. 1 root root     0 7月  19 01:52 principal.ok
[root@hadoop01 hadoop]#
初始化KDC超级管理员
Bash
kadmin.local -q "addprinc admin/admin@HADOOP.COM"
根据提示设置KDC管理员密码,一定要记住
admin/admin:为管理员账户
HADOOP.COM:为手动配置的realm
密码:admin
6、启动kerberos相关服务
在主节点启动KDC,并配置开机自启
Bash
systemctl start krb5kdc
systemctl enable krb5kdc
在主节点启动Kadmin,该服务为KDC数据库访问入口
Bash
systemctl start kadmin
systemctl enable kadmin
7、创建kerberos管理员用户
Bash
kadmin.local -q "addprinc admin/admin"
阅读剩余的63%

相关文章

hive部署

安装前准备修改环境变量vi /etc/profile 添加内容如下:(hive节点都要执行)export HIVE_HOME=/opt/hiveexport PATH=$PATH:$HIVE_HOME...

xargs-管道命令符

有时候我们的脚本却需要 echo '516' | kill 这样的效果,例如 ps -ef | grep 'ddd' | kill 这样的效果,筛选出符合某条件的进程pid然后结束。这种需求对于我们来...

PG体系结构(一)

PG体系结构(一)

一、进程结构PG数据库启动时会先启动一个主进程(9.3之前称为postmaster,9.3以后称为postgres server process),然后fork出一些辅助子进程(backend、bac...

oracle手工完全恢复

一)基本概念1)完全恢复的步骤1)restore: OS拷贝命令还原所有或部分datafile2)recover:SQL*PLUS利用归档日志和当前的redo日志做恢复2)完全恢复可以基于三个级别re...

开源大数据集群部署(三)集群mysql数据库部署

开源大数据集群部署(三)集群mysql数据库部署

1、mysql部署在hd1.dtstack.com主机root权限下安装配置Ø  在安装目录/root/bigdata目录下解压包tar -xvJf mysql-8.0.31-linux-glibc2...

Hive3 on spark 集成

Hive3 on spark 集成

前置条件hadoop yarn环境正常oracle jdk 1.8版本1、spark2 下载准备https://archive.apache.org/dist/spark/spark-2.4.5/sp...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。