📑

Microsoft Entra Private Access の出口

2024/06/19に公開

TL;DR

  • Microsoft Entra Private Access Connector と仲良くし隊
  • リモートのリソースから見ると Microsoft Entra Private Access Connector サーバーからの通信のように見える
  • NAT を利用しているので Azure の上でも動作するはず

Update log

  • typo の修正とか - 2024/06/25
  • tag の追加とか - 2024/07/14

はじめに

前回の Microsoft Entra Private Access はどうやってパケットを曲げているのか (分からんかった) では、Microsoft Entra Private Access の送信元側というか、トンネルの入り口側を調査していました。
んじゃあ次に出口側についても調べてみようかと思います。

Remote access exit
Remote access exit

Microsoft Entra Private Access Connector

Microsoft Entra Private Access を利用する際には、リモート サイトというか、リモート アクセスしたいリソースの近くに Microsoft Entra Private Access Connector (長いのでこの記事では MEPA-C と呼ぶことにします) というものを設置する必要があります。
Windows Server を適当にたてて、そこに MEPA-C をインストールするだけなので特に難しくはありません。

Microsoft Entra Private Access Connector サーバーでの見え方

MEPA-C をインストールしたサーバーでのリソース モニターでの見え方も確認しておきます。
20.210.158.148 や 13.78.116.129 など 443/tcp 宛ての通信が多数見えていますが、これは Microsoft Entra Private Access の Secure Service Edge (SSE) 側への通信とみてよいかと思います。
それに加えて、192.168.10.205:49906 -> 192.168.10.200:3389 というのが実際にクライアントからのリモートデスクトップ接続の通信です。

Resouce explorer on Microsoft Entra Private Access Connector server
Resouce explorer on Microsoft Entra Private Access Connector server

リモートのリソース側での見え方

最後に、リモートデスクトップ接続されているリモート リソース側での見え方です。
このマシンの IP アドレスは 192.168.10.200 で、それの 3389/tcp 宛ての通信の送信元 IP アドレスは 192.168.10.205、つまり MEPA-C です。
本来の送信元である 192.168.11.x は見えておらず、NAT され、MEPA-C の IP アドレスからリモートデスクトップ接続されているように見えています。

Remote desktop connection via Microsoft Entra Private Access
Remote desktop connection via Microsoft Entra Private Access

候補として別に考えていたもの

送信元 IP アドレス、つまり本当のクライアントマシンの IP アドレスをそのまま見せて、ARP で MEPA-C の MAC アドレスを回答する、というのも実現方法の 1 つとは考えていました。
オンプレミスっぽい考え方ではこのような実装も可能でしたが、少なくとも Azure ではこの方法は取れないしなぁ、と思っていたところでした。
Azure 用拡張ネットワークを使用して、オンプレミスのサブネットを Azure に拡張する においても、Windows Admin Center (WAC) を経由して Azure 側の設定を一部変えるような動きを利用しています。

結果としては NAT を利用しているためそのようなことはなく、Azure 上に MEPA-C を置いたとしても動作するような実装になっているかと思います。

まとめ

Microsoft Entra Private Access の理解を進めるため、前回はトンネルの入り口側を調査したので、今回は出口側を調べてみました。
結果としてはあまり難しいことは無く、NAT を利用したシンプルな実装になっていますが、トラブルシュートに向けた知識として脳みその片隅に入れておこうかと思います。

参考

  • Microsoft Entra Private Access はどうやってパケットを曲げているのか (分からんかった)

    前回の記事、Microsoft Entra Private Access の入り口側で NDIS Lightweight Filters (LWF) 使ってるよ、って話

https://zenn.dev/skmkzyk/articles/me-private-access-routing

  • ZTNA と VPN の違い (Microsoft Entra Private Access を念頭に)

    ZTNA と VPN がよく比較されますけどそもそも同じようなもんじゃないの、という方向けに (かつてのわたしですね)

https://zenn.dev/skmkzyk/articles/mepa-ztna-vs-vpn

  • Azure 用拡張ネットワークを使用して、オンプレミスのサブネットを Azure に拡張する

    おすすめはしませんが Azure で L2 延伸できるよ、みたいな話

https://learn.microsoft.com/windows-server/manage/windows-admin-center/azure/azure-extended-network

  • Microsoft Entra の Global Secure Access を使ってみる (Private Access 編)

https://zenn.dev/sugar3kg/articles/645e632231735f

Discussion