一、測試環境及主要內容
- 測試環境
- CentOS Linux release 7.6.1810
- CDH 6.2.0
- Cloudera Manager 6.2.0
- 內容概述
- Kerberos概述
- 安裝配置KDC服務
- 通過CDH啟用Kerberos
二、Kerberos概述
Hadoop使用Kerberos作為用戶和服務的強身份驗證和身份傳播的基礎。Kerberos是一種計算機網絡認證協議,它允許某實體在非安全網絡環境下通信,向另一個實體以一種安全的方式證明自己的身份。 Kerberos是第三方認證機制,其中用戶和服務依賴於第三方(Kerberos服務器)來對彼此進行身份驗證。 Kerberos服務器本身稱為密鑰分發中心或KDC。
二、安裝配置KDC服務
- Server節點的軟件安裝
yum install -y krb5-server krb5-workstation krb5-libs
rpm -qa | grep krb5 #查看是否安裝
- Client節點安裝
yum install -y krb5-workstation krb5-libs
- KDC配置(服務端的配置)
vim /var/kerberos/krb5kdc/kdc.conf
注:綠框中第一個按照自己的領域名進行修改(可以自定義但后面配置需要保持一致)第二個配置是指票據授權票的有效期為一天,但可刷新七次,免密7天。刪除了aes456-cts這個校驗方式。
- krb5配置(客戶端配置)
vim /etc/krb5.conf
注意:這里都是更改過的,可對比原配置改。這個配置中還有一個域名與領域的映射關系,因為這里集群小,只有一個領域(HADOOP.COM),所以沒有配置
scp /etc/krb5.conf root@xxxnodex:/etc/ #根據自己的節點分發配置文件
- 生成數據庫
kdb5_util create -s
注:設置密碼即可
創建好數據庫會在這個目錄下生成這些文件
- 創建kerberos的管理賬號
kadmin.local -q "addprinc admin/admin@HADOOP.COM"
- 賦予kerberos管理員所有權限
vim /var/kerberos/krb5kdc/kadm5.acl
這里要更改的是EXAMPLE為HADOOP
- 開啟服務進程和設置服務開機自啟
systemctl enable krb5kdc systemctl enable kadmin systemctl start krb5kdc systemctl start kadmin
三、在CDH上啟用Kerberos
- 為CM創建管理用戶
注意:這個記住后面要用。
- 進入CM平台
- 確保下列都完成並勾選
- 加密類型、KDC服務器
- 不勾選
- 輸入CM的kerberos的管理賬號,一定要和第一步創建的一樣。(下圖中的MGONE按照前面的應該是HADOOP)
- 點擊繼續
- 繼續
- 重啟集群
- 開啟成功