御成門プログラマーの技術日記

Microsoft AzureやAngularなどの技術情報を発信します。

仮想マシンに安全に接続する Azure Bastion を無料で使える Developer SKU を試してみた

Azure Bastion を無料で使用できる Developer SKUが一般提供されたので試してみました。

2024年5月13日にAzure Bastion を無料で使用できる Developer SKU がGA

2024年5月13日に Azure Bastion を無料で使用できる Developer SKU がGAしました。
azure.microsoft.com

Azure 更新情報の説明を引用しますと下記のような内容でした。

新しい Bastion Developer SKU は、Azure の VM に追加料金なしで接続するための便利で安全なソリューションを提供します。Bastion Developer を使用すると、ユーザーは VM のパブリック IP を公開することなく、一度に 1 つの VM に安全なワンクリック接続を確立できます。他の Bastion SKU のように専用リソースを顧客の VNET に展開するのではなく、Bastion Developer は Microsoft が内部で管理するリソースの共有プールを利用して安全な VM 接続を実現します。ユーザーはポータルの VM ブレードの接続エクスペリエンスを通じて VM に直接アクセスできます。ポータルでは RDP/SSH がサポートされ、CLI セッションでは SSH のみがサポートされます。Bastion Developer は、追加の機能、構成、またはスケーリングを必要とせずに安全な VM 接続を求める開発/テスト ユーザーに最適です。

まとめるとAzure Bastion Developer SKU は Azure Bastion の一部機能に制限があり、スケーリングできない開発やテスト向けのまさに開発者SKUのようですね。本番利用は推奨されてないですね。

そもそも Azure Bastion って何?

Azure Bastion ってそもそも何って話をしておきます。
ご存知の方は飛ばして大丈夫です。
というわけで公式ページから説明引用。

Azure Bastion は、プライベート IP アドレスを介して仮想マシンに安全に接続するためにプロビジョニングするフル マネージド PaaS サービスです。 Azure portal から TLS 経由で直接、またはローカル コンピューターに既にインストールされているネイティブ SSH または RDP クライアントを介して、仮想マシンへの安全でシームレスな RDP/SSH 接続を提供します。 Azure Bastion 経由で接続する場合、仮想マシンにパブリック IP アドレス、エージェント、クライアント ソフトウェアはいずれも不要です。

Bastion は、プロビジョニングされる仮想ネットワーク内のすべての VM に対して安全な RDP および SSH 接続を提供します。 Azure Bastion を使用すると、RDP または SSH を使用した安全なアクセスを提供しながら、お使いの仮想マシンが RDP または SSH ポートを外部に公開しないように保護されます。

General availability: Azure Bastion Developer SKU | Azure updates | Microsoft Azureより引用

つまり、Azure Bastion を使うことでプライベートIPアドレス経由でRDPやSSHのポートを公開せずにセキュアにリモート接続できるようになるセキュリティ面でとても偉大な機能ですね。

Azure Bastion を Developer SKU で構築してみる

親切にAzure Bastion を Developer SKU を構築するページが用意されているのでそちらをご参照すれば問題なく、構成できるかと思います。
クイックスタート: Developer SKU を使用して Bastion をデプロイする: Azure portal | Microsoft Learn

2024年6月7日現在、Azure Bastion Developer SKU は下記リージョンのみで利用可能です。現在のところ東日本/西日本リージョンは対応していません。

  • 米国中部 EUAP
  • 米国東部 2 EUAP
  • 米国中西部
  • 米国中北部
  • 米国西部
  • 北ヨーロッパ

まずはAzure VM を作っておきましょう。
次に Azure Bastion のリソースを作成します。日本語だと直訳で「要塞」検索がしにくいので困りますね...

Azure Bastion の作成画面でリージョンが対応している地域を選択しているならば、レベルで「Developer」が選択可能です。

詳細設定で本来のSKUであれば設定できたコピー/貼り付けを使用禁止にすること、IPベースの接続、Kerberos認証、ネイティブクライアントサポート、共有可能なリンク、セッションの記録がDeveloper SKUでは使えません。

というわけでデプロイ成功。
RDPのポートを閉じていたとしても下記のような感じにリモート接続が可能です。


簡単ですね。
ちなみにDeveloper SKU から 別のSKUにレベルアップも可能なようです。

Azure Bastion Developer SKUとその他有償SKUとの違いについて

というわけで Azure Bastion Developer SKU の作成してみましたが、作成中も出てきたとおり、無料版のDeveloper SKU では使用できない機能がありました。詳しい機能差は公式ページに一覧で書かれているのでそちらご参照いただければと思います。
Azure Bastion について | Microsoft Learn

やはり、Developer SKUではセキュリティ面やスケーリング面で本番運用は難しいことがわかりますね。あくまで開発/テスト用であり、本番の場合はBasic SKU以上をご検討ください。