Hadoop自身是沒(méi)有安全認(rèn)證的,所以需要引入第三方的安全認(rèn)證機(jī)制。kerberos是hadoop比較受歡迎的一種認(rèn)證方式。kerberos配置比較簡(jiǎn)單。但是實(shí)際使用的時(shí)候,如果不嚴(yán)格遵守游戲規(guī)則。你會(huì)經(jīng)常遇到“奇怪”的問(wèn)題。
1. 安裝kerberos的軟件包
yum install krb5* vi /etc/krb5.conf
2. 修改kerberos的配置文件
# more /etc/krb5.conf [logging] default = FILE:/var/log/krb5libs.log kdc = FILE:/var/log/krb5kdc.log admin_server = FILE:/var/log/kadmind.log [libdefaults] default_realm = LIANG.COM dns_lookup_realm = false dns_lookup_kdc = false ticket_lifetime = 24h renew_lifetime = 2d forwardable = false [realms] LIANG.COM = { kdc = c6701 admin_server = c6701 default_domain = liang.com key_stash_file = /var/kerberos/krb5kdc/.k5.LIANG.COM dict_file = /usr/share/dict/words } [domain_realm] .liang.com = LIANG.COM liang.com = LIANG.COM
3. 修改kdc配置文件
cat /var/kerberos/krb5kdc/kdc.conf [kdcdefaults] kdc_ports = 88 kdc_tcp_ports = 88 [realms] LIANG.COM = { kadmind_port = 749 master_key_type = aes256-cts-hmac-sha1-96 acl_file = /var/kerberos/krb5kdc/kadm5.acl dict_file = /usr/share/dict/words supported_enctypes = des3-cbc-sha1:normal max_life = 24h 0m 0s max_renewable_life = 7d 0h 0m 0s dict_file = /usr/share/dict/words key_stash_file = /var/kerberos/krb5kdc/.k5.LIANG.COM database_name = /var/kerberos/krb5kdc/principal }
執(zhí)行命令創(chuàng)建kdc數(shù)據(jù)庫(kù)
kdb5_util create -s -r HADOOP.LIANG.COM
4. 給數(shù)據(jù)庫(kù)管理員添加ACL權(quán)限,修改kadm5.acl文件,*代表全部權(quán)限
# cat /var/kerberos/krb5kdc/kadm5.acl */[email protected] *
5. 啟動(dòng)服務(wù)
# service krb5kdc start # service kadmin start # service krb5kdc status # service kadmin status # chkconfig krb5kdc on # chkconfig kadmin on
6. 補(bǔ)充:在每個(gè)客戶端的系統(tǒng)參數(shù)/etc/profile中,加上下面參數(shù),確保每次su - user都能使用同一個(gè)tgt,而不是創(chuàng)建一個(gè)新的,而找不到,最終導(dǎo)致su的用戶kinit失敗
# workaround for kerberos loging export KRB5CCNAME=FILE:/tmp/krb5cc_`id -u`
7. 創(chuàng)建principal
kadmin.local -q "addprinc -pw <password> <username>"
針對(duì)hadoop用戶,增加主機(jī)名,一同創(chuàng)建principal,增加安全性。
注意:hadoop只能通過(guò)小寫(xiě)的主機(jī)名進(jìn)行注冊(cè)。如果主機(jī)名有大寫(xiě)字母,手動(dòng)改成小寫(xiě)。后續(xù)kinit的時(shí)候,也是使用小寫(xiě)的。hadoop會(huì)自動(dòng)將大寫(xiě)的主機(jī)名變成小寫(xiě)。
kadmin.local -q "addprinc -pw <password> hdfs/<hostname>"
8. 創(chuàng)建keytab
kadmin.local -q "ktadd -norandkey -k /root/keytab/<username>.keytab <username>"
9. 注冊(cè)
kinit -kt /root/keytab/hdfs.keytab <username>
針對(duì)hadoop用戶,增加主機(jī)名,一同創(chuàng)建principal,增加安全性。
kinit -kt /root/keytab/hdfs.keytab hdfs/`hostname`
10. 查詢當(dāng)前用戶的kinit情況
$ klist Ticket cache: FILE:/tmp/krb5cc_1098 Default principal: hdfs/[email protected] Valid starting Expires Service principal 03/26/18 17:19:04 03/27/18 17:19:04 krbtgt/[email protected] renew until 04/02/18 17:19:04
11. 查詢keytab文件內(nèi)容
$ klist -kt /etc/security/keytab/hdfs.keytab Keytab name: FILE:/root/keytab/hdfs.keytab KVNO Timestamp Principal ---- ----------------- -------------------------------------------------------- 1 04/07/17 16:16:04 hdfs/[email protected] 1 04/07/17 16:16:04 hdfs/[email protected] 1 04/07/17 16:16:05 hdfs/[email protected]
12. 查詢KDC,用戶列表
kadmin.local -q "listprincs"
13. 刪除用戶
kadmin.local -q "delprinc -force HTTP/[email protected]"
14. 修改密碼
kpasswd 用戶名
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
本文題目:Kerberos安裝&使用-創(chuàng)新互聯(lián)
本文路徑:http://m.2m8n56k.cn/article20/gjpjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、手機(jī)網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)、全網(wǎng)營(yíng)銷(xiāo)推廣、云服務(wù)器、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容