Azure ファイル共有にアクセスするためのネットワーク エンドポイントを構成する

Azure Files では、Azure ファイル共有にアクセスするための次の主な 2 種類のエンドポイントが提供されます。

  • パブリック エンドポイント。パブリック IP アドレスを持ち、世界中のどこからでもアクセスできます。
  • プライベート エンドポイント。仮想ネットワーク内に存在し、その仮想ネットワークのアドレス空間内からのプライベート IP アドレスを持ちます。

パブリックおよびプライベート エンドポイントは、Azure ストレージ アカウントに存在します。 ストレージ アカウントは、複数のファイル共有だけでなく、BLOB コンテナーやキューなどのその他のストレージ リソースをデプロイできるストレージの共有プールを表す管理構造です。

この記事では、Azure ファイル共有に直接アクセスするためのストレージ アカウントのエンドポイントを構成する方法について説明します。 この記事の内容の多くは、Azure File Sync がストレージ アカウントのパブリック エンドポイントとプライベート エンドポイントと相互運用する方法にも適用されます。 Azure File Sync のネットワークに関する考慮事項の詳細については、Azure File Sync のプロキシとファイアウォールの設定の構成に関するページを参照してください。

このガイドを読む前に、「Azure Files のネットワークに関する考慮事項」をお読みください。

適用対象

ファイル共有の種類 SMB NFS
Standard ファイル共有 (GPv2)、LRS/ZRS はい いいえ
Standard ファイル共有 (GPv2)、GRS/GZRS はい いいえ
Premium ファイル共有 (FileStorage)、LRS/ZRS はい はい

前提条件

エンドポイント構成

ストレージ アカウントへのネットワーク アクセスを制限するようにエンドポイントを構成できます。 ストレージ アカウントへのアクセスを仮想ネットワークに制限するには、次の 2 つの方法があります。

プライベート エンドポイントの作成

ストレージ アカウントのプライベート エンドポイントを作成すると、次の Azure リソースがデプロイされます。

  • プライベート エンドポイント: ストレージ アカウントのプライベート エンドポイントを表す Azure リソース。 これは、ストレージ アカウントとネットワーク インターフェイスを接続するリソースと考えることができます。
  • ネットワーク インターフェイス (NIC) : 指定された仮想ネットワークおよびサブネット内のプライベート IP アドレスを保持するネットワーク インターフェイス。 これは、仮想マシン (VM) をデプロイするとデプロイされるリソースとまったく同じものですが、VM に割り当てられるのではなく、プライベート エンドポイントによって所有されます。
  • プライベート ドメイン ネーム システム (DNS) ゾーン: 以前にこの仮想ネットワークに対してプライベート エンドポイントをデプロイしたことがない場合は、新しいプライベート DNS ゾーンが仮想ネットワークにデプロイされます。 この DNS ゾーン内のストレージ アカウントに対しては、DNS A レコードも作成されます。 この仮想ネットワークにプライベート エンドポイントを既にデプロイしてある場合は、ストレージ アカウントに対する新しい A レコードが、既存の DNS ゾーンに追加されます。 DNS ゾーンのデプロイは省略可能です。 ただし、AD サービス プリンシパルを使用して Azure ファイル共有をマウントする場合、または FileREST API を使用する場合は、これをお勧めし、そうする必要があります。

Note

この記事では、Azure パブリック リージョンを対象に、ストレージ アカウントの DNS サフィックス core.windows.net を使用しています。 この注釈は、Azure US Government クラウドや 21Vianet クラウドによって運用される Microsoft Azure などの Azure ソブリン クラウドにも適用されます。 環境に適したサフィックスに置き換えます。

プライベート エンドポイントを作成するストレージ アカウントに移動します。 ストレージ アカウントの目次で [ネットワーキング][プライベート エンドポイント接続][+ プライベート エンドポイント] の順に選択して、新しいプライベート エンドポイントを作成します。

ストレージ アカウントの目次にある [プライベート エンドポイント接続] 項目のスクリーンショット。

表示されるウィザードには、設定するページが複数あります。

[基本] ブレードで、プライベート エンドポイントの目的のサブスクリプション、リソース グループ、名前、ネットワーク インターフェイス名、およびリージョンを選択します。 これらには任意の内容を指定でき、ストレージ アカウントと一致している必要はありませんが、プライベート エンドポイントは、そのプライベート エンドポイントを作成しようとしている仮想ネットワークと同じリージョン内に作成する必要があります。 その後、[次へ: リソース] を選択します。

新しいプライベート エンドポイントのプロジェクトとインスタンスの詳細を提供する方法を示すスクリーンショット。

[リソース] ブレードで、ターゲット サブリソースのファイルを選択します。 [次へ: Virtual Network] を選択します。

新しいプライベート エンドポイントを使用して接続するリソースを選択する方法を示すスクリーンショット。

[Virtual Network] ブレードでは、プライベート エンドポイントを追加する特定の仮想ネットワークとサブネットを選択できます。 新しいプライベート エンドポイントの動的または静的 IP アドレスの割り当てを選択します。 静的を選択した場合は、名前とプライベート IP アドレスも指定する必要があります。 必要に応じて、アプリケーション セキュリティ グループを指定することもできます。 完了したら、[次: DNS] を選びます。

新しいプライベート エンドポイントの仮想ネットワーク、サブネット、および IP アドレスの詳細を提供する方法を示すスクリーンショット。

DNS ブレードには、プライベート エンドポイントとプライベート DNS ゾーンを統合するための情報が含まれています。 サブスクリプションとリソース グループが正しいことを確認し、[次へ: タグ] を選択します。

プライベート エンドポイントをプライベート DNS ゾーンと統合する方法を示すスクリーンショット。

必要に応じて、タグを適用してリソースを分類できます。たとえば、[名前] の [環境] と [値] の [テスト] をすべてのテスト リソースに適用します。 必要に応じて名前と値のペアを入力し、[次へ: レビュー + 作成] を選択します。

簡単に分類できるように、名前と値のペアでプライベート エンドポイントにオプションでタグを付ける方法を示すスクリーンショット。

[確認および作成] をクリックしてプライベート エンドポイントを作成します。

接続を検証する

仮想ネットワーク内に VM がある場合、または「Azure Files の DNS 転送の構成」の説明に従って DNS 転送を構成している場合は、プライベート エンドポイントが正しく設定されていることをテストできます。 PowerShell、コマンド ライン、またはターミナルから次のコマンドを実行します (Windows、Linux、または macOS で動作します)。 <storage-account-name> を適切なストレージ アカウント名に置き換える必要があります。

nslookup <storage-account-name>.file.core.windows.net

正常に動作した場合は、次のような出力が表示されます。192.168.0.5 は、仮想ネットワーク内のプライベート エンドポイントのプライベート IP アドレスです (Windows の場合に表示される出力)。

Server:  UnKnown
Address:  10.2.4.4

Non-authoritative answer:
Name:    storageaccount.privatelink.file.core.windows.net
Address:  192.168.0.5
Aliases:  storageaccount.file.core.windows.net

パブリック エンドポイント アクセスを制限する

パブリック エンドポイント アクセスを制限するには、まず、パブリック エンドポイントへの一般的なアクセスを無効にする必要があります。 パブリック エンドポイントへのアクセスを無効にしても、プライベート エンドポイントには影響しません。 パブリック エンドポイントが無効になったら、そこに引き続きアクセスできる特定のネットワークまたは IP アドレスを選択できます。 一般に、ストレージ アカウントのほとんどのファイアウォール ポリシーではネットワーク アクセスが 1 つ以上の仮想ネットワークに制限されます。

パブリック エンドポイントへのアクセスを無効にする

パブリック エンドポイントへのアクセスが無効にされている場合でも、そのプライベート エンドポイントを介してストレージ アカウントにアクセスできます。 それ以外の場合は、特に許可されているソースからのものでない限り、ストレージ アカウントのパブリック エンドポイントへの有効な要求は拒否されます。

パブリック エンドポイントへのすべてのアクセスを制限するストレージ アカウントに移動します。 ストレージ アカウントの目次で、 [ネットワーク] を選択します。

ページの上部で、[選択した仮想ネットワークと IP アドレスから有効] オプション ボタンを選びます。 これにより、パブリック エンドポイントの制限を制御するためのいくつかの設定が表示されるようになります。 [信頼されたサービスの一覧にある Azure サービスがこのストレージ アカウントにアクセスすることを許可します] を選び、Azure File Sync などの信頼できるファースト パーティの Microsoft サービスに、ストレージ アカウントへのアクセスを許可します。

ストレージ アカウントのパブリック エンドポイントへのアクセスを無効にするために必要な設定が表示された [ネットワーク] ブレードのスクリーンショット。

パブリック エンドポイントへのアクセスを特定の仮想ネットワークに制限する

ストレージ アカウントを特定の仮想ネットワークに制限すると、指定した仮想ネットワーク内からパブリック エンドポイントへの要求が許可されます。 これは、"サービス エンドポイント" と呼ばれる仮想ネットワークの機能を使用して実現できます。 これは、プライベート エンドポイントの有無に関係なく使用できます。

パブリック エンドポイントを特定の仮想ネットワークに制限するストレージ アカウントに移動します。 ストレージ アカウントの目次で、 [ネットワーク] を選択します。

ページの上部で、[選択した仮想ネットワークと IP アドレスから有効] オプション ボタンを選びます。 これにより、パブリック エンドポイントの制限を制御するためのいくつかの設定が表示されるようになります。 [+ 既存の仮想ネットワークを追加] を選び、パブリック エンドポイント経由でのストレージ アカウントへのアクセスを許可する特定の仮想ネットワークを選びます。 仮想ネットワークとその仮想ネットワークのサブネットを選び、[有効化] を選びます。

[信頼されたサービスの一覧にある Azure サービスがこのストレージ アカウントにアクセスすることを許可します] を選び、Azure File Sync などの信頼できるファースト パーティの Microsoft サービスに、ストレージ アカウントへのアクセスを許可します。

特定の仮想ネットワークがパブリック エンドポイント経由でストレージ アカウントへのアクセスを許可されている [ネットワーク] ブレードのスクリーンショット。

関連項目