hcna big data v10中文培訓(xùn)module05kerberosldap技術(shù)及應(yīng)用_第1頁(yè)
hcna big data v10中文培訓(xùn)module05kerberosldap技術(shù)及應(yīng)用_第2頁(yè)
hcna big data v10中文培訓(xùn)module05kerberosldap技術(shù)及應(yīng)用_第3頁(yè)
hcna big data v10中文培訓(xùn)module05kerberosldap技術(shù)及應(yīng)用_第4頁(yè)
hcna big data v10中文培訓(xùn)module05kerberosldap技術(shù)及應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

修訂記錄建議直接將本膠片另存,然后在此膠片的基礎(chǔ)上進(jìn)行編輯。本部分包含:培訓(xùn)目標(biāo)、目錄、習(xí)題、總結(jié)、問題等模板。參考IT解決方案產(chǎn)品培訓(xùn)課程開發(fā)內(nèi)容要素,按照模塊開發(fā)。課程編碼適用產(chǎn)品產(chǎn)品版本課程版本ISSUEH13-711FusionInsightHDV100R002C60V1.0開發(fā)/優(yōu)化者時(shí)間審核人開發(fā)類型(新開發(fā)/優(yōu)化)黃世友001835792016年6月高冬冬wx321719新開發(fā)本頁(yè)不打印Kerberos&LDAP

技術(shù)及應(yīng)用學(xué)完本課程后,您將能夠:熟悉FusionInsight產(chǎn)品中Kerberos&Ldap產(chǎn)品軟件架構(gòu)組成;熟悉FusionInsight產(chǎn)品中Kerberos&Ldap產(chǎn)品主要功能特性;了解FusionInsight產(chǎn)品中Kerberos&Ldap產(chǎn)品典型應(yīng)用案例。Kerberos、Ldap概述Kerberos、Ldap原理Kerberos、Ldap特性Kerberos、Ldap安裝與維護(hù)Kerberos介紹Kerberos這一名詞來(lái)源于希臘神話“三個(gè)頭的狗——地獄之門守護(hù)者”,后來(lái)沿用作為安全認(rèn)證的概念,該系統(tǒng)設(shè)計(jì)上采用客戶端/服務(wù)器結(jié)構(gòu)與DES、AES等加密技術(shù),并且能夠進(jìn)行相互認(rèn)證,即客戶端和服務(wù)器端均可對(duì)對(duì)方進(jìn)行身份認(rèn)證。可以用于防止竊聽、防止replay攻擊、保護(hù)數(shù)據(jù)完整性等場(chǎng)合,是一種應(yīng)用對(duì)稱密鑰體制進(jìn)行密鑰管理的系統(tǒng)。Kerberos基本概念票據(jù)授權(quán)票據(jù)(TGTTicket-GrantingTicket):用于應(yīng)用程序與KDC(KeyDistributionCenter密鑰分發(fā)中心)服務(wù)器建立安全會(huì)話的票據(jù),票據(jù)授權(quán)票據(jù)存在有效期,當(dāng)票據(jù)授權(quán)票據(jù)失效后,應(yīng)用側(cè)需要重新建立與KDC服務(wù)器的安全會(huì)話。會(huì)話有效期為24小時(shí),不可配置。服務(wù)票據(jù)(STServiceTicket):用于應(yīng)用程序與服務(wù)端建立安全會(huì)話的票據(jù),服務(wù)票據(jù)存在有效期,當(dāng)服務(wù)票據(jù)失效后,應(yīng)用側(cè)需要重新建立與服務(wù)端的安全會(huì)話。默認(rèn)有效期為5分鐘,不可配置。Ldap介紹Ldap(LightweightDirectoryAccessProtocol),輕量目錄訪問協(xié)議,提供被稱為目錄服務(wù)的信息服務(wù),特別是基于X.500(構(gòu)成全球分布式的目錄服務(wù)系統(tǒng)的協(xié)議)的目錄服務(wù)。Ldap運(yùn)行在TCP/IP或其他面向連接的傳輸服務(wù)之上。Ldap同時(shí)是一個(gè)IETF標(biāo)準(zhǔn)跟蹤協(xié)議,在“輕量級(jí)目錄訪問協(xié)議(Ldap)技術(shù)規(guī)范路線圖”RFC4510中被指定。Ldap軟件來(lái)源于OpenLDAP項(xiàng)目,該項(xiàng)目是一個(gè)由志愿者組成的團(tuán)隊(duì)。Ldap文件結(jié)構(gòu)LDAP信息模型是基于條目來(lái)組織的(如圖1.1),一個(gè)條目是一組屬性的集合,有一個(gè)全球唯一的識(shí)別名(DN,DomainName)。DN用于標(biāo)識(shí)條目。每個(gè)條目的屬性有一個(gè)類型和一個(gè)或多個(gè)值。該類型通常是可記憶的字符串,如“cn”就是標(biāo)識(shí)通用名稱,或者“電子郵件”就是電子郵件地址。該類型值的語(yǔ)法依賴于屬性類型。例如,一個(gè)cn屬性可以包含一個(gè)值MarixWong。一個(gè)mail屬性可以包含值。c=GBc=USst=Californiao=Googleou=Salesou=Marketingcn=MarixWong圖1.1Ldap文件結(jié)構(gòu)(續(xù))樹也可以根據(jù)互聯(lián)網(wǎng)域名組織。這種命名方式目前在業(yè)界非常普遍,因?yàn)樗试S使用DNS為目錄服務(wù)定位。如圖1.2所示的Ldap目錄樹中使用基于域的命名。dc=net

dc=Googleou=Peopleou=Serversuid=MarixWongdc=DE圖1.2用戶屬性用戶是作為管理FusionInsight的一個(gè)基本實(shí)體,又稱之為帳號(hào)。用戶包含如下的附屬信息:用戶名,密碼,用戶類別,用戶歸屬組,用戶歸屬角色,用戶電話號(hào)碼,用戶郵箱,用戶基本描述。其中用戶類別分為人機(jī)用戶和機(jī)機(jī)用戶,做出這樣的區(qū)分主要是從用戶使用的場(chǎng)景考慮的(API接口使用,還是界面交互使用)。其中創(chuàng)建人機(jī)用戶類別的用戶時(shí),需要輸入指定的密碼,而創(chuàng)建機(jī)機(jī)用戶類別的帳號(hào)時(shí),不需要指定密碼,由Kerberos通過(guò)安全算法生成隨機(jī)密鑰。用戶屬性(續(xù))用戶在FusionInsight系統(tǒng)中又分為默認(rèn)用戶和非默認(rèn)用戶默認(rèn)用戶指的是FusionInsight系統(tǒng)安裝,運(yùn)行所需要的用戶,對(duì)客戶不可見,完全是系統(tǒng)自運(yùn)行所需要而由系統(tǒng)自行創(chuàng)建,例如HDFS業(yè)務(wù)運(yùn)行所依賴的hdfs用戶。非默認(rèn)用戶指的是由客戶創(chuàng)建或者二次開發(fā)應(yīng)用創(chuàng)建,對(duì)客戶可見,在用戶管理系統(tǒng)的界面上可以直接看到該用戶及附屬信息,例如通過(guò)用戶管理界面創(chuàng)建一個(gè)test用戶,此時(shí)可以看到該用戶的附屬信息。用戶屬性(續(xù))從安全認(rèn)證的角度去劃分用戶的類別,又可以將用戶分為服務(wù)端用戶和客戶端用戶。服務(wù)端用戶:指的是集群某個(gè)服務(wù)的運(yùn)行用戶,例如HDFS服務(wù)運(yùn)行依賴的用戶。客戶端用戶:指的是進(jìn)行安全認(rèn)證的客戶端應(yīng)用程序運(yùn)行使用的用戶,例如某個(gè)應(yīng)用程序需要訪問HDFS服務(wù),那么該業(yè)務(wù)流程需要先進(jìn)行Kerberos認(rèn)證,那么此時(shí)就需要使用一個(gè)客戶端用戶去進(jìn)行Kerberos認(rèn)證,例如該用戶為test,即為客戶端用戶。用戶屬性(續(xù))用戶屬性還有一個(gè)關(guān)鍵的因素,即用戶密碼策略,密碼策略指定了該用戶的密碼屬性信息,包含最短密碼長(zhǎng)度,密碼組成的字符種類,密碼校驗(yàn)失敗的鎖定時(shí)長(zhǎng)等信息。對(duì)于人機(jī)用戶和機(jī)機(jī)用戶的密碼策略是有區(qū)別的,人機(jī)用戶的密碼策略包含了密碼的過(guò)期時(shí)間,默認(rèn)為90天,而機(jī)機(jī)用戶由于沒有顯示的密碼(系統(tǒng)隨機(jī)生成),因此其密碼策略不包含過(guò)期時(shí)間,即永久有效。用戶屬性(續(xù))keytab文件是由服務(wù)端Kerberos生成。內(nèi)容為該用戶的密碼通過(guò)AES-128/AES-256加密生成的密文文件。使用場(chǎng)景:集群內(nèi)某個(gè)服務(wù)需要使用keytab進(jìn)行運(yùn)行時(shí)安全認(rèn)證使用,例如hdfs啟動(dòng)依賴keytab文件,啟動(dòng)前進(jìn)行安全認(rèn)證。客戶進(jìn)行二次開發(fā)的應(yīng)用程序需要使用keytab進(jìn)行集群業(yè)務(wù)訪問前的安全認(rèn)證,例如查詢hdfs目錄或者put數(shù)據(jù)前,需要使用該keytab通過(guò)kerberos認(rèn)證。keytab需由使用者保密以確保安全,避免泄露給其他人。Ldap用戶信息介紹FusionInsight中Ldap用戶信息主要是提供給應(yīng)用服務(wù)獲取對(duì)應(yīng)的gid信息(即用戶組信息)進(jìn)行權(quán)限的識(shí)別,具體格式:

uid=20002(admin)gid=10000(supergroup)groups=10000(supergroup),8003(System_administrator_186)其中uid為用戶的唯一識(shí)別碼,gid為用戶組的唯一識(shí)別碼,例如上面的10000,8003,均為用戶組的識(shí)別碼,uid和gid均由FusionInsight的用戶管理系統(tǒng)分配。如果OS內(nèi)有某個(gè)用戶與FusionInsight內(nèi)部創(chuàng)建的用戶重名,會(huì)造成權(quán)限覆蓋現(xiàn)象。Kerberos、Ldap概述Kerberos、Ldap原理Kerberos、Ldap特性Kerberos、Ldap安裝與維護(hù)ApplicationmonJDKKDCServerLogin(as_req)tgs_reqcommandKerberos認(rèn)證應(yīng)用場(chǎng)景在安全模式集群中,訪問FusionInsight集群中的任意資源(如HDFS,HBase等服務(wù))之前,均需要通過(guò)Kerberos認(rèn)證,建立安全會(huì)話鏈接,如下邏輯結(jié)構(gòu)圖。認(rèn)證服務(wù)器(AS)票據(jù)授權(quán)服務(wù)器(TGS)數(shù)據(jù)庫(kù)(bd2,ldap)服務(wù)端(如HDFS)客戶端1.KRB_AS_REQ2.KRB_AS_REP3.KRB_TGS_REQ4.KRB_TGS_REP5.KRB_AP_REQ6.KRB_AP_REPKerberos認(rèn)證原理Step1、2、3、4:登錄ManagerWebUI的流程。Step5、6、7、8:登錄組件UI的流程。Step9:組件間訪問安全認(rèn)證。Kerberos1對(duì)Ldap中數(shù)據(jù)的操作方式:訪問Ldap1(主備兩個(gè)實(shí)例)和Ldap2(主備兩個(gè)實(shí)例),是采用負(fù)荷分擔(dān)訪問,數(shù)據(jù)的寫操作只能在Ldap2(主實(shí)例)上。數(shù)據(jù)的讀操作可以在Ldap1或者Ldap2上。Kerberos2對(duì)Ldap中數(shù)據(jù)的操作方式:只能訪問Ldap2(包含主備兩個(gè)實(shí)例),數(shù)據(jù)的寫操作只能在Ldap2(主實(shí)例)。FusionInsightKerberos架構(gòu)原理LdapKerberos數(shù)據(jù)讀取/寫入/修改權(quán)限管理用戶管理數(shù)據(jù)讀取/寫入/修改數(shù)據(jù)讀取/寫入/修改Kerberos與Ldap業(yè)務(wù)交互原理Kerberos作為認(rèn)證服務(wù)器中心,向集群內(nèi)所有服務(wù)以及客戶的二次開發(fā)應(yīng)用提供統(tǒng)一的認(rèn)證服務(wù)。Ldap作為用戶數(shù)據(jù)存儲(chǔ)中心,存儲(chǔ)了集群內(nèi)用戶的信息,包含密碼,附屬信息等。統(tǒng)一認(rèn)證的過(guò)程中,Kerberos的所有數(shù)據(jù),包含用戶的密碼,用戶的附屬信息(例如用戶歸屬組信息)均需要從Ldap獲取。每一次的認(rèn)證業(yè)務(wù),Kerberos均需要從Ldap中獲取用戶信息。安裝集群前OmsLdap數(shù)據(jù)同步安裝集群后Ldap數(shù)據(jù)同步OmsLdap(Standby)OmsLdap(Active)

數(shù)據(jù)同步方向OmsLdap(Standby)OmsLdap(Standby)數(shù)據(jù)同步方向組件Ldap(Active)組件Ldap(Standby)數(shù)據(jù)同步方向數(shù)據(jù)同步方向安裝集群前數(shù)據(jù)同步方向:主OmsLdap---->備OmsLdap。安裝集群后數(shù)據(jù)同步方向:主組件Ldap---->備組件Ldap&備OmsLdap&備OmsLdap。Ldap數(shù)據(jù)同步原理Kerberos、Ldap概述Kerberos、Ldap原理Kerberos、Ldap特性Kerberos、Ldap安裝與維護(hù)用戶存儲(chǔ)Ldap作為FusionInsight的基礎(chǔ)組件主要提供用戶數(shù)據(jù)存儲(chǔ)功能,其中包含集群內(nèi)的默認(rèn)用戶(例如admin用戶),客戶創(chuàng)建的用戶(例如通過(guò)UI界面創(chuàng)建一個(gè)用戶)。存儲(chǔ)了用戶的兩個(gè)關(guān)鍵信息,分別是Kerberos信息和Ldap信息。Kerberos信息主要包含用戶的用戶名,密碼信息,對(duì)Kerberos提供認(rèn)證查詢功能,即密碼的校驗(yàn)功能。Ldap信息主要包含用戶的附屬信息,例如:用戶類別,用戶組信息,角色信息,郵箱等。對(duì)外提供鑒權(quán)功能,即權(quán)限的識(shí)別,例如該用戶是否具有訪問HDFS某個(gè)文件目錄的權(quán)限。集群內(nèi)服務(wù)認(rèn)證Kerberos服務(wù)在FusionInsight集群中是一個(gè)基礎(chǔ)組件模塊,在安全模式下,所有的業(yè)務(wù)組件都需要依賴Kerberos服務(wù)(組件),業(yè)務(wù)組件(如HDFS)在對(duì)外提供業(yè)務(wù)的過(guò)程中,均需要先通過(guò)Kerberos的認(rèn)證服務(wù),如果無(wú)法通過(guò)Kerberos認(rèn)證,將無(wú)法獲取該業(yè)務(wù)組件的任何業(yè)務(wù)服務(wù)。LdapServer作為Kerberos的數(shù)據(jù)存儲(chǔ)模塊,與其他所有的業(yè)務(wù)組件(除Kerberos服務(wù))均不直接交互。FusionInsight安全模式集群內(nèi)任意服務(wù)間的相互訪問都是基于Kerberos安全方案架構(gòu)實(shí)現(xiàn)。集群內(nèi)某個(gè)服務(wù)(如HDFS)prestart的時(shí)候,會(huì)預(yù)先去Kerberos中獲取該服務(wù)對(duì)應(yīng)的服務(wù)名稱sessionkey(keytab,主要是提供給應(yīng)用程序進(jìn)行身份認(rèn)證使用),在后續(xù)任意其他服務(wù)(如YARN)需要去HDFS中執(zhí)行增/刪/改/查數(shù)據(jù)時(shí),必須獲取到對(duì)應(yīng)的TGT和ST,用于本次的安全訪問。集群內(nèi)服務(wù)認(rèn)證(續(xù))HDFS服務(wù)KerberosServerprestart階段,調(diào)用API接口,生成keytab放置到HDFS服務(wù)端目錄。進(jìn)程啟動(dòng)后(如NameNode進(jìn)程),將Kerberos的客戶端配置文件krb5.conf加載到進(jìn)程中,用于Kerberos認(rèn)證。周期性的服務(wù)檢查,使用Kerberos的命令,加載prestart生成的keytab進(jìn)行認(rèn)證,檢查文件系統(tǒng)可用性。二次開發(fā)認(rèn)證FusionInsight提供了二次開發(fā)接口,用于客戶或者上層業(yè)務(wù)產(chǎn)品集成FusionInsight作為二次開發(fā)使用,二次開發(fā)過(guò)程中,安全模式集群提供了特定的二次開發(fā)認(rèn)證接口,用于二次開發(fā)過(guò)程中的安全訪問。跨集群互信特性FusionInsight提供兩個(gè)集群之間的互信特性,用于實(shí)現(xiàn)集群之間的數(shù)據(jù)讀、寫。default_realm:本端集群的域名,唯一標(biāo)識(shí)該集群的域信息。password_suffix:密碼后綴,用于配置跨集群后的人機(jī)賬號(hào)初始化密碼后綴,默認(rèn)值為Admin@123。配置互信之后,系統(tǒng)的人機(jī)賬號(hào)密碼均會(huì)初始化,通過(guò)默認(rèn)的密碼前綴加上用戶的特性密碼后綴組成安全的初始化密碼,默認(rèn)的密碼前綴為Admin@123。peer_kdc_services:標(biāo)識(shí)對(duì)端集群的KDC監(jiān)聽I(yíng)P和端口,例如192.168.1.5:21731。peer_realm:標(biāo)識(shí)對(duì)端集群的域名。跨集群互信特性的配置步驟,請(qǐng)參見產(chǎn)品文檔的《管理員指南》的“配置跨集群互信”章節(jié)。跨集群互信特性(參數(shù)說(shuō)明)Ldapserver(Active)Ldapserver(Standby)LdapHA機(jī)制FusionInsight中集成的Ldap服務(wù)提供了HA機(jī)制,提升Ldap的高可靠性,具體配置如下:Kerberos、Ldap概述Kerberos、Ldap原理Kerberos、Ldap特性Kerberos、Ldap安裝與維護(hù)常用角色部署方式Kerberos服務(wù)角色:KerberosServer、KerberosAdmin。KerberosServer對(duì)外提供認(rèn)證功能,KerberosAdmin對(duì)外提供用戶管理(用戶的增,刪,改)功能。Kerberos服務(wù)采用負(fù)荷分擔(dān)模式部署,安裝的時(shí)候,需將Kerberos服務(wù)選擇到集群內(nèi)兩個(gè)控制節(jié)點(diǎn)。LdapServer服務(wù)角色:SlapdServer。LdapServer服務(wù)采用主備模式部署,安裝的時(shí)候,需將LdapServer服務(wù)選擇到集群內(nèi)兩個(gè)控制節(jié)點(diǎn)。考慮性能最優(yōu)化,建議所有集群中LdapServer都與KrbServer部署在相同節(jié)點(diǎn)上。配置項(xiàng)配置含義KADMIN_PORTkadmin服務(wù)提供用戶管理的端口。Kdc_portskdc服務(wù)實(shí)例的端口。Kdc_timoutkdc提供認(rèn)證服務(wù)的超時(shí)時(shí)長(zhǎng)。KPASSWD_PORTkadmin提供密碼管理的端口。LDAP_OPTION_TIMEOUTKerberos對(duì)后端LDAP數(shù)據(jù)庫(kù)進(jìn)行連接的超時(shí)時(shí)長(zhǎng),連接操作時(shí)間超過(guò)該值,Kerberos返回失敗。LDAP_SEARCH_TIMEOUTKerberos對(duì)后端LDAP數(shù)據(jù)庫(kù)進(jìn)行操作的查詢時(shí)長(zhǎng),查詢操作時(shí)間超過(guò)該值,Kerberos返回失敗。max_retriesJDK進(jìn)程連接KDC進(jìn)行認(rèn)證的最大次數(shù),如果連接次數(shù)超過(guò)設(shè)定值,返回失敗。參數(shù)介紹命令命令含義ldapsearch系統(tǒng)自帶的Ldap客戶端命令工具,查詢Ldap中的用戶信息。ldapadd系統(tǒng)自帶的Ldap客戶端命令工具,向Ldap中的添加用戶信息。ldapdelete系統(tǒng)自帶的Ldap客戶端命令工具,刪除Ldap中的用戶信息。kinit

Kerberos用戶身份認(rèn)證,只有通過(guò)身份認(rèn)證的用戶才能執(zhí)行FusionInsightHD各組件的shell命令,完成組件的維護(hù)任務(wù)。kdestroyKerberos用戶身份注銷,完成組件任務(wù)后使用。kadmin切換致kerberosadmin用戶,擁有admin權(quán)限,該用戶可以獲取、修改kerberos用戶信息。kpasswd修改Kerberos用戶密碼。klist列出當(dāng)前通過(guò)身份認(rèn)證的Kerberos用戶。常用命令1.以下對(duì)于Kerberos描述正確的是()(a)Kerberos組件分為KerberosServer和KerberosAdmin兩個(gè)進(jìn)程。(b)Ker

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論