HONDA LABO

本田研究室

AzureBastionにネイティブクライアントでRDPしてみる

今回はAzure Bastionで、ネイティブクライアント(リモートデスクトップ)を利用して、Azure上の仮想マシンにRDPしてみたいと思います。

概要

Azure Bastionは、Webベースのリモートデスクトップだけではなく、ネイティブクライアント(リモートデスクトップ)を利用したRDPが可能です。ネイティブクライアントを利用したRDPをするには、BastionのSKUはStandard以上が必要であることが注意点です。Basicでは、ネイティブクライアントは利用できません。

ちなみに、Azure Bastionの構成には、Standard以上のパブリックIPが必要になるのでその点も注意です。また、Bastionは、VNET毎に1つのみしか作れません。作成先のサブネット名は「AzureBastionSubnet」である必要があります。

手順

以下、MSLearnに沿って実施していきます。
ネイティブ クライアントと Azure Bastion を使用して仮想マシンに接続する - Azure Bastion | Microsoft Learn

Bastionの作成と設定

まずは、Bastionの作成です。Standard以上で作成しましょう。
もし、Basicで作っていた場合は、Bastionのページを開いて「構成」から、レベルを「Standard」に変更します。
すると、「ネイティブクライアントサポート」を選べるようになるので、これを有効にします。

Bastionの設定自体はこれで終了です。

ネイティブクライアントでRDP接続

次にいよいよネイティブクライアントでの接続なのですが、接続は、PowershellからAZコマンドを使って行います。
まずは、PowerShellを開き、以下コマンドを入力してAzure アカウントにサインインします。

az login
az account list
az account set --subscription "<subscription ID>"

部分は、az account listコマンドで出力された、"id"の部分が該当します(Bastion リソースを含んでいるサブスクリプションを選択します)
ちなみに、AZコマンドをインストールしていない方はこちらを参考にインストールしてみてください。


そして、以下のコマンドを利用してログインしたいVMにRDP接続します。

az network bastion rdp --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId>"
  • …Bastionの名前
  • …Bastionが作成されているリソースグループ
  • …VMのリソースID

VMのリソースIDは、仮想マシンのプロパティの部分から確認できます。

さて、このコマンドを打つと、リモートデスクトップ接続の画面が起動してきます。接続ボタンを押しましょう。

そして、ユーザー名/パスワードを打つと・・・ログインできました!!

以上でネイティブクライアントでのRDPは完了です。接続元クライアントから、クリックボードを利用したファイルのコピー&ペーストも可能です。

BastionのStandardで利用できるその他の機能

BastionのStandardでは、ネイティブクライアント以外に、IPベースの接続も利用できます。
Connect to a VM - specified private IP address: Azure portal - Azure Bastion | Microsoft Learn

これは、Bastionで接続するホストをIPで指定できる機能です。オンプレミスのホストなどにもBastionからログインさせることができます。

ただし、今回紹介したネイティブクライアントからのRDPを用いてIPベースで接続することは現在は不可です。アップデートを期待したいと思います(リソースIDを指定して接続するのは面倒ですよね。。。)


Bastionの価格について

最後にBastionの価格について触れたいと思います。価格表はこちらです。
価格 - Azure Bastion | Microsoft Azure

基本的につけっぱなし、利用しっぱなしだと思うので、東日本/ Standardであれば、41.930円 x 24時間 x 30日が月額です。Basicはこれの2/3の価格です。(Basicの1.5倍がStandardの価格)

※2022/10/2時点の価格です。

これにパブリックIPの費用も必要になります。パブリックIPのSKUはStandardが必要です。なので、約0.72円/時間です。

ということで、BastionのStandardの月額(30日換算)はこんな感じです。30,710円という計算になりました。

ちなみにこの計算では、Bastionのデータ転送量の計算は無視しています。とはいえ、5GBまでは無料。それ以上は1GBあたり20円いかない程度です。