加密vSphere虛機 防堵私有雲資料遭竊

若從資料外洩的角度來評估虛擬化平台架構上的安全問題,只要虛擬機器的實體檔案落在惡意人士手中,一切存在於其中的敏感資料都將岌岌可危。本文將以實戰講解的方式,示範如何在VMware vSphere 6.5以上版本中,有效解除這一個潛在於虛擬化架構下的不定時炸彈。

其實很簡單!只要再次開啟虛擬機器儲存區原則的編輯頁面,然後如圖24所示將原則設定成【資料存放區預設值】即可。


▲圖24 編輯虛擬機器儲存區原則。

如何確定虛擬機器真的已經完成解密,除了可以從虛擬機器的摘要資訊來查看外,也能夠嘗試再次從VMware Workstation來下載該虛擬機器,如果下載的工作進度如圖25範例一樣顯示正在進行中,即表示此虛擬機器已經沒有在加密狀態了。


▲圖25 再次測試下載虛擬機器。

讓vMotion過程也加密保護

單是針對虛擬機器的加密保護,還不能算是最完善的虛擬機器加密保護,因為需要將它在多部ESXi主機移動過程中的資料外洩風險,也一併納入資訊安全的評估範圍,這在vSphere架構中便是vMotion轉移技術,透過這項技術可使運行中的虛擬機器無須停機,就能進行跨主機甚至於橫跨vCenter的移轉任務。

現行的vSphere版本已經支援了對於vMotion的加密保護,如圖26所示,可以在編輯虛擬機器的「VM Options」頁面中,查看到「Encryption vMotion」的選項,目前供有以下三種選擇:

1. Disabled(關閉):傳遞中的虛擬機器資料不要進行加密處理。

2. Opportunistic(視狀況):如果來源和目的地皆支援虛擬機器的加密功能,便自動使用vMotion的加密保護功能。換句話說,只要其中有一方不支援此功能,便不會執行vMotion的加密。

3. Required(強制要求):強制僅允許加密的vMotion任務,亦即若有一方不支援vMotion的加密功能,便不允許執行vMotion任務。


▲圖26 vMotion加密設定。

快速建立測試用的KMIP Server

如果沒有特別去向第三方的HyTrust官網,申請評估KeyControl這個KMS Server來部署,且內網中也沒有現行的KMS Server,這時候如果只是想要快速體驗一下虛擬機器的加密功能,可以考慮下載一個由VMware官方所提供的KMIP Server Docker Container,而它主要是基於開源的PyKMIP套件(https://github.com/OpenKMIP/PyKMIP)來運作。

如圖27所示,先開啟自建的Photon OS虛擬機器,然後依序執行以下兩道命令參數,以完成lamw/vmwkmip容器的下載,最後再啟動此容器,並且指定使用「5696」連接埠即可:


▲圖27 下載與執行KMS Container。

docker pull lamw/vmwkmip
docker run -d -p 5696:5696 lamw/
vmwkmip

若不想讓它執行在Daemon Mode之下,也可以改由執行以下的命令:

docker run --rm -it -p 5696:5696
lamw/vmwkmip

善用PowerCLI管理虛擬機器加密

當需要管理的vSphere虛擬機器數量很多時,使用vSphere Client網站介面來進行操作,可能不是一個有效率的管理方式,因為它無法提供批次管理的操作任務以節省時間成本的自動化管理機制。在這種情境下,建議去熟悉有關VMware PowerCLI命令工具的使用來提升維運的作效率。

到VMware社群網站,下載最新版本的PowerCLI命令工具並完成安裝。首次執行的時候,必須以系統管理員身分來開啟,然後執行「Set-ExecutionPolicy –RemoteSigned」命令參數,以便允許能夠正常執行所有來自vSphere的遠端命令。接著下載PowerCLI Module for VM Encryption並完成安裝。

‧最新版本的PowerCLI下載網址:https://communities.vmware.com/community/vmtn/automationtools/powercli

‧PowerCLI Module for VM Encryption下載網頁:https://github.com/vmware/PowerCLI-Example-Scripts/tree/master/Modules/VMware.VMEncryption

完成下載與安裝最新PowerCLI工具與虛擬機器加密命令模組之後,試試幾個有關於虛擬機器加密以及KMS管理的命令與參數。首先,如果查看有關於選定VM1虛擬機器的加密資訊,可以執行「Get-VM "VM01" | Get-VMEncryptioninfo」。若想要查看所有虛擬機器中全部虛擬硬碟的加密狀態,則執行「Get-VM | Get-HardDisk | Select Parent,Name,Encrypted」。

接下來,如果想要針對選定的VM02虛擬機器進行加密,可以執行「Get-VM -Name VM01 | Enable-VMEncryption」。若要關閉加密設定,就使用「Get-VM -Name VM01 | Disable-VMEncryption」。如果只是要加密或解密虛擬機器中的特定虛擬硬碟,可改用「Enable-VMDiskEncryption」和「Disable-VMDiskEncryption」命令。


追蹤我們Featrue us

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

我知道了!