安裝Kerberos
主節點安裝
yum install krb5-server -y
其他子節點安裝krb5-devel、krb5-workstation :
yum install krb5-devel krb5-workstation -y
修改/etc/krb5.conf為以下内容
[libdefaults]
default_realm = CDH167.COM
dns_lookup_kdc = false
dns_lookup_realm = false
ticket_lifetime = 86400
renew_lifetime = 604800
forwardable = true
default_tgs_enctypes = rc4-hmac
default_tkt_enctypes = rc4-hmac
permitted_enctypes = rc4-hmac
udp_preference_limit = 1
kdc_timeout = 3000
[realms]
CDH167.COM = {
kdc = 192.168.200.167
admin_server = 192.168.200.167
}
[domain_realm]
修改/var/kerberos/krb5kdc/kdc.conf
[kdcdefaults]
kdc_ports = 88
kdc_tcp_ports = 88
[realms]
CDH167.COM = {
#master_key_type = aes256-cts
acl_file = /var/kerberos/krb5kdc/kadm5.acl
dict_file = /usr/share/dict/words
max_renewable_life = 7d
max_life = 1d
admin_keytab = /var/kerberos/krb5kdc/kadm5.keytab
supported_enctypes = aes256-cts:normal aes128-cts:normal des3-hmac-sha1:normal arcfour-hmac:normal des-hmac-sha1:normal des-cbc-md5:normal des-cbc-crc:normal
default_principal_flags = +renewable, +forwardable
}
vi /var/kerberos/krb5kdc/kadm5.acl
*/[email protected] *
建立Kerberos資料庫
儲存路徑為/var/kerberos/krb5kdc
如果需要重建資料庫,将該目錄下的principal相關的檔案删除即可
kdb5_util create -r CDH167.COM -s
輸入密碼
設定服務啟動服務,在主節點上執行:
chkconfig --level 35 krb5kdc on
chkconfig --level 35 kadmin on
service krb5kdc start
service kadmin start
建立Kerberos管理者
# 需要設定兩次密碼
kadmin.local -q "addprinc admin/admin"
#輸入密碼
測試Kerberos
# 列出Kerberos中的所有認證使用者,即principals
kadmin.local -q "list_principals"
# 添加認證使用者,需要輸入密碼
kadmin.local -q "addprinc user1"
# 使用該使用者登入,擷取身份認證,需要輸入密碼
kinit user1
# 檢視目前使用者的認證資訊ticket
klist
# 更新ticket
kinit -R
# 銷毀目前的ticket
kdestroy
# 删除認證使用者
kadmin.local -q "delprinc user1"
添加使用者導指定keytab裡面
kadmin.local -q "xst -k hdfs1.keytab hdfs/[email protected]"
kadmin.local -q "xst -k hdfs1.keytab hdfs/[email protected]"
kerberos基本操作
kinit -k -t hdfs.keytab hdfs/[email protected]
klist -e -k -t hdfs.keytab