正是由于其采用廣泛應(yīng)用的IP網(wǎng)絡(luò)和Internet網(wǎng)絡(luò)為數(shù)據(jù)傳輸?shù)耐ǖ溃c傳統(tǒng)的采用光纖通道FC SAN相比,iSCSI的安全性就凸現(xiàn)出來。因?yàn)閭鹘y(tǒng)的FC SAN在實(shí)際應(yīng)用中,底層采用光纖通道FC的傳輸技術(shù),上層采用Fibre Channel Protocol(FCP)傳輸SCSI協(xié)議,與廣泛應(yīng)用的IP網(wǎng)絡(luò)不兼容,往往會(huì)形成一個(gè)與通信網(wǎng)絡(luò)隔離開來的獨(dú)立存儲(chǔ)網(wǎng)絡(luò),其安全性容易得到保障。而iSCSI采用IP網(wǎng)絡(luò)技術(shù)作為底層傳輸技術(shù),完全可以在現(xiàn)有的通信網(wǎng)絡(luò)中,甚至Internet上傳輸SCSI協(xié)議,這使得iSCSI不得不面臨IP網(wǎng)絡(luò)常見的安全性問題。
iSCSI是如何工作的呢?如前所述,iSCSI定義了TCP/IP網(wǎng)絡(luò)上傳輸塊存儲(chǔ)應(yīng)用的規(guī)則和過程。在物理層,iSCSI支持以太網(wǎng)卡(100、1000M),這樣支持iSCSI的系統(tǒng)可以通過以太網(wǎng)卡直接接入以太網(wǎng)交換機(jī)或路由器。iSCSI協(xié)議介于物理和數(shù)據(jù)鏈路層與操作系統(tǒng)的標(biāo)準(zhǔn)SCSI命令集之間,將SCSI-3命令封裝在TCP/IP包內(nèi),由IP網(wǎng)絡(luò)負(fù)責(zé)其傳輸?shù)目煽啃浴?/DIV>
SCSI命令和數(shù)據(jù)封裝在TCP包中,穿過毫無防范的Internet網(wǎng)絡(luò),必然會(huì)引起安全問題。總之iSCSI面臨的安全風(fēng)險(xiǎn)主要有:
主動(dòng)型的攻擊,如:身份偽裝、偽造信息插入、數(shù)據(jù)刪除/修改等
被動(dòng)型的攻擊,如:竊聽、數(shù)據(jù)分析等
所以IETF建議在配置iSCSI時(shí),一定要采取一定的安全措施。針對(duì)各種各樣的安全風(fēng)險(xiǎn),iSCSI采用兩種安全措施:
認(rèn)證:在target和initiator之間做身份認(rèn)證。
加密:對(duì)傳輸?shù)腡CP/IP數(shù)據(jù)包進(jìn)行保護(hù)。
認(rèn)證主要是在iSCSI連接層,通過交換iSCSI的登錄PDU(Protocol data unit),實(shí)現(xiàn)帶內(nèi)的身份認(rèn)證。iSCSI通過這種安全措施提供了端到端的信任關(guān)系。iSCSI支持多種認(rèn)證,但要強(qiáng)調(diào)的是采用哪種認(rèn)證都要求不得明文的傳輸密碼字符。此外對(duì)于不同的算法,要求采用抗攻擊能力較強(qiáng)的選項(xiàng)。比如在采用CHAP認(rèn)證時(shí),為了防止離線的字典攻擊,要求隨機(jī)CHAP密文secret大于128位。
加密主要是通過IPSEC協(xié)議實(shí)現(xiàn),在IP層通過對(duì)IP包的加密,實(shí)現(xiàn)數(shù)據(jù)的完整性保護(hù)、數(shù)據(jù)加密和身份認(rèn)證。iSCSI通過這種安全措施提供了數(shù)據(jù)通信的安全通道。
實(shí)現(xiàn)IPSEC加密通信有兩種方式:
一是通過主機(jī)間建立IPSEC加密通道。主機(jī)間建立IPSEC通信,過去常用軟件的實(shí)現(xiàn)方式,這對(duì)于傳輸少量的數(shù)據(jù)可以接受,對(duì)于iSCSI這種大量存儲(chǔ)數(shù)據(jù)的傳輸,則顯得力不從心。所以,建議采用支持IPSEC協(xié)議的iSCSI HBA卡實(shí)現(xiàn),提高加密解密的效率。但目前,采用這種HBA卡,其成本很高,如果有大量服務(wù)器、iSCSI存儲(chǔ)設(shè)備接入,總投資成本必然據(jù)高不下。
二是通過防火墻、VPN網(wǎng)關(guān)或帶VPN功能的路由器,在需要實(shí)現(xiàn)iSCSI通信的兩個(gè)子網(wǎng)間建立一條加密隧道,將兩個(gè)子網(wǎng)與承載iSCSI通信的IP網(wǎng)絡(luò)從邏輯上隔離開來。目前這種方式的應(yīng)用較為普遍,而且成本容易控制。當(dāng)然隨著iSCSI HBA的應(yīng)用越來越廣泛,利用iSCSI HBA可以獲得更好的網(wǎng)絡(luò)擴(kuò)展性。
當(dāng)然,還可以采用其他技術(shù)來加強(qiáng)iSCSI的安全性,如iSCSI的分區(qū)、LUN masking等等,由于其還在討論和開發(fā)階段,這里就不再討論了。
四、仍需解決的問題
iSCSI存儲(chǔ)是一個(gè)新興的技術(shù),盡管其標(biāo)準(zhǔn)已經(jīng)建立且應(yīng)用,但將其真正廣泛應(yīng)用到存儲(chǔ)環(huán)境中還需要解決幾個(gè)關(guān)鍵技術(shù)點(diǎn)。
4.1 TCP負(fù)載空閑
由于IP無法確保提交到對(duì)方,而將TCP作為底層傳輸?shù)娜NIP存儲(chǔ)協(xié)議則需要在擁擠的、遠(yuǎn)距離的IP空間中確保傳輸?shù)目煽啃浴S捎贗P包可以打亂次序傳送,因此,TCP層需要重新修正次序,以提交到上一層的協(xié)議中(如SCSI)。TCP完成這一任務(wù)的典型操作是使用重調(diào)順序緩沖器,將數(shù)據(jù)包的順序完全整理為正確方式,完成這一操作后,TCP層將數(shù)據(jù)發(fā)送到下一層。這些處理都需要消耗主機(jī)的CPU資源,同時(shí)增加事務(wù)處理的延時(shí),事實(shí)上,與典型的FC或SCSI塊傳輸相比,需要更多的I/O處理,一種稱之為TCP負(fù)載空閑引擎TCP Off-loading Engine (TOE)的設(shè)備可將主機(jī)的處理器負(fù)載降低,隨著新技術(shù)的應(yīng)用,TOE將可以幫助解決這一問題。
4.2 性能
工作組和一些分析人士把相當(dāng)多的注意力放在了確保IP存儲(chǔ)協(xié)議可以非常快的運(yùn)行上,因?yàn)槟壳坝脖P驅(qū)動(dòng)器的運(yùn)行速度已經(jīng)很快。專家們預(yù)測IP存儲(chǔ)產(chǎn)品將以高速運(yùn)行。然而,也有一些分析人員認(rèn)為,IP存儲(chǔ)令人心往的最大優(yōu)勢是IP的靈活性,而高速性能則排在第二位。盡管IP技術(shù)很有可能得以應(yīng)用,但如果對(duì)性能較為看重的話,不推薦使用標(biāo)準(zhǔn)的以太網(wǎng)卡。如前所述,TOE可以減少服務(wù)器的處理負(fù)載,但由于TOE設(shè)備較新,其硬件成本及復(fù)雜程度都比標(biāo)準(zhǔn)網(wǎng)卡更高。其廣泛應(yīng)用可能會(huì)由于性能價(jià)格比過高而受阻。像那些增強(qiáng)的iHBA都需要進(jìn)一步改進(jìn),已達(dá)到光纖通道的技術(shù)水平。
4.3 安全性
當(dāng)存儲(chǔ)設(shè)備通過IP架構(gòu)進(jìn)行遠(yuǎn)距離連接時(shí),安全性變得愈加重要。生產(chǎn)廠家必須明確產(chǎn)品的安全級(jí)別,并確保其安全性。在IP存儲(chǔ)產(chǎn)品廣泛應(yīng)用之前,這一問題是IETF需亟待解決的。
當(dāng)標(biāo)準(zhǔn)得到批準(zhǔn)時(shí),明確要求IP存儲(chǔ)協(xié)議的所有實(shí)施都必須包括可靠的安全性(實(shí)現(xiàn)加密數(shù)據(jù)完整性和保密性)。如果用戶不愿使用這些安全措施的話,他們不必使用,但是產(chǎn)品中必須具有啟動(dòng)安全技術(shù)的功能,只有這樣廠商才能說他們的產(chǎn)品符合標(biāo)準(zhǔn)的要求。相當(dāng)多的工作組成員非常不喜歡這項(xiàng)要求:他們認(rèn)為這些協(xié)議的主要用武之地將是數(shù)據(jù)中心或其他一些受防火墻保護(hù)的領(lǐng)域。但是,一旦人們將應(yīng)用放在IP上,這個(gè)應(yīng)用沒有什么辦法確定自己的使用環(huán)境,例如在防火墻后使用。這是IP的一個(gè)重要特性。
4.4 互聯(lián)性
基于IP的技術(shù)并沒有被所有廠家共同使用,雖然這個(gè)協(xié)議的標(biāo)準(zhǔn)早已被IETF公布,但并不能保證廠家X與廠家Y使用相同的協(xié)議或技術(shù)。為了保證這些產(chǎn)品能夠相互配合得更好,必須保證廠家之間采用相同的協(xié)議,使各廠家產(chǎn)品具有良好的互聯(lián)性。