Kerberos认证原理与环境部署
文章目錄
- 一、概述
- 1)應(yīng)用場景
- 2)功能特性
- 二、Kerberos中的核心概念
- 1)用戶principal
- 2)服務(wù)principal
- 3)Ticket
- 三、Kerberos架構(gòu)與工作原理
- 四、Kerberos安裝
- 1)Kerberos Server 安裝
- 1、yum安裝
- 2、配置 krb5.conf
- 3、配置 kdc.conf
- 4、配置 kadm5.acl
- 5、初始化KDC數(shù)據(jù)庫
- 6、啟停 Kerberos 服務(wù)
- 7、kadmin.local
- 2)Kerberos Client 安裝
- 3)基本命令操作
- 1、kadmin(數(shù)據(jù)庫管理)
- 2、kinit(在客戶端認(rèn)證用戶)
- 3、導(dǎo)出keytab認(rèn)證文件
- 4、kdestroy(刪除當(dāng)前的認(rèn)證緩存)
- 5、用戶認(rèn)證(登錄)
一、概述
Kerberos是為TCP/IP網(wǎng)絡(luò)系統(tǒng)設(shè)計(jì)的可信的第三方認(rèn)證協(xié)議,用于身份認(rèn)證。網(wǎng)絡(luò)上的Keberos服務(wù)基于DES對稱加密算法,但也可以用其他算法替代。因此,Keberos是一個(gè)在許多系統(tǒng)中獲得廣泛應(yīng)用的認(rèn)證協(xié)議。Keberos最初是美國麻省理工學(xué)院(MIT)為Athena項(xiàng)目開發(fā)的。
官網(wǎng):https://www.kerberos.org/
官方文檔:http://web.mit.edu/kerberos/krb5-current/doc/
1)應(yīng)用場景
Kerberos采用客戶端/服務(wù)器(CS)結(jié)構(gòu)與DES加密技術(shù),并且能夠進(jìn)行相互認(rèn)證,即客戶端和服務(wù)器端均可對對方進(jìn)行身份認(rèn)證,是一種應(yīng)用對稱密鑰體制進(jìn)行密鑰管理的系統(tǒng)。可以用于防止竊聽、防止replay攻擊、保護(hù)數(shù)據(jù)完整性等場合。
2)功能特性
Kerberos提供雙向認(rèn)證,不僅Server可以對Client 進(jìn)行認(rèn)證,Client也能對Server進(jìn)行認(rèn)證。Server對Client認(rèn)證成功之后,通過返回Client發(fā)送的時(shí)間戳,向Client提供驗(yàn)證自己身份的手段。
認(rèn)證服務(wù)是其他服務(wù)的基礎(chǔ),服務(wù)認(rèn)證過程有助于提升整個(gè)系統(tǒng)的可用性和高可靠性。
KDC(秘鑰分配中心)是秘鑰體系的重要部分,旨在減少密鑰體制所固有的交換密鑰時(shí)所面臨的風(fēng)險(xiǎn)。用戶可以根據(jù)需要擴(kuò)展多個(gè)KDC。
Kerberos已經(jīng)成為計(jì)算機(jī)領(lǐng)域一個(gè)被廣泛接受的標(biāo)準(zhǔn),所以使用Kerberos可以輕松實(shí)現(xiàn)不同平臺(tái)之間的互操作。
二、Kerberos中的核心概念
Kerberos中有以下一些概念需要了解:
- KDC:密鑰分發(fā)巾心,負(fù)責(zé)管理發(fā)放票據(jù),記錄授權(quán)。
- Realm: Kerberos管理領(lǐng)域的標(biāo)識(shí)。
- principal:Kerberos 下的用戶可以稱為 Principal,當(dāng)每添加一個(gè)用戶或服務(wù)的時(shí)候都需要向kdc添加一條principal, principal的形式為:主名稱/實(shí)例名@領(lǐng)域名。
- 主名稱:主名稱可以是用戶名或服務(wù)名,表示是用于提供各種網(wǎng)絡(luò)服務(wù)(如hdfs、yam,、hive) 的主體。
- 實(shí)例名:實(shí)例名簡單理解為主機(jī)名。
- keytab文件:存儲(chǔ)了用戶的加密密碼。常用這種方式認(rèn)證。
1)用戶principal
用戶principal的形式:
Name[/Instance]@REALM
其中Instance是可選 的,通常用于更好地限定用戶的類型。比如,一個(gè)管理員用戶通常會(huì)有admin instance,即Name/admin@REALM。
下面是指代用戶的 一些principal的例子:
pippo@EXAMPLE.COM admin/admin@EXAMPLE.COM cnicetoupp/admin@EXAMPLE.COM2)服務(wù)principal
用戶principal的形式:
Service/Hostname@REALM
- 第一部分是service的名字,比如imap, AFS, ftp. 通常’host’這個(gè)名字被用于指明對一臺(tái)機(jī)器的通用的訪問(telnent, rsh, ssh)。
- 第二個(gè)component是提供這個(gè)服務(wù)的機(jī)器的全限定域名(FQDN)。這個(gè)component跟DNS對應(yīng)用服務(wù)器的IP地址進(jìn)行逆向解析后得到的主機(jī)名。
下面是指代服務(wù)principal的例子:
imap/hadoop-node1@EXAMPLE.COMhost/hadoop-node1@EXAMPLE.COMafs/hadoop-node1@EXAMPLE.COM3)Ticket
Ticket分兩種:
- Ticket Granting Ticket,TGT:這是KDC中的Authentication Server(簡稱AS)產(chǎn)生的,TGT是向Ticket Granting Server(TGS)用于表明自己真實(shí)身份的東西。
- Service Ticket:這是KDC中的Ticket Granting Server(簡稱TGS)產(chǎn)生的,Service Ticket 是用于向應(yīng)用服務(wù)器表明自己身份的東西
三、Kerberos架構(gòu)與工作原理
-
AS_REQ 是在初始化一個(gè)用戶(kinit)的時(shí)候發(fā)出的用戶認(rèn)證請求,這個(gè)請求是發(fā)給KDC中的Authentication Server (AS);
-
AS_REP 是 AS回復(fù)給client的信息,其中包括TGT (用TGS secret key加密過的) and the session key (用發(fā)請求的用戶的secret key加密過的);
-
TGS_REQ 是client為了一個(gè)service ticket向Ticket Granting Server (TGS)的信息. 其中包括上一條信息中獲得的TGT (用TGS secret key加密過的) ,一個(gè)客戶端產(chǎn)生的一個(gè)authenticator(用session key加密過的).
-
TGS_REP 是TGS回復(fù)給TGS_REQ的信息. 其中包括service ticket(用appservice的secret key加密過),和 一個(gè)TGS產(chǎn)生的service sessinon key(之前AS產(chǎn)生的一條session key給加密過的)
-
AP_REQ 是一條客戶端發(fā)給appserver的訪問服務(wù)的請求,其中包括service ticket和一個(gè)authenticator(使用TGS產(chǎn)生的service session key 加密過的)
-
AP_REP 是appserver回復(fù)給client的一條信息,證明這個(gè)appserver確實(shí)是客戶端希望訪問的server。不過這條信息也不一定總是要回復(fù)的。比如當(dāng)客戶端和appserver需要相互認(rèn)證的時(shí)候,客戶端向appserver發(fā)出請求,這個(gè)時(shí)候就不需要回復(fù)信息。
Kerberos認(rèn)證時(shí)序圖:
四、Kerberos安裝
官方文檔:https://kerberos.org/dist/index.html
【溫馨提示】這里主機(jī)名和域名都在配置/etc/hosts
192.168.0.113 hadoop-node1 server.kerberos.com 192.168.0.114 hadoop-node2 client1.kerberos.com 192.168.0.115 hadoop-node3 client2.kerberos.com| hadoop-node1 | server.kerberos.com | 192.168.0.113 | KDC(Kerberos Server、kadmin) |
| hadoop-node2 | client1.kerberos.com | 192.168.0.114 | Kerberos Client |
| hadoop-node3 | client1.kerberos.com | 192.168.0.115 | Kerberos Client |
1)Kerberos Server 安裝
在hadoop-node1節(jié)點(diǎn)上執(zhí)行如下命令安裝Kerberos Server
1、yum安裝
- krb5-server:Kerberos服務(wù)端程序,KDC所在節(jié)點(diǎn)。
- krb5-workstation: 包含一些基本Kerberos程序,比如(kinit, klist, kdestroy,kpasswd),使用Kerberos的所有節(jié)點(diǎn)都應(yīng)該部署。
- krb5-libs:包含Kerberos程序的各種支持類庫等。
2、配置 krb5.conf
【溫馨提示】/etc/krb5.conf : 客戶端根據(jù)該文件中的信息取訪問KDC
# To opt out of the system crypto-policies configuration of krb5, remove the # symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated. includedir /etc/krb5.conf.d/#Kerberos守護(hù)進(jìn)程的日志記錄方式。換句話說,表示 server 端的日志的打印位置。 [logging]#默認(rèn)的krb5libs.log日志文件存放路徑default = FILE:/var/log/krb5libs.log#默認(rèn)的krb5kdc.log日志文件存放路徑kdc = FILE:/var/log/krb5kdc.log#默認(rèn)的kadmind.log日志文件存放路徑admin_server = FILE:/var/log/kadmind.log#Kerberos使用的默認(rèn)值,當(dāng)進(jìn)行身份驗(yàn)證而未指定Kerberos域時(shí),則使用default_realm參數(shù)指定的Kerberos域。即每種連接的默認(rèn)配置,需要注意以下幾個(gè)關(guān)鍵的配置: [libdefaults]#DNS查找域名,我們可以理解為DNS的正向解析,該功能我沒有去驗(yàn)證過,默認(rèn)禁用。(我猜測該功能和domain_realm配置有關(guān))dns_lookup_realm = false# 憑證生效的時(shí)限,設(shè)置為24h。ticket_lifetime = 24h# 憑證最長可以被延期的時(shí)限,一般為7天。當(dāng)憑證過期之后,對安全認(rèn)證的服務(wù)的后續(xù)訪問則會(huì)失敗。renew_lifetime = 7d# 如果此參數(shù)被設(shè)置為true,則可以轉(zhuǎn)發(fā)票據(jù),這意味著如果具有TGT的用戶登陸到遠(yuǎn)程系統(tǒng),則KDC可以頒發(fā)新的TGT,而不需要用戶再次進(jìn)行身份驗(yàn)證。forwardable = true# 我理解是和dns_lookup_realm相反,即反向解析技術(shù),該功能我也沒有去驗(yàn)證過,默認(rèn)禁用即可。rdns = false# 在KDC中配置pkinit的位置,該參數(shù)的具體功能我沒有做進(jìn)一步驗(yàn)證。pkinit_anchors = /etc/pki/tls/certs/ca-bundle.crt#設(shè)置 Kerberos 應(yīng)用程序的默認(rèn)領(lǐng)域。如果您有多個(gè)領(lǐng)域,只需向 [realms] 節(jié)添加其他的語句。其中默認(rèn)EXAMPLE.COM可以為任意名字,推薦為大寫,這里我改成了HADOOP.COM。必須跟要配置的realm的名稱一致。default_realm = HADOOP.COM# 顧名思義,默認(rèn)的緩存名稱,不推薦使用該參數(shù)。# default_ccache_name = KEYRING:persistent:%{uid}[realms]HADOOP.COM = {# kdc服務(wù)器地址。格式 [主機(jī)名或域名]:端口, 默認(rèn)端口是88,默認(rèn)端口可不寫kdc = server.kerberos.com:88# # admin服務(wù)地址 格式 [主機(jī)名或域名]:端口, 默認(rèn)端口749,默認(rèn)端口可不寫admin_server = server.kerberos.com:749# 代表默認(rèn)的域名,設(shè)置Server主機(jī)所對應(yīng)的域名default_domain = kerberos.com}#指定DNS域名和Kerberos域名之間映射關(guān)系。指定服務(wù)器的FQDN,對應(yīng)的domain_realm值決定了主機(jī)所屬的域。 [domain_realm].kerberos.com = HADOOP.COMkerberos.com = HADOOP.COM#kdc的配置信息。即指定kdc.conf的位置。 [kdc]# kdc的配置文件路徑,默認(rèn)沒有配置,如果是默認(rèn)路徑,可以不寫profile = /var/kerberos/krb5kdc/kdc.conf3、配置 kdc.conf
【溫馨提示】/var/kerberos/krb5kdc/kdc.conf:kdc的專屬配置,可以根據(jù)自己的需求修改下kdc數(shù)據(jù)庫的存放目錄。
[kdcdefaults]#指定KDC的默認(rèn)端口kdc_ports = 88# 指定KDC的TCP協(xié)議默認(rèn)端口。kdc_tcp_ports = 88[realms]#該部分列出每個(gè)領(lǐng)域的配置。HADOOP.COM = {#和 supported_enctypes 默認(rèn)使用 aes256-cts。由于,JAVA 使用 aes256-cts 驗(yàn)證方式需要安裝額外的 jar 包(后面再做說明)。推薦不使用,并且刪除 aes256-cts。(建議注釋掉,默認(rèn)也是注釋掉的)#master_key_type = aes256-cts#標(biāo)注了 admin 的用戶權(quán)限的文件,若文件不存在,需要用戶自己創(chuàng)建。即該參數(shù)允許為具有對Kerberos數(shù)據(jù)庫的管理訪問權(quán)限的UPN指定ACL。acl_file = /var/kerberos/krb5kdc/kadm5.acl#該參數(shù)指向包含潛在可猜測或可破解密碼的文件。dict_file = /usr/share/dict/words#KDC 進(jìn)行校驗(yàn)的 keytab。admin_keytab = /var/kerberos/krb5kdc/kadm5.keytab# ticket 的默認(rèn)生命周期為24hmax_file = 24h# #該參數(shù)指定在多長時(shí)間內(nèi)可重獲取票據(jù),默認(rèn)為0max_renewable_life = 7d#指定此KDC支持的各種加密類型。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}4、配置 kadm5.acl
【溫馨提示】/var/kerberos/krb5kdc/kadm5.acl:權(quán)限相關(guān)配置
其中前一個(gè)號(hào)是通配符,表示像名為“abc/admin”或“xxx/admin”的人都可以使用此工具(遠(yuǎn)程或本地)管理kerberos數(shù)據(jù)庫,后一個(gè)跟權(quán)限有關(guān),*表示所有權(quán)限。HADOOP.COM是上面配置的realm。
*/admin@HADOOP.COM *Kerberos kadmind 使用該文件來管理對 Kerberos 數(shù)據(jù)庫的訪問權(quán)限。對于影響 principa 的操作,ACL 文件還控制哪些 principa 可以對哪些其他 principa 進(jìn)行操作。文件格式如下:
principal permissions [target_principal [restrictions] ]相關(guān)參數(shù)說明:
- principal:設(shè)置該 principal 的權(quán)限;principal 的每個(gè)部分都可以使用 *。
- permissions: 權(quán)限,指定匹配特定條目的主體可以執(zhí)行或不可以執(zhí)行的操作 。如果字符是大寫,則不允許該操作。如果字符是小寫,則允許該操作。有如下一些權(quán)限:
- a:[不]允許添加主體或策略。
- d:[不]允許刪除主體或策略。
- m:[不]允許修改主體或策略。
- c:[不]允許更改主體的口令。
- i:[不]允許查詢 Kerberos 數(shù)據(jù)庫。
- l:[不]允許列出 Kerberos 數(shù)據(jù)庫中的主體或策略。
- x 或 *:允許所有權(quán)限。
- target_principal:目標(biāo) principal,目標(biāo) principal 的每個(gè)部分都可以使用 *。【可選】
- restrictions:針對權(quán)限的一些補(bǔ)充限制,如:限制創(chuàng)建的 principal 的票據(jù)最長時(shí)效。【可選】
【示例】
kadm5.acl 文件中的以下項(xiàng)授予 HADOOP.COM 領(lǐng)域中包含 admin 實(shí)例的任何主體對 Kerberos 數(shù)據(jù)庫的所有權(quán)限:
kadm5.acl 文件中的以下項(xiàng)授予 test@EXAMPLE.COM 主體添加、列出和查詢包含 root 實(shí)例的任何主體的權(quán)限。
test@EXAMPLE.COM ali */root@EXAMPLE.COMkadm5.acl 文件中的以下項(xiàng)不授予 test@EXAMPLE.COM 主體添加、列出和查詢包含 root 實(shí)例的任何主體的權(quán)限。
test@EXAMPLE.COM ALI */root@EXAMPLE.COM詳細(xì)說明可參考官網(wǎng)文檔:https://web.mit.edu/kerberos/krb5-latest/doc/admin/conf_files/kadm5_acl.html
5、初始化KDC數(shù)據(jù)庫
$ kdb5_util create -r HADOOP.COM -s $ ll -a /var/kerberos/krb5kdc/- -s:表示生成 stash file,并在其中存儲(chǔ) master server key(krb5kdc)
- -r:指定 realm name
kerberos數(shù)據(jù)庫創(chuàng)建完之后,默認(rèn)會(huì)創(chuàng)建以下5個(gè)文件(kdc.conf、kadm5.acl除外的其他幾個(gè)),Kerberos 數(shù)據(jù)庫的目錄為:/var/kerberos/krb5kdc,如果需要重建數(shù)據(jù)庫,可刪除這五個(gè)文件重新執(zhí)行上面的命令創(chuàng)建。
6、啟停 Kerberos 服務(wù)
啟動(dòng):
$ systemctl start krb5kdc kadmin # 查看服務(wù)狀態(tài) $ systemctl status krb5kdc kadmin停止:
$ systemctl stop krb5kdc kadmin7、kadmin.local
Kerberos 服務(wù)機(jī)器上可以使用 kadmin.local 來執(zhí)行各種管理的操作。進(jìn)入 kadmin.local,不需要輸入密碼:
$ kadmin.local常用操作:
| add_principal, addprinc, ank | 增加 principal | add_principal -randkey test@HADOOP.COM |
| cpw | 修改密碼 | cpw test@HADOOP.COM |
| delete_principal, delprinc | 刪除 principal | delete_principal test@HADOOP.COM |
| modify_principal, modprinc | 修改 principal | modify_principal test@HADOOP.COM |
| rename_principal, renprinc | 重命名 principal | rename_principal test@HADOOP.COM test2@ABC.COM |
| get_principal, getprinc | 獲取 principal | get_principal test@HADOOP.COM |
| list_principals, listprincs, get_principals, getprincs | 顯示所有 principal | listprincs |
| ktadd, xst | 導(dǎo)出條目到 keytab | xst -k /root/test.keytab test@HADOOP.COM |
| ? | 查看幫助 | ? |
【溫馨提示】-randkey是密碼是隨機(jī)的,-nokey密碼不隨機(jī)【默認(rèn)】,得手動(dòng)輸入密碼。
【示例】
addprinc -randkey hdfs/adminaddprinc -pw 123456 hdfs/admin addprinc hdfs/admin 輸入密碼:1234562)Kerberos Client 安裝
在hadoop-node2和hadoop-node3節(jié)點(diǎn)上安裝client
- krb5-workstation: 包含一些基本Kerberos程序,比如(kinit, klist, kdestroy,kpasswd),使用Kerberos的所有節(jié)點(diǎn)都應(yīng)該部署。
- krb5-devel:包含編譯Kerberos程序的頭文件和一些類庫。
配置 krb5.conf
【溫馨提示】/etc/krb5.conf : 客戶端根據(jù)該文件中的信息取訪問KDC
# To opt out of the system crypto-policies configuration of krb5, remove the # symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated. includedir /etc/krb5.conf.d/#Kerberos守護(hù)進(jìn)程的日志記錄方式。換句話說,表示 server 端的日志的打印位置。 [logging]#默認(rèn)的krb5libs.log日志文件存放路徑default = FILE:/var/log/krb5libs.log#默認(rèn)的krb5kdc.log日志文件存放路徑kdc = FILE:/var/log/krb5kdc.log#默認(rèn)的kadmind.log日志文件存放路徑admin_server = FILE:/var/log/kadmind.log#Kerberos使用的默認(rèn)值,當(dāng)進(jìn)行身份驗(yàn)證而未指定Kerberos域時(shí),則使用default_realm參數(shù)指定的Kerberos域。即每種連接的默認(rèn)配置,需要注意以下幾個(gè)關(guān)鍵的配置: [libdefaults]#DNS查找域名,我們可以理解為DNS的正向解析,該功能我沒有去驗(yàn)證過,默認(rèn)禁用。(我猜測該功能和domain_realm配置有關(guān))dns_lookup_realm = false# 憑證生效的時(shí)限,設(shè)置為24h。ticket_lifetime = 24h# 憑證最長可以被延期的時(shí)限,一般為7天。當(dāng)憑證過期之后,對安全認(rèn)證的服務(wù)的后續(xù)訪問則會(huì)失敗。renew_lifetime = 7d# 如果此參數(shù)被設(shè)置為true,則可以轉(zhuǎn)發(fā)票據(jù),這意味著如果具有TGT的用戶登陸到遠(yuǎn)程系統(tǒng),則KDC可以頒發(fā)新的TGT,而不需要用戶再次進(jìn)行身份驗(yàn)證。forwardable = true# 我理解是和dns_lookup_realm相反,即反向解析技術(shù),該功能我也沒有去驗(yàn)證過,默認(rèn)禁用即可。rdns = false# 在KDC中配置pkinit的位置,該參數(shù)的具體功能我沒有做進(jìn)一步驗(yàn)證。pkinit_anchors = /etc/pki/tls/certs/ca-bundle.crt#設(shè)置 Kerberos 應(yīng)用程序的默認(rèn)領(lǐng)域。如果您有多個(gè)領(lǐng)域,只需向 [realms] 節(jié)添加其他的語句。其中默認(rèn)EXAMPLE.COM可以為任意名字,推薦為大寫,這里我改成了HADOOP.COM。必須跟要配置的realm的名稱一致。default_realm = HADOOP.COM# 顧名思義,默認(rèn)的緩存名稱,不推薦使用該參數(shù)。default_ccache_name = KEYRING:persistent:%{uid}[realms]HADOOP.COM = {# kdc服務(wù)器地址。格式 [主機(jī)名或域名]:端口, 默認(rèn)端口是88,默認(rèn)端口可不寫kdc = server.kerberos.com:88# # admin服務(wù)地址 格式 [主機(jī)名或域名]:端口, 默認(rèn)端口749,默認(rèn)端口可不寫admin_server = server.kerberos.com:749# 代表默認(rèn)的域名,設(shè)置Server主機(jī)所對應(yīng)的域名default_domain = kerberos.com}#指定DNS域名和Kerberos域名之間映射關(guān)系。指定服務(wù)器的FQDN,對應(yīng)的domain_realm值決定了主機(jī)所屬的域。 [domain_realm].kerberos.com = HADOOP.COMkerberos.com = HADOOP.COM測試驗(yàn)證連接server
# 默認(rèn)用戶是root/admin@HADOOP.COM,發(fā)現(xiàn)在數(shù)據(jù)庫里沒有這個(gè)用戶,可以先在server端創(chuàng)建該用戶:add_principal root/admin@HADOOP.COM$ kadmin 輸入密碼:123456
指定用戶
3)基本命令操作
1、kadmin(數(shù)據(jù)庫管理)
Kerberos 客戶端機(jī)器上可以使用 kadmin 來執(zhí)行各種管理的操作,服務(wù)端可以使用kadmin和kadmin.local命令。需先在 Kerbers Server 上創(chuàng)建登錄的 principal,默認(rèn)為 {當(dāng)前用戶}/admin@realm。
管理KDC數(shù)據(jù)庫有兩種方式:
- 一種直接在KDC(server端)直接執(zhí)行,可以不需要輸入密碼就可以登錄【命令:kadmin.local】
- 一種則是客戶端命令,需要輸入密碼【命令:kadmin】,在server端和client端都可以使用。
創(chuàng)建用戶,注意自己設(shè)置的密碼
# 交互式 $ kadmin.localadd_principal root/admin# 非交互式 $ kadmin.local -q "add_principal root/admin"2、kinit(在客戶端認(rèn)證用戶)
$ kinit root/admin@HADOOP.COM # 查看當(dāng)前的認(rèn)證用戶 $ klist3、導(dǎo)出keytab認(rèn)證文件
使用xst命令或者ktadd命令:
# 非交互式 $ kadmin.local -q "ktadd -norandkey -k /root/root.keytab root/admin"# 交互式 $ kadmin.localktadd -norandkey -k /root/root.keytab root/admin 或xst -k /root/v.keytab root/admin 或xst -norandkey -k /root/root.keytab root/admin其中 /root/root.keytab為自己指定的路徑與文件名,以.keytab結(jié)尾;root/admin為之前創(chuàng)建的憑證用戶
查看密鑰文件
4、kdestroy(刪除當(dāng)前的認(rèn)證緩存)
$ kdestroy5、用戶認(rèn)證(登錄)
基于密碼認(rèn)證
$ klist $ kinit root/admin 輸入密碼:123456$ klist基于密鑰認(rèn)證(keytab)
# 刪除當(dāng)前用戶認(rèn)證 $ kdestroy# 拿到上面生成的keytab文件 $ klist $ kinit -kt /root/root.keytab root/admin $ klist
常見的基礎(chǔ)操作就到這里了,更多操作命令,可以查看官方文檔和查看幫助。后續(xù)會(huì)分享kerberos認(rèn)證實(shí)戰(zhàn)文章,請小伙伴耐心等待~
總結(jié)
以上是生活随笔為你收集整理的Kerberos认证原理与环境部署的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 搜搜更懂你
- 下一篇: ip iq 谐波检测matlab仿真,谐