專利名稱:用于在安全網(wǎng)絡(luò)環(huán)境中提供憑證和軟件映象的方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及為引導(dǎo)映象(boot image)交換提供安全保證。 尤其是,本發(fā)明的一個實施例采用數(shù)據(jù)隧道傳輸(tunneling)來保護 將引導(dǎo)映象下載到計算機系統(tǒng)的遠程引導(dǎo)環(huán)境。
背景技術(shù):
遠程引導(dǎo)允許處于預(yù)引導(dǎo)狀態(tài)的設(shè)備從外部服務(wù)器或其他信源, 而不是從諸如軟盤、硬盤驅(qū)動器或CDROM之類的本地存儲設(shè)備, 獲得引導(dǎo)映象。遠程引導(dǎo)依賴于預(yù)引導(dǎo)協(xié)議,該協(xié)議由駐留在設(shè)備上 的遠程引導(dǎo)環(huán)境來實現(xiàn)。典型的遠程引導(dǎo)環(huán)境采用基本輸入輸出系統(tǒng)
(BIOS)固件指令來控制諸如網(wǎng)絡(luò)接口卡(NIC)之類的接口以下載 引導(dǎo)映象,然后該引導(dǎo)映象在本地運行以啟動該設(shè)備。這樣的遠程引 導(dǎo)環(huán)境的一個實例是"預(yù)引導(dǎo)執(zhí)行環(huán)境"(PXE),它是英特爾公司聯(lián) 網(wǎng)管理標(biāo)準(zhǔn)(第2.1版本,于1999年9月20日由位于加利福尼亞州 圣克拉拉的英特爾公司和位于馬薩諸塞州牛頓的SYSTEMSOFT公司 出版)的一部分。
PXE的魯棒性包括它通過利用各種網(wǎng)絡(luò)協(xié)議來控制引導(dǎo)映象交 換的能力,這些協(xié)議例如是網(wǎng)際協(xié)議(IP)、動態(tài)主機配置協(xié)議
(DHCP)、用戶數(shù)據(jù)報協(xié)議(UDP)以及普通文件傳輸協(xié)議(TFTP)。 然而,現(xiàn)在的PXE僅僅提供了一組關(guān)于如何使用這些協(xié)議的建議。 例如,當(dāng)前的PXE處理利用(leverages)不安全的DHCP得到關(guān)于 可用PXE服務(wù)器的信息,然后利用與PXE服務(wù)器的不安全TFTP會 話得到引導(dǎo)映象。而且,PXE傳統(tǒng)上提供引導(dǎo)完整性服務(wù)(BIS), 用于對下載的引導(dǎo)映象提供完整性檢驗。然而,由于BIS依賴于引導(dǎo) 目標(biāo)授權(quán)證書(BOAC)的用戶配置,BIS沒有被廣泛采用。
根據(jù)對于不同的網(wǎng)絡(luò)訪問控制方法的各要素的最近的發(fā)展,如果 不具備為了最初的網(wǎng)絡(luò)訪問而執(zhí)行的某種形式的網(wǎng)絡(luò)認證協(xié)議,由遠 程引導(dǎo)環(huán)境進行網(wǎng)絡(luò)協(xié)議的本地執(zhí)行是不可行的。另外,以本地形式 利用這些協(xié)議呈現(xiàn)出多個安全漏洞,其可以容易地被對方利用以破壞 對來自于網(wǎng)絡(luò)資源的安全憑證或者引導(dǎo)映象的獲取。
圖1是說明將引導(dǎo)映象信息通過網(wǎng)絡(luò)傳送到駐留在各個網(wǎng)絡(luò)節(jié) 點上的遠程引導(dǎo)環(huán)境的模塊圖。
圖2是說明服務(wù)器場(serverfarm)的模塊圖,在該服務(wù)器場中, 引導(dǎo)映象信息被傳送到駐留在各個服務(wù)器上的遠程引導(dǎo)環(huán)境。 圖3是說明采用遠程引導(dǎo)環(huán)境的引導(dǎo)映象交換的序列圖。 圖4是說明采用數(shù)據(jù)隧道以交換與引導(dǎo)映象交換相關(guān)的加密信 息的序列圖。
圖5是說明采用數(shù)據(jù)隧道以保護引導(dǎo)映象交換的序列圖。 圖6是說明用于通過遠程引導(dǎo)環(huán)境進行安全引導(dǎo)映象交換的算 法的流程圖。
圖7是說明其中駐留有遠程引導(dǎo)環(huán)境的計算機的模塊圖。 圖8是說明以類型一長度一值(TLV)格式進行隧道傳輸?shù)男畔?的數(shù)據(jù)結(jié)構(gòu)圖。
具體實施例方式
前面已經(jīng)描述了用于提供引導(dǎo)映象信息的安全傳送的技術(shù)和體 系結(jié)構(gòu)。在下面的描述中,為了便于解釋,大量的具體細節(jié)得以闡明 從而提供了本發(fā)明的完整理解。然而,對于本領(lǐng)域的技術(shù)人員來說顯 而易見的是沒有這些特定細節(jié)也能實現(xiàn)本發(fā)明。在另外的例子中,為 了避免模糊描述,結(jié)構(gòu)和設(shè)備示例為模塊圖的形式。
在說明書中提到的"一個實施例"或"某實施例"意味著與該實 施例相關(guān)聯(lián)描述的特定的特征、結(jié)構(gòu)或特性包括在本發(fā)明的至少一個 實施例中。在說明書不同地方出現(xiàn)的詞組"在一個實施例中"并不總
是表示同一實施例。
下面的詳細描述的一些部分按照對于計算機存儲器中數(shù)據(jù)位進 行的操作的算法和符號表示來呈現(xiàn)。這些算法描述和表示是網(wǎng)絡(luò)技術(shù) 領(lǐng)域技術(shù)人員用來向本領(lǐng)域技術(shù)人員最有效的傳送他們的工作內(nèi)容 的手段。這里的算法通常被表達為導(dǎo)出期望結(jié)果的自相容的步驟序 列。這些步驟需要對物理量進行物理操作。通常,盡管不是必需的, 這些物理量能夠以電信號或者磁信號的形式被存儲、傳送、組合、比 較以及進行其他操作。已經(jīng)證明,有時為了方便,主要為了通用的原 因,把這些信號表示為比特、值、元素、符號、字符、項、數(shù)字等等。
然而,應(yīng)當(dāng)記住,所有這些以及相似的術(shù)語都與適當(dāng)?shù)奈锢砹肯?關(guān)聯(lián),它們僅僅是為了方便而應(yīng)用到這些量上的標(biāo)簽。除非特別的說 明,否則,從下面的描述可以明顯看出,在整個描述中,利用諸如"處 理"、"計算"、"計劃"、"確定"或"顯示"等之類的術(shù)語進行的詳述 指的是計算機系統(tǒng)或類似的電子計算設(shè)備的動作或處理,其操作或者 變換在計算機系統(tǒng)的寄存器或存儲器中由物理(電子)量表示的數(shù)據(jù), 將其轉(zhuǎn)化為在計算機系統(tǒng)存儲器或寄存器或者其他的信息存儲、發(fā)送 或顯示設(shè)備中由物理量類似表示的其它數(shù)據(jù)。
這里所表示的算法和顯示并不內(nèi)在地與任何特定的計算機或其 他裝置相聯(lián)系。根據(jù)本文的教導(dǎo),可以采用各種包含程序的通用系統(tǒng), 或者也可以方便地建立更多專用裝置以執(zhí)行所需要的方法步驟。從下 面的描述可以明顯看出這些多種系統(tǒng)所需要的結(jié)構(gòu)。另外,本發(fā)明沒 有參照任何特定的程序語言進行描述。應(yīng)當(dāng)理解,可以使用多種程序 語言來實現(xiàn)本文所述發(fā)明的教導(dǎo)。
圖1說明了一個其中可以實現(xiàn)某個實施例的框架結(jié)構(gòu)。圖1顯示
了系統(tǒng)IOO,其中,引導(dǎo)映象從引導(dǎo)映象源101通過網(wǎng)絡(luò)102發(fā)送到 一個或多個其他網(wǎng)絡(luò)節(jié)點的遠程引導(dǎo)環(huán)境。在這個例子中,其他網(wǎng)絡(luò) 節(jié)點包括客戶端支持的PXE103、單個服務(wù)器支持的PXE104以及服 務(wù)器場支持的PXE105。然而,也可以采用任意數(shù)量的引導(dǎo)映象源以 及任意數(shù)量的支持遠程引導(dǎo)環(huán)境的網(wǎng)絡(luò)節(jié)點。應(yīng)當(dāng)理解,接收引導(dǎo)映 象的系統(tǒng)或裝置的突出特征是其對遠程引導(dǎo)環(huán)境的支持。同樣應(yīng)當(dāng)理
解,除了 PXE之外,也可以采用任何支持在認證信道中對數(shù)據(jù)進行 隧道傳輸?shù)倪h程引導(dǎo)環(huán)境。
網(wǎng)絡(luò)102提供了多個網(wǎng)絡(luò)節(jié)點之間的互連,例如客戶端計算機、 刀片式服務(wù)器、服務(wù)器場等等之間的互連。在一個實施例中,網(wǎng)絡(luò) 102是本領(lǐng)域中熟知的局域網(wǎng)(LAN)。在另一個可選實施例中,網(wǎng) 絡(luò)102可以是廣域網(wǎng)(WAN)、因特網(wǎng)、或者任何其他類型的網(wǎng)絡(luò)。 引導(dǎo)映象源101是存儲一個或多個引導(dǎo)映象的服務(wù)器或者其他設(shè)備, 所述引導(dǎo)映象能夠被用于由引導(dǎo)映象源支持的網(wǎng)絡(luò)節(jié)點。
這些節(jié)點可以是例如服務(wù)器104或者由IT組織控制的服務(wù)器場 105,從而使得技術(shù)人員能夠從引導(dǎo)映象源101經(jīng)由網(wǎng)絡(luò)102下載引 導(dǎo)映象,而不需更直接地訪問接收節(jié)點。可以理解,引導(dǎo)映象包括用 來使系統(tǒng)脫離預(yù)引導(dǎo)狀態(tài)的任何數(shù)據(jù)。該數(shù)據(jù)包括但不限于操作系 統(tǒng)、系統(tǒng)應(yīng)用、診斷、數(shù)據(jù)恢復(fù)信息以及類似的系統(tǒng)軟件。引導(dǎo)映象 可以僅構(gòu)成引導(dǎo)映象交換的一部分,該引導(dǎo)映象交換可以進一步包括 在設(shè)備之間交換以便于引導(dǎo)映象從一個設(shè)備發(fā)送到另一個設(shè)備的其 他信息。引導(dǎo)映象交換可以包括,例如,協(xié)議握手、安全憑證交換以 及加密密鑰交換。
圖2說明了可以實現(xiàn)某實施例的另一個框架結(jié)構(gòu)。圖2呈現(xiàn)了一 個服務(wù)器場200,其中,引導(dǎo)圖像被從第一服務(wù)器201經(jīng)由本地共享 總線204發(fā)送到服務(wù)器場200中的一個或多個服務(wù)器202、 203上的 遠程引導(dǎo)環(huán)境。在這個例子中,服務(wù)器202、 203中的每一個都支持 PXE作為遠程引導(dǎo)環(huán)境。當(dāng)服務(wù)器場200中的一個或多個服務(wù)器202、 203處于預(yù)引導(dǎo)狀態(tài)并需要引導(dǎo)映象的最新版本的同時,在某點,第 一服務(wù)器201具有引導(dǎo)映象的最新版本。在服務(wù)器場中的第一服務(wù)器 201與另一服務(wù)器202之間的與引導(dǎo)映象交換有關(guān)的通信可以比圖1 中所說明的簡單。例如,駐留在服務(wù)器202中的PXE可以不需要經(jīng) DHCP交換獲得IP地址而發(fā)起引導(dǎo)映象交換。與在網(wǎng)絡(luò)中發(fā)現(xiàn)引導(dǎo) 映象服務(wù)器相比較,在服務(wù)器場中識別出作為引導(dǎo)映象源的第一服務(wù) 器201更為簡便。然而,在本地共享總線204上引導(dǎo)映象交換的安全 性視服務(wù)器場200中每個服務(wù)器的完整性而定。因此,作為在網(wǎng)絡(luò)102上引導(dǎo)映象交換的例子,在服務(wù)器場200的共享總線204上的引 導(dǎo)映象交換具有同樣的安全隱患。
圖3說明了涉及網(wǎng)絡(luò)節(jié)點的遠程引導(dǎo)環(huán)境和網(wǎng)絡(luò)上的引導(dǎo)映象 源的典型的交換300。在這個例子中,網(wǎng)絡(luò)節(jié)點是PXE客戶端301, 該客戶端將PXE作為其遠程引導(dǎo)環(huán)境,而引導(dǎo)映象源是引導(dǎo)服務(wù)器 302。交換300包括第一階段303以建立一個認證信道,以及第二階 段308以在PXE客戶端301和引導(dǎo)服務(wù)器302之間使用所建立的認 證信道來交換引導(dǎo)映象。
在第一階段303, PXE客戶端的遠程引導(dǎo)環(huán)境發(fā)送"PXEDHCP 304"以查找到DHCP服務(wù)器,并請求用來與引導(dǎo)服務(wù)器通信所需的 IP地址和IP配置參數(shù)。為了說明簡便,在這個例子中,DHCP服務(wù) 器也是引導(dǎo)服務(wù)器302。PXE客戶端301接收包含有IP信息的"DHCP 確認305", PXE客戶端301將利用該IP信息來與引導(dǎo)服務(wù)器302通 信。
為了在駐有引導(dǎo)服務(wù)器302的網(wǎng)絡(luò)中認證自己,PXE客戶端301 將提供適合于該網(wǎng)絡(luò)訪問框架的網(wǎng)絡(luò)訪問能力。在符合電氣和電子工 程師協(xié)會(IEEE) 802.1X標(biāo)準(zhǔn)的網(wǎng)絡(luò)中,這是802.1X客戶端的形式, 執(zhí)行恰當(dāng)?shù)腅AP方法以認證網(wǎng)絡(luò)訪問設(shè)備(NAD)的客戶端,該網(wǎng) 絡(luò)訪問設(shè)備可以是交換機或訪問點(AP)(在圖3中未示出)。在非 802. IX的網(wǎng)絡(luò)中,這表明它本身處于通過UDP交換而被傳送的EAP 協(xié)議(EAP-UDP)中。此外,在遠程訪問的情況下,可以通過虛擬 專用網(wǎng)絡(luò)(VPN)連接的例子來進行說明。該最后一個類型的例子是 在因特網(wǎng)密鑰交換(IKE)第2版協(xié)議上利用EAP方法,用于基于IPSec 的VPN。在1998年11月的網(wǎng)絡(luò)工作組(Network Working Group) 的標(biāo)準(zhǔn)草案RFC 2409中提出了這樣的IKE的一個例子。在圖3說明 的例子中,通過交換"EAP詢問(UDP) 306"以及"EAP響應(yīng)(UDP) 307",認證PXE客戶端301。
在第二階段308, 一旦在PXE客戶端301和駐留有引導(dǎo)服務(wù)器 302的網(wǎng)絡(luò)之間建立了認證信道,PXE客戶端301能夠發(fā)起與引導(dǎo)服 務(wù)器302的引導(dǎo)映象交換。應(yīng)當(dāng)理解,引導(dǎo)映象交換包括幫助引導(dǎo)映象從引導(dǎo)映象源發(fā)送到駐留在另一計算機系統(tǒng)上的遠程引導(dǎo)環(huán)境的 所有通信。這可以包括用于在引導(dǎo)映象發(fā)送中采用的協(xié)議的任意服務(wù) 器查找消息以及握手信息。
PXE客戶端301通過"PXE引導(dǎo)服務(wù)器查找309"以及返回的確 認"引導(dǎo)服務(wù)器確認310",找到引導(dǎo)服務(wù)器302。 一旦引導(dǎo)服務(wù)器被 發(fā)現(xiàn),能夠經(jīng)由"PXE下載請求311"來請求引導(dǎo)映象本身。當(dāng)接收 到對于引導(dǎo)映象的請求時,引導(dǎo)服務(wù)器302發(fā)送"引導(dǎo)映象312"到 PXE客戶端301 。除了交換300的第一階段303和第二階段308以外, PXE客戶端301還可以有其他的憑證或證書315 (不同于BOAC), 以經(jīng)由"憑證313"和"憑證確認314"發(fā)送到引導(dǎo)服務(wù)器302。 一 旦接收到引導(dǎo)映象,PXE客戶端301能夠通過執(zhí)行引導(dǎo)映象316而自 行引導(dǎo)。
圖4說明了實施例400,其中,使用安全數(shù)據(jù)發(fā)送來保護引導(dǎo)映 象交換。該實施例400提供了一種將遠程引導(dǎo)環(huán)境的帶內(nèi)BIOS
(in-bandBIOS) /基于固件的流封裝在增強的安全上下文中的手段。 這種基于固件的流的例子符合由UFEI論壇發(fā)布的統(tǒng)一可擴展固件接 口 (UEFI)規(guī)范第2.0版。特別是,普通的隧道方法被用于通過EAP 認證信道403向駐留在裝置或者系統(tǒng)上的PXE安全地提供引導(dǎo)映象。 在這種上下文中,TLV隧道和屬性-值對(AVP)隧道都被用于描述 用來封裝任意數(shù)據(jù)的通用機制。
圖4說明了 PXE客戶端401和引導(dǎo)服務(wù)器402之間利用所建立 的認證信道403的安全引導(dǎo)映象交換,該認證信道403由暗線表示。 在EAP認證信道403中,數(shù)據(jù)隧道404被用于發(fā)送與引導(dǎo)映象交換 相關(guān)的數(shù)據(jù)。在這種情況下,引導(dǎo)服務(wù)器402采用加密的引導(dǎo)映象交 換406,并且與引導(dǎo)映象交換相關(guān)的隧道發(fā)送數(shù)據(jù)是交換的加密密鑰 信息405。可以代替所交換的加密密鑰信息405或者除所交換的加密 密鑰信息405之外額外地交換其他加密信息。除了引導(dǎo)映象交換406 之外的數(shù)據(jù)交換,例如憑證407的交換,可以在數(shù)據(jù)隧道404之外發(fā) 生。加密方法和密鑰可以符合例如由(美國)國家標(biāo)準(zhǔn)和技術(shù)研究所
(MST)推薦的"先進加密系統(tǒng)(AES)",參見2001年11月26日 公開的聯(lián)邦信息處理標(biāo)準(zhǔn)(FIPS) PUB 197。各種類型的加密技術(shù), 例如對稱、非對稱、公開密鑰、私有密鑰等,可以被用于不同的實施 例中,而不限制于本文列舉的情況。在一個實施例中,密鑰可以通過 服務(wù)器加密和/或認證引導(dǎo)映象。而后,該密鑰可以被傳送到客戶端, 客戶端能夠利用這些密鑰來確認引導(dǎo)映象的完整性。在這樣的使用模 型中,認證信道可以僅被用來傳送加密密鑰,引導(dǎo)映象在認證信道之 外傳送。通過利用這些加密密鑰來確認引導(dǎo)映象的完整性,確保了引 導(dǎo)映象是正確的,是所期望的形式,并且沒有被惡意實體發(fā)送和/或 修改。一旦加密的引導(dǎo)交換406和隧道傳輸?shù)拿荑€交換404完成,PXE 客戶端401就可以從如上所述的駐留的PXE環(huán)境中執(zhí)行接收到的引 導(dǎo)映象。
圖5說明了 PXE客戶端501和引導(dǎo)服務(wù)器502之間利用所建立 的認證信道503的安全引導(dǎo)映象交換500,該認證信道503由暗線表 示。在EAP認證信道503內(nèi),數(shù)據(jù)隧道504被用于發(fā)送與引導(dǎo)映象 交換相關(guān)的數(shù)據(jù)。數(shù)據(jù)隧道504可以是TLV類型、AVP類型或者符 合另一通用方法以在兩個相關(guān)方之間傳送通用數(shù)據(jù)。在這種情況下, 與引導(dǎo)映象交換相關(guān)的隧道傳輸數(shù)據(jù)是完整的引導(dǎo)交換本身505。在 這個例子里,還對憑證506進行隧道傳輸。在不同的實施例中,不是 所有的引導(dǎo)映象交換都被進行隧道傳輸。在另一些實施例中,除了被 隧道傳輸?shù)囊龑?dǎo)映象交換505之外,數(shù)據(jù)的交換,例如憑證506的交 換,可以發(fā)生在數(shù)據(jù)隧道504之外。 一旦被隧道傳輸?shù)囊龑?dǎo)交換505 和憑證506的交換完成,PXE客戶端501可以如上所述從駐留的PXE
環(huán)境中執(zhí)行接收到的引導(dǎo)映象。
圖6說明了用于實現(xiàn)一個實施例的方法的算法600。在這個例子 中,該方法在PXE客戶端執(zhí)行,以期從引導(dǎo)映象源獲得引導(dǎo)映象, 該引導(dǎo)映象源例如是PXE引導(dǎo)服務(wù)器。在601,駐留在PXE客戶端 的PXE環(huán)境搜索已存在的PXE引導(dǎo)服務(wù)器。該搜索可以包括通過 DHCP服務(wù)器獲得網(wǎng)絡(luò)訪問,并發(fā)送一個如上所述的PXE引導(dǎo)服務(wù) 器查找信息。如果不能獲得PXE引導(dǎo)服務(wù)器,在步驟606, PXE客 戶端調(diào)用該PXE客戶端的操作系統(tǒng)加載器(OS loader),該加載器可
以加載已經(jīng)存在的、可能過期的引導(dǎo)映象。如果可以獲得PXE引導(dǎo) 服務(wù)器,在步驟602, PXE客戶端查看該PXE是否支持用于引導(dǎo)映 象交換的數(shù)據(jù)隧道,例如TLV/AVP中的PXE交換的封裝。
如果PXE不支持用于引導(dǎo)映象交換的數(shù)據(jù)隧道,在605, PXE 客戶端可以執(zhí)行一個傳統(tǒng)的、也即更低安全性的PXE交換,或者可 選的,完全不容許該設(shè)備進行遠程引導(dǎo)(未示出)——這依賴于所實 施的管理策略。如果PXE支持用于引導(dǎo)映象交換的數(shù)據(jù)隧道,在步 驟603, PXE客戶端設(shè)法同PXE引導(dǎo)服務(wù)器協(xié)商一個認證信道方法, 例如,經(jīng)協(xié)商的EAP方法。如果協(xié)商失敗,在605, PXE客戶端可 以執(zhí)行一個傳統(tǒng)的、也即更低安全性的PXE交換,或者可選的,完 全不容許該設(shè)備進行遠程引導(dǎo)(未示出)——這依賴于所實施的管理 策略。在完成傳統(tǒng)的PXE交換之后,在步驟606, PXE客戶端調(diào)用 一個該PXE客戶端的操作系統(tǒng)加載器,其可以加載通過不安全的交 換接收到的引導(dǎo)映象。
如果協(xié)商成功,在604, PXE客戶端可以執(zhí)行該方法以建立認證 信道,并在認證信道內(nèi)進行引導(dǎo)映象交換。如上所述,與引導(dǎo)映象交 換相關(guān)的數(shù)據(jù)在PXE客戶端和PXE引導(dǎo)服務(wù)器之間被隧道傳輸。在 一個實施例中,引導(dǎo)映象的至少一部分被加密,并且TLV/AVP數(shù)據(jù) 隧道被用來交換加密密鑰信息,該加密密鑰信息被用于解密引導(dǎo)映 象。在另一實施例中,在TLV/AVP數(shù)據(jù)隧道中交換至少一部分引導(dǎo) 映象本身。一旦PXE客戶端與引導(dǎo)服務(wù)器之間的部分隧道傳輸?shù)腜XE 業(yè)務(wù)完成,在步驟606, PXE客戶端調(diào)用該PXE客戶端的操作系統(tǒng) 加載器,其可以加載通過安全的、至少部分隧道傳輸?shù)慕粨Q接收到的 引導(dǎo)映象。
該發(fā)明也涉及用于執(zhí)行這里所描述的操作的裝置。該裝置可以為 了所要求的目的而專門設(shè)計,或者它可以包括通過存儲在計算機中的 計算機程序選擇性地激活或重配置的通用計算機。這樣的計算機程序 可以存儲在計算機可讀存儲介質(zhì)中,例如但不限于,任意類型的盤, 包括軟盤、光盤、CD-ROM、磁光盤、只讀存儲器(ROM)、隨機訪 問存儲器(RAM)、 EPROM、 EEPROM、磁卡或光卡,或者任意類
型的適于存儲電子指令的介質(zhì),并且其中每個都耦合到計算機系統(tǒng)總 線。在一個可選實施例中,硬線連接的電路能夠被用來代替軟件指令 或與軟件指令組合以實現(xiàn)本發(fā)明。從而,該發(fā)明不限于硬件電路和軟 件指令的任意特定組合。,
圖7說明了適于在一個實施例中采用的計算機系統(tǒng)的一個實施 例。計算機系統(tǒng)700包括總線704或者其他用于傳送信息的通信設(shè)備, 以及耦合到總線704的用于處理信息的處理器701。雖然所描述的計 算機系統(tǒng)700具有單個處理器,該計算機系統(tǒng)700也可以包括多個處 理器。計算機系統(tǒng)700還包括存儲器設(shè)備702,例如用于存儲由處理 器701執(zhí)行的信息和指令的、耦合到總線704的隨機訪問存儲器 (RAM)。存儲器702也能夠用來存儲在處理器701執(zhí)行指令過程中 的臨時變量或者其他的中間信息。計算機系統(tǒng)700也具有耦合到總線 704的非易失性存儲器702,例如只讀存儲器(ROM)或者固件,存 儲用于處理器701的BIOS指令或類似的系統(tǒng)軟件。其他的存儲介質(zhì) 707如快閃存儲器、磁盤或者光盤以及相應(yīng)的驅(qū)動器,可以進一步耦 合到總線704以存儲信息或指令。
計算機系統(tǒng)700也能夠具有顯示器706,例如陰極射線管(CRT) 或者液晶顯示器(LCD),其經(jīng)由顯示控制器705耦合到總線704, 用于向計算機用戶顯示信息。包括字母數(shù)字以及其他鍵的字母數(shù)據(jù)輸 入/輸出(I/O)設(shè)備710,也可以經(jīng)由I/O控制器709耦合到總線704。 計算機系統(tǒng)700進一步包括提供對網(wǎng)絡(luò)712的訪問的網(wǎng)絡(luò)接口 708。 在一個實施例中,網(wǎng)絡(luò)接口 708是網(wǎng)絡(luò)接口卡(NIC)。根據(jù)一個實 施例,網(wǎng)絡(luò)接口 708被用于從遠程引導(dǎo)映象源服務(wù)器下載引導(dǎo)映象, 以引導(dǎo)計算機系統(tǒng)700。所下載的引導(dǎo)映象能夠被存儲在例如主存儲 器104、 ROM106或者其他的存儲器設(shè)備中。
一個實施例涉及使用數(shù)據(jù)隧道向駐留在計算機系統(tǒng)700上的 PXE環(huán)境安全地提供引導(dǎo)映象。根據(jù)一個實施例,與計算機系統(tǒng)700 經(jīng)由數(shù)據(jù)隧道的數(shù)據(jù)交換響應(yīng)于處理器701執(zhí)行包含在非易失性存 儲器702中的指令序列而發(fā)生。在一個可選實施例中,硬線連接電路 能夠被用來代替軟件指令或與軟件指令組合以實現(xiàn)本發(fā)明。從而,該
發(fā)明不限于硬件電路和軟件指令的任意特定組合。
圖8說明了在一個實施例中所使用的,根據(jù)TLV格式進行隧道 傳輸?shù)男畔⒌臄?shù)據(jù)結(jié)構(gòu)800。這樣的TLV實現(xiàn)可以符合在網(wǎng)絡(luò)訪問控 制協(xié)議(NACP)中提出的格式,該協(xié)議于2005年5月由思科系統(tǒng) 公司S.Thomson (編輯者)提出,版權(quán)由Internet協(xié)會(2005)所有。 可以采用各種TLV方法、AVP方法或者其他方法來對一般數(shù)據(jù)進行 隧道傳輸,以在兩個相關(guān)方之間進行安全傳輸。
在這個例子中,諸如引導(dǎo)映象源之類的實體正在發(fā)送信息到諸如 PXE客戶端的另一個實體。如上所述,該信息可以經(jīng)由諸如EAP信 道的認證信道發(fā)送。在傳送到PXE客戶端的數(shù)據(jù)流中,引導(dǎo)映象源 可以插入數(shù)據(jù)結(jié)構(gòu)800。該數(shù)據(jù)結(jié)構(gòu)800以TLV標(biāo)志字段801開頭, 該字段801用以識別TLV數(shù)據(jù)結(jié)構(gòu)800,并且,例如,在PXE客戶 端不支持TLV格式的情況下指定一個響應(yīng)。TLV類型號碼字段802 用于指示在數(shù)據(jù)結(jié)構(gòu)800中的信息被如何格式化。數(shù)據(jù)結(jié)構(gòu)800也包 括TLV長度字段803,以指示經(jīng)由數(shù)據(jù)結(jié)構(gòu)800發(fā)送的數(shù)據(jù)的長度。 數(shù)據(jù)結(jié)構(gòu)800還包括TLV數(shù)據(jù)字段804,或者被認為是TLV值字段, 其代表從引導(dǎo)映象源發(fā)送到PXE客戶端的實際隧道傳輸?shù)臄?shù)據(jù)。圖8 在一般意義上僅僅代表一種類型的數(shù)據(jù)隧道,具體地代表一種類型的 TLV隧道。在引導(dǎo)映象源和PXE客戶端之間的數(shù)據(jù)交換中使用的 TLV/AVP隧道或者其他數(shù)據(jù)隧道的確切類型不限于各種實施例。
雖然本發(fā)明根據(jù)幾個實施例進行了描述,但是本領(lǐng)域技術(shù)人員將 認識到本發(fā)明不限于所描述的實施例,也可以在所附權(quán)利要求的精神 和范圍內(nèi)進行修改和替換從而實現(xiàn)本發(fā)明。這里的描述被認為是說明 性的而不是限制性的。
權(quán)利要求
1、一種方法,包括在第一電子系統(tǒng)和第二電子系統(tǒng)之間建立認證信道;通過所述認證信道在所述第一電子系統(tǒng)的遠程引導(dǎo)環(huán)境和所述第二電子系統(tǒng)之間啟動遠程引導(dǎo)交換,該遠程引導(dǎo)交換包括從所述第一電子系統(tǒng)的遠程引導(dǎo)環(huán)境發(fā)送引導(dǎo)映象請求,以及從所述第二電子系統(tǒng)向所述第一電子系統(tǒng)的遠程引導(dǎo)環(huán)境發(fā)送引導(dǎo)映象的副本;以及在所述驗證信道中經(jīng)由數(shù)據(jù)隧道將與引導(dǎo)映象交換相關(guān)的數(shù)據(jù)進行隧道傳輸。
2、 如權(quán)利要求1所述的方法,其中,與所述遠程引導(dǎo)交換相關(guān)的所述數(shù)據(jù)包括所述遠程引導(dǎo)交換的至少一部分。
3、 如權(quán)利要求1所述的方法,其中,對所述遠程引導(dǎo)交換的至少一部分進行加密,并且其中,與所述遠程引導(dǎo)交換相關(guān)的所述數(shù)據(jù) 包括用于解密所述遠程弓I導(dǎo)交換的加密信息。
4、 如權(quán)利要求1所述的方法,其中,所述第一電子系統(tǒng)的所述 遠程引導(dǎo)環(huán)境符合INTEL 預(yù)引導(dǎo)執(zhí)行環(huán)境格式。
5、 如權(quán)利要求l所述的方法,其中,所述認證信道符合電氣和 電子工程師協(xié)會(IEEE) 802.1X標(biāo)準(zhǔn)。
6、 如權(quán)利要求1所述的方法,其中,所述認證信道中的所述數(shù) 據(jù)隧道是屬性-值對(AVP)隧道。
7、 如權(quán)利要求1所述的方法,其中,所述認證信道中的所述數(shù) 據(jù)隧道是類型-長度-值(TLV)隧道。
8、 如權(quán)利要求1所述的方法,其中,所述第二電子系統(tǒng)位于網(wǎng) 絡(luò)中,所述方法進一步包括-從所述第一電子系統(tǒng)的所述遠程引導(dǎo)環(huán)境發(fā)送動態(tài)主機配置協(xié) 議(DHCP)查詢到所述網(wǎng)絡(luò)中;以及從所述網(wǎng)絡(luò)向所述第一電子系統(tǒng)的所述遠程引導(dǎo)環(huán)境發(fā)送 DHCP確認。
9、 如權(quán)利要求l所述的方法,所述遠程引導(dǎo)交換進一步包括 從所述第一電子系統(tǒng)的所述遠程引導(dǎo)環(huán)境向所述第二電子系統(tǒng)發(fā)送所述第一電子系統(tǒng)的憑證;以及從所述第二電子系統(tǒng)向所述第一電子系統(tǒng)的所述遠程引導(dǎo)環(huán)境 發(fā)送所述憑證的接收確認。
10、 一種方法,包括 建立認證信道;通過所述認證信道經(jīng)由遠程弓I導(dǎo)環(huán)境啟動遠程弓I導(dǎo)交換,所述遠 程引導(dǎo)交換包括發(fā)送引導(dǎo)映象請求, 接收引導(dǎo)映象的副本;以及 在所述認證信道中經(jīng)由數(shù)據(jù)隧道將與引導(dǎo)映象交換相關(guān)的數(shù)據(jù) 進行隧道傳輸。
11、 如權(quán)利要求IO所述的方法,其中,與所述遠程引導(dǎo)交換相 關(guān)的所述數(shù)據(jù)包括所述遠程引導(dǎo)交換的至少一部分。
12、 如權(quán)利要求IO所述的方法,其中,對所述遠程引導(dǎo)交換的 至少一部分進行加密,并且其中,與所述遠程引導(dǎo)交換相關(guān)的所述數(shù) 據(jù)包括用于解密所述遠程引導(dǎo)交換的加密信息。
13、 一種方法,包括 與一個電子系統(tǒng)建立認證信道;通過所述認證信道與所述電子系統(tǒng)的遠程引導(dǎo)環(huán)境進行遠程引 導(dǎo)交換,所述遠程引導(dǎo)交換包括從所述電子系統(tǒng)接收對引導(dǎo)映象的請求,以及 向所述電子系統(tǒng)的所述遠程引導(dǎo)環(huán)境發(fā)送引導(dǎo)映象的副本;以及在所述認證信道中經(jīng)由數(shù)據(jù)隧道將與引導(dǎo)映象交換相關(guān)的數(shù)據(jù) 進行隧道傳輸。
14、 如權(quán)利要求13所述的方法,其中,與所述遠程引導(dǎo)交換相 關(guān)的所述數(shù)據(jù)包括所述遠程引導(dǎo)交換的至少一部分。
15、 如權(quán)利要求14所述的方法,其中,對所述遠程引導(dǎo)交換的 至少一部分進行加密,并且其中,與所述遠程引導(dǎo)交換相關(guān)的所述數(shù) 據(jù)包括用于解密所述遠程弓I導(dǎo)交換的加密信息。
16、 如權(quán)利要求15所述的方法,其中,對所述遠程引導(dǎo)交換的 至少一部分進行完整性保護,并且其中,與所述遠程引導(dǎo)交換相關(guān)的 所述數(shù)據(jù)進一步包括用于解密所述遠程引導(dǎo)交換的加密信息。
17、 一種裝置,包括-建立認證信道的通信設(shè)備;以及建立遠程引導(dǎo)環(huán)境以經(jīng)由所述認證信道進行遠程引導(dǎo)交換的操 作實體,其中,所述遠程引導(dǎo)環(huán)境發(fā)送對引導(dǎo)映象的請求,以及 接收引導(dǎo)映象的副本, 所述遠程引導(dǎo)環(huán)境進一步在所述認證信道中經(jīng)由數(shù)據(jù)隧道將與 遠程引導(dǎo)交換相關(guān)的數(shù)據(jù)進行隧道傳輸。
18、 如權(quán)利要求17所述的裝置,其中,與所述遠程引導(dǎo)交換相 關(guān)的所述數(shù)據(jù)包括所述遠程引導(dǎo)交換的至少一部分。
19、 如權(quán)利要求17所述的裝置,其中,對所述遠程引導(dǎo)交換的 至少一部分進行加密,并且其中,與所述遠程引導(dǎo)交換相關(guān)的所述數(shù) 據(jù)包括用于解密所述遠程引導(dǎo)交換的加密信息。
20、 一種系統(tǒng),包括 第一計算機,其具有與一個計算機建立認證信道的通信設(shè)備,以及 建立遠程引導(dǎo)環(huán)境以經(jīng)由所述認證信道進行遠程引導(dǎo)交換 的實體,其中,所述遠程引導(dǎo)環(huán)境發(fā)送引導(dǎo)映象請求并從所述計 算機接收引導(dǎo)映象的副本,所述遠程引導(dǎo)環(huán)境進一步在所述認證 信道中經(jīng)由數(shù)據(jù)隧道將與遠程引導(dǎo)交換相關(guān)的數(shù)據(jù)進行隧道傳 輸;第二計算機,與所述第一計算機建立認證信道,并通過所述認證 信道與所述第一計算機建立遠程引導(dǎo)交換;以及傳送介質(zhì),支持所述第一和第二計算機之間的所述認證信道,所 述傳送介質(zhì)包括雙絞線電纜。
21、 如權(quán)利要求20所述的系統(tǒng),其中,與所述遠程引導(dǎo)交換相 關(guān)的所述數(shù)據(jù)包括所述遠程引導(dǎo)交換的至少一部分。
22、 如權(quán)利要求20所述的系統(tǒng),其中,對所述遠程引導(dǎo)交換的 至少一部分進行加密,并且其中,與所述遠程引導(dǎo)交換相關(guān)的所述數(shù) 據(jù)包括用于解密所述遠程引導(dǎo)交換的加密信息。
23、 具有存儲于其上的一組指令的機器可讀介質(zhì),當(dāng)執(zhí)行所述指 令時使得系統(tǒng)執(zhí)行包括下列步驟的方法-建立認證信道;經(jīng)由遠程弓I導(dǎo)環(huán)境通過所述認證信道啟動遠程弓I導(dǎo)交換,所述遠 程引導(dǎo)交換包括發(fā)送引導(dǎo)映象請求, 接收引導(dǎo)映象的副本;以及 在所述認證信道中經(jīng)由數(shù)據(jù)隧道將與遠程引導(dǎo)交換相關(guān)的數(shù)據(jù) 進行隧道傳輸。
24、 如權(quán)利要求23所述的機器可讀介質(zhì),其中,與所述遠程引 導(dǎo)交換相關(guān)的所述數(shù)據(jù)包括所述遠程引導(dǎo)交換的至少一部分。
25、 如權(quán)利要求23所述的機器可讀介質(zhì),其中,對所述遠程引 導(dǎo)交換的至少一部分進行加密,并且其中,與所述遠程引導(dǎo)交換相關(guān) 的所述數(shù)據(jù)包括用于解密所述遠程引導(dǎo)交換的加密信息。
26、 具有存儲于其上的一組指令的機器可讀介質(zhì),當(dāng)執(zhí)行所述指 令時使得系統(tǒng)執(zhí)行包括下列步驟的方法與電子系統(tǒng)建立認證信道;通過所述認證信道與所述電子系統(tǒng)的遠程引導(dǎo)環(huán)境進行遠程引導(dǎo)交換,所述遠程引導(dǎo)交換包括從所述電子系統(tǒng)接收對引導(dǎo)映象的請求,以及 向所述電子系統(tǒng)的所述遠程引導(dǎo)環(huán)境發(fā)送引導(dǎo)映象的副本;以及在所述認證信道中經(jīng)由數(shù)據(jù)隧道將與遠程引導(dǎo)交換相關(guān)的數(shù)據(jù) 進行隧道傳輸。
27、 如權(quán)利要求26所述的機器可讀介質(zhì),其中,與所述遠程引 導(dǎo)交換相關(guān)的所述數(shù)據(jù)包括所述遠程引導(dǎo)交換的至少一部分。
28、 如權(quán)利要求26所述的機器可讀介質(zhì),其中,對所述遠程引導(dǎo)交換的至少一部分進行加密,并且其中,與所述遠程引導(dǎo)交換相關(guān) 的所述數(shù)據(jù)包括用于解密所述遠程引導(dǎo)交換的加密信息。
全文摘要
一種將引導(dǎo)映象安全下載到計算機系統(tǒng)的遠程引導(dǎo)環(huán)境中的方法。在本發(fā)明的一個實施例中,遠程引導(dǎo)環(huán)境和引導(dǎo)映象源通過認證信道進行引導(dǎo)映象交換。在另一個實施例中,在認證信道中對與引導(dǎo)映象交換相關(guān)的數(shù)據(jù)進行隧道傳輸,從而保護引導(dǎo)映象交換免受安全攻擊。
文檔編號H04L29/06GK101197834SQ20071019299
公開日2008年6月11日 申請日期2007年9月28日 優(yōu)先權(quán)日2006年9月29日
發(fā)明者A·羅斯, H·科斯拉維, K·格雷瓦爾, V·齊默 申請人:英特爾公司