Azure Managed Lustre ファイル システムのルート squash設定を構成する

ルート squashは、クライアントのルート特権を持つユーザーがリモートの Managed Lustre ファイル システム上のファイルにアクセスできないようにするセキュリティ機能です。 この機能は Lustre ノードマップ機能を使用して実現され、信頼されていないクライアントまたは侵害されたクライアントによる操作からユーザー データとシステム設定を保護する上で重要な部分です。

この記事では、Azure Managed Lustre ファイル システムのルート squash設定を構成する方法について説明します。 ルートsquash設定は、クラスターの作成時に REST API 要求を使用して、または既存のクラスターに対して構成できます。

前提条件

  • Azure サブスクリプション。 Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。

ルート squashの設定

次の表では、REST API バージョン 2024-03-01 以降で使用できる プロパティに使用できるパラメーター rootSquashSettings について詳しく説明します。

パラメーター Type 説明
mode RootOnly, All, None 文字列 RootOnly: 信頼されていないシステムの ルート ユーザーにのみ影響します。 ファイルの UID と GID は、それぞれ
All指定squashUIDされた と squashGIDにスカッシュされます。: 信頼されていないシステム上のすべてのユーザーに影響します。 ファイルの UID と GID は、それぞれ指定 squashUID された と squashGIDにスカッシュされます。
None(既定値): ルート squash機能を無効にして、システム上の任意のユーザーに対して UID と GID のスカッシュが実行されないようにします。
noSquashNidLists 文字列 信頼されたシステムに追加されたネットワーク ID (NID) IP アドレスの一覧。
squashUID 1 - 4294967295 Integer ユーザー ID (UID) がスカッシュされる数値。
squashGID 1 - 4294967295 Integer グループ ID (GID) がスカッシュされる数値。
status 文字列 ファイル システムのsquash状態。

連続しない IP アドレスを信頼できるシステムとして追加する必要がある場合は、次の例に示すように、 パラメーターにセミコロンで noSquashNidLists 区切られた IP アドレスの一覧を指定できます。

"noSquashNidLists": "10.0.2.4@tcp;10.0.2.[6-8]@tcp;10.0.2.10@tcp",

クラスターの作成時にルート squashを有効にする

Azure Managed Lustre ファイル システムを作成するときに、クラスターの作成時にルート squashを有効にすることができます。

クラスターの作成時にルート squashを有効にするには、次の手順に従います。

  1. クラスターに使用するルート squash設定を決定します。 詳細については、「ルート squash設定」を参照してください。
  2. 要求をPUT使用してクラスターを作成し、要求本文の セクションにproperties目的rootSquashSettingsの値を含めます。

次の例は、ルート squashが有効になっているクラスターを作成する方法を示しています。

要求構文:

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageCache/amlFilesystems/{filesystemName}?api-version={apiVersion}

要求本文:

"properties": {
    "rootSquashSettings": {
        "mode": "RootOnly",
        "noSquashNidLists": "10.0.2.4@tcp",
        "squashUID": 1000,
        "squashGID": 1000
    },
}

既存のクラスターのルート squash設定を表示する

既存の Azure Managed Lustre ファイル システムのルート squash設定を表示できます。 既存のクラスターのルート squash設定を表示するには、次の手順に従います。

  1. 要求を使用して、 GET 既存のクラスターの構成の詳細を返します。

次の例は、既存のクラスターを返す方法を示しています。

要求構文:

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageCache/amlFilesystems/{filesystemName}?api-version={apiVersion}

応答本文で、 プロパティをrootSquashSettings見つけて、クラスターの現在のルート squash設定を表示します。

既存のクラスターのルート squash設定を変更する

既存の Azure Managed Lustre ファイル システムのルート squash設定を変更できます。 既存のクラスターのルート squash設定を変更するには、次の手順に従います。

  1. 既存のクラスターに対して変更または有効にするルート squash設定を決定します。 詳細については、「ルート squash設定」を参照してください。
  2. 要求をPATCH使用して既存のクラスターを変更し、要求本文の セクションにproperties目的rootSquashSettingsの値を含めます。 この操作により、既存のルート squash設定が上書きされるため、すべての設定が要求に含まれていることをPATCH確認します。

たとえば、 パラメーターに新しい IP アドレス範囲を追加する noSquashNidLists 必要があるとします。 次の例は、既存のクラスターを更新して、新しい IP アドレス範囲を パラメーターに追加する方法を noSquashNidLists 示しています。

要求構文:

PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageCache/amlFilesystems/{filesystemName}?api-version={apiVersion}

要求本文:

"properties": {
    "rootSquashSettings": {
        "mode": "RootOnly",
        "noSquashNidLists": "10.0.2.4@tcp;10.0.2.[6-8]@tcp",
        "squashUID": 1000,
        "squashGID": 1000
    },
}

この例では、および squashGID パラメーターが変更されていない場合modesquashUIDでも、値が上書きされないように、要求本文にパラメーターを含めるPATCH必要があります。

既存のクラスターのルート squashを無効にする

既存の Azure Managed Lustre ファイル システムのルート squashを無効にすることができます。 既存のクラスターのルート squashを無効にするには、次の手順に従います。

  1. 要求をPATCH使用して既存のクラスターを変更し、要求本文の セクションで パラメーターを propertiesNone設定modeします。 これ以外のパラメーターを指定する必要はありません。

次の例は、既存のクラスターのルート squashを無効にする方法を示しています。

要求構文:

PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageCache/amlFilesystems/{filesystemName}?api-version={apiVersion}

要求本文:

"properties": {
    "rootSquashSettings": {
        "mode": "None"
    },
}

次の手順

Azure Managed Lustre の詳細については、次の記事を参照してください。