Azure Files のルート スカッシュを構成する

✔️ 適用対象: Microsoft.Storage リソース プロバイダーで作成されたクラシック NFS ファイル共有

✔️ 適用対象: Microsoft.FileShares リソース プロバイダーで作成された NFS ファイル共有

✖️ 適用対象外: SMB ファイル共有

クライアント オペレーティング システムは、Azure Files サービスではなく、NFS ファイル共有に対するアクセス許可を適用します。 ルート スカッシュは NFS の管理セキュリティ機能であり、クライアント マシンによる NFS サーバーへの未承認のルート レベルのアクセスを防ぎます。 この機能は、信頼されていないクライアントまたは侵害されたクライアントによる操作からユーザー データとシステム設定を保護する上で重要な部分です。

管理者は、特にクライアント マシンが完全に信頼されていないシナリオにおいて、複数のユーザーまたはシステムが NFS 共有にアクセスする環境でルート スカッシュを有効にする必要があります。 ルート スカッシュを使用することで、ルート ユーザーを匿名ユーザーに変換し、クライアント コンピューターが侵害された場合でも、攻撃者はルート特権を利用して NFS サーバー上の重要なファイルにアクセスしたり変更したりできなくなります。

この記事では、NFS Azure ファイル共有のルート スカッシュ設定を構成および変更する方法について説明します。

Azure Files でのルート スカッシュのしくみ

ルート スカッシュは、ルート ユーザーのユーザー ID (UID) とグループ ID (GID) を、サーバー上の匿名ユーザーに属する UID と GID に再マップすることによって機能します。 ファイル システムにアクセスするルート ユーザーは、アクセス許可が制限された匿名の特権のないユーザーとグループに自動的に変換されます。

ルート スカッシュは NFS の既定の動作ですが、NFS Azure ファイル共有を作成するときの既定のオプションではありません。 ファイル共有でルート スカッシュを明示的に有効にする必要があります。 有効化は、NFS Azure ファイル共有を作成する場合、またはそれ以降に行うことができます。

ルート スカッシュ設定

3つの root squash 設定から選択します。

  • ルート スカッシュなし: ルート スカッシュをオフにします。 このオプションは、主に、ワークロードのドキュメントで指定されているディスクレス クライアントまたはワークロードに役立ちます。 この設定は、新しい NFS Azure ファイル共有を作成するときの既定値です。
  • すべてスカッシュ: すべての UID と GID を匿名ユーザーにマップします。 この設定は、すべてのクライアントによる読み取り専用アクセスを必要とする共有に使用します。
  • ルート スカッシュ: UID/GID 0 (ルート) からの要求を匿名 UID/GID にマップします。 この設定は、ユーザー ビンやグループ スタッフなど、同等に機密性の高いその他の UID や GID には適用されません。

次の表では、特定のルート スカッシュ オプションを構成するときにサーバーから観察される UID の動作を示します。

オプション クライアント UID サーバー UID
root_squash 0 65534
root_squash 1000 1000
no_root_squash 0 0
no_root_squash 1000 1000
all_squash 0 65534
all_squash 1000 65534

既存の NFS ファイル共有 (Microsoft.Storage) でルート スカッシュを構成する

Microsoft.Storage リソース プロバイダーを使用する Azure クラシック ファイル共有では、Azure portal、Azure PowerShell、または Azure CLI を使用してルート スカッシュ設定を構成できます。

  1. Azure ポータルにサインインし、NFS Azure ファイル共有を含む FileStorage ストレージ アカウントに移動します。

  2. サービス メニューの [ データ ストレージ] で、[ クラシック ファイル共有] を選択します。

  3. ルート スカッシュ設定を変更する対象のファイル共有を選択します。

  4. サービス メニューで [プロパティ] を選択します。 次に、必要に応じて [ルート スカッシュ] 設定を切り替えます。

    Azure portal で NFS ファイル共有のルート スカッシュ設定を構成する方法を示すスクリーンショット。

  5. [保存] を選択して、ルート スカッシュ値を更新します。

既存の NFS ファイル共有 (Microsoft.FileShares) でルート スカッシュを構成する

Microsoft.FileShares リソース プロバイダーを使用する Azure ファイル共有では、Azure portal、Azure PowerShell、または Azure CLI を使用して root squash 設定を構成できます。

  1. Azure ポータルにサインインし、ファイル共有に移動します。

  2. サービス メニューの [設定][構成] を選びます。

  3. 必要に応じて、root squash 設定のオン/オフを切り替えます。

    microsoft.fileshares ルート スカッシュの画像

  4. [保存] を選択して、ルート スカッシュ値を更新します。

関連項目