Azure HDInsight 的 IPSec 傳輸中加密

本文討論 Azure HDInsight 叢集節點之間通訊的傳輸的傳輸中加密實作。

背景

Azure HDInsight 提供各種安全性功能來保護企業資料。 這些解決方案歸類於周邊安全性、驗證、授權、稽核、加密和合規性等要素之下。 加密可以同時套用至待用和傳輸中的資料。

待用加密涵蓋於 Azure 儲存體帳戶上的伺服器端加密,以及 Azure VM (其屬於 HDInsight 叢集的一部分) 上的磁碟加密。

HDInsight 上傳輸中資料加密是透過傳輸層安全性 (TLS),在叢集節點之間存取叢集閘道和網際網路通訊協定安全性 (IPSec) 來達成。 您可以在所有前端節點、背景工作節點、邊緣節點、zookeeper 節點以及閘道和識別碼代理程式節點之間,選擇性啟用 IPSec。

啟用傳輸中加密

Azure 入口網站

若要使用 Azure 入口網站,透過啟用的傳輸中加密來建立新叢集,請執行下列步驟:

  1. 開始一般叢集建立程序。 如需初始叢集建立步驟,請參閱使用 Azure 入口網站在 HDInsight 中建立以 Linux 為基礎的叢集

  2. 完成 [基本] 和 [儲存體] 索引標籤。 繼續進行 [安全性 + 網路] 索引標籤。

    Create cluster - security and networking tab.

  3. 在 [安全性 + 網路] 索引標籤中,選取 [啟用傳輸中加密] 核取方塊。

    Create cluster - enable encryption in transit.

透過 Azure CLI 使用已啟用的傳輸中加密建立叢集

傳輸中加密是使用 isEncryptionInTransitEnabled 屬性來啟用。

您可以下載範例範本和參數檔案。 使用下方的範本和 Azure CLI 程式碼片段之前,請先以正確的值取代下列預留位置:

預留位置 描述
<SUBSCRIPTION_ID> 您 Azure 訂閱的識別碼
<RESOURCE_GROUP> 您想要建立新叢集和儲存體帳戶的資源群組。
<STORAGEACCOUNTNAME> 應該與叢集搭配使用的現有儲存體帳戶。 名稱格式應為 ACCOUNTNAME.blob.core.windows.net
<CLUSTERNAME> 您的 HDInsight 叢集名稱。
<PASSWORD> 您選擇來使用 SSH 和 Ambari 儀表板登入叢集的密碼。
<VNET_NAME> 要部署叢集所在的虛擬網路。

下方的程式碼片段會執行下列初始步驟:

  1. 登入您的 Azure 帳戶。
  2. 設定將在其中完成建立作業的作用中訂閱。
  3. 為新的部署活動建立新的資源群組。
  4. 部署範本以建立新的叢集。
az login
az account set --subscription <SUBSCRIPTION_ID>

# Create resource group
az group create --name <RESOURCEGROUPNAME> --location eastus2

az deployment group create --name HDInsightEnterpriseSecDeployment \
    --resource-group <RESOURCEGROUPNAME> \
    --template-file hdinsight-enterprise-security.json \
    --parameters parameters.json

下一步