VMware vSAN 6.5 vMotion VMware 高可用性 HA 虛擬化 資安

善用vCSA管理平台 打造原生VCHA高可用性

2017-05-09
本文將介紹vSphere 6.5內的VCHA高可用性運作架構,提出原廠的最佳建議作法,並說明在這個新版本中如何針對vMotion即時遷移流量進行加密,避免遭受中間人攻擊,預防被竄改記憶體,以保護VM虛擬主機進行vMotion遷移時的安全性。

現在,最新VMware vSphere 6.5版本支援將vMotion線上遷移傳輸流量「加密」機制,透過AES-GCM加密標準將VMkernel的vMotion即時遷移流量進行加密的動作,達到高安全性的vMotion即時遷移,如圖4所示。


▲ 圖4 加密vMotion即時遷移傳輸數據運作示意圖。(圖片來源:VMware白皮書 – vSphere 6.5 Encrypted vMotion Architecture, Performance, and Best Practices)

vMotion加密技術運作架構

在VMware vSphere 6.5運作環境中,加密vMotion運作機制採用內嵌於ESXi主機VMkernel當中,並整合通過FIPS密碼模組檢測標準的vmkcrypto模組及搭配AES-GCM標準加密演算法,然後透過TCP通訊協定傳輸「vMotion中繼資料」(vMotion Metadata)。

事實上,加密vMotion運作機制並未依賴SSL或IPSec技術來加密vMotion即時遷移流量,相反地,它著重在TCP通訊協定層級中達到加密的目的,主要原因在於考量vMotion即時遷移的運作效能。舉例來說,倘若採用SSL加密技術保護vMotion即時遷移流量時,因為SSL加密為「計算密集型」(Compute Intensive)的運作機制,所以如果vMotion即時遷移流量採用SSL加密技術的話,將會導致ESXi主機運算效能過多的額外開銷。

倘若採用IPSec加密技術保護vMotion即時遷移流量,將會讓vMotion即時遷移受到限制,因為ESXi主機僅支援在IPv6網路環境中採用IPSec加密技術,在IPv4網路環境中並不支援IPSec加密技術。

因此,採用VMkernel內vmkcrypto模組的加密機制,除了有效讓vMotion避免發生效能損失的情況外,透過TCP通訊協定傳輸的方式能夠讓加密∕解密的工作負載,平均分散到CPU處理器的多個運算核心上。

當vCenter Server準備遷移線上運作的VM虛擬主機時,將會隨機產生1個One time 256-bit的加密金鑰,同時除了隨機256-bit加密金鑰外,還會搭配64-bit隨機數成為vMotion遷移規範,然後將這個vMotion遷移規範傳遞給來源端和目的端ESXi主機。

所以,在進行VM虛擬主機vMotion線上遷移作業時,便會透過「256-bit加密金鑰 + 64-bit隨機數」的vMotion遷移規範,在2台ESXi主機之間以vMotion專屬網路環境進行傳輸,確保2台ESXi主機之間傳輸的遷移流量無法被惡意人士所複製或竄改。

值得注意的是,這個256-bit的加密金鑰並非採用vCenter Server Key Manager產生,而是vCenter Server會為每次的vMotion即時遷移工作任務,自動產生1個新的256-bit加密金鑰,並且在vMotion線上遷移任務結束後便會捨棄該加密金鑰。同時,剛才已經提到加密vMotion運作機制,是採用VMkernel內的vmkcrypto模組達成,因此並不需要專用的硬體設備即可達成。

倘若執行vMotion即時遷移工作任務並非2台ESXi主機,而是「跨越」不同台vCenter Server時,則會有些許不同。簡單來說,在執行跨vCenter Server進行加密vMotion即時遷移時,與剛才說明的加密vMotion即時遷移運作原理相同,唯一不同的部分在於「256-bit加密金鑰 + 64-bit隨機數」的vMotion遷移規範,將會從來源端vCenter Server透過SSL傳送到目的端vCenter Server,如圖5所示。


▲ 圖5 跨vCenter Server執行加密vMotion即時遷移傳輸數據運作示意圖。(圖片來源:VMware白皮書 – vSphere 6.5 Encrypted vMotion Architecture, Performance, and Best Practices)

組態設定加密vMotion機制

由於加密vMotion即時遷移機制不需要專用的硬體設備即可達成,因此可以隨時針對希望保護的VM虛擬主機進行啟用的動作即可。在實務應用上,通常會針對重要工作任務或存放企業及組織機敏資料的VM虛擬主機進行套用,例如負責線上營運服務SQL資料庫伺服器。

請透過vSphere Web Client管理工具登入vCenter Server管理平台後,依序點選「首頁 > 主機和叢集」圖示,點選欲啟用加密vMotion即時遷移機制的VM虛擬主機後,按下滑鼠右鍵並於右鍵選單中選擇編輯設定,此時在彈出的VM虛擬主機組態設定視窗中,點選至〔虛擬機器選項〕頁籤,之後於「Encrypted vMotion」子項目中,在下拉式選單內看到下列三種加密vMotion即時遷移機制設定值,如圖6所示:


▲ 圖6 組態設定VM虛擬主機啟用加密vMotion即時遷移機制。(圖片來源:VMware白皮書 – vSphere 6.5 Encrypted vMotion Architecture, Performance, and Best Practices)

‧ Disabled:停用加密vMotion即時遷移機制,有可能導致VM虛擬主機在執行vMotion即時遷移的過程中遭受中間人攻擊,讓惡意攻擊者在傳輸期間修改記憶體狀態內容,進而達到破壞VM虛擬主機應用程式或作業系統的目的。

‧ Opportunistic:預設值,當來源端及目的端ESXi主機都支援加密vMotion即時遷移機制時,也就是2台ESXi主機皆為ESXi 6.5版本,那麼在執行vMotion即時遷移的過程中便會加密傳輸流量。倘若有任何一端不支援,例如目的端ESXi主機採用ESXi 6.0或更舊的版本,那麼在執行vMotion即時遷移的過程中便不會加密vMotion傳輸流量。

‧ Required:來源端和目的端ESXi主機都必須支援加密vMotion即時遷移機制,倘若有任何一端不支援,便無法執行vMotion即時遷移機制。同時,當VMware叢集啟用DRS自動化負載平衡機制後,那麼DRS便僅會選擇支援加密vMotion即時遷移機制的目的端ESXi主機。

部署加密vMotion的最佳作法

採用加密vMotion即時遷移機制,雖然能夠達到保護vMotion即時遷移流量並對於ESXi主機的工作負載影響最小,例如在20GbE的網路環境中執行vMotion即時遷移作業,「來源端」ESXi主機上倘若未啟用vMotion加密機制僅需1 Core運算核心資源,倘若啟用vMotion加密機制,則需要2.2 Cores運算核心資源。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!