検証環境の構成変更に伴い長らく Azure Virtual Desktop 経由で行っていたリモート接続を Azure Bastion に移行しました。
その際にちょっとしたノウハウがありましたので本稿でご紹介いたします。
デバイスが Entra 認証の RDP を受け入れるための設定
ご本人の承諾もいただきリファレンス貼らせていただきました、こちらを参照して 1. "参加済み" デバイス側の設定 を行います。
Bastion のデプロイ
Bastion をデプロイします、IP アドレス指定による接続のため SKU は Standard もしくは Premium SKU を選択ください。
その後、
にて [IP based connection] を有効化します。
1回接続してみる
ここで 1 回接続してみます。
Azure ポータルから Bastion のリソースを開いて接続してみると、
と Connection Error で接続することができません。
先のリファレンスを読み進めていただくとわかりますが、接続元側にも設定が必要なので Azure ポータルでは対応できないんでしょう。
では次のセクションから、この事象をクリアするためのネイティブクライアントよる Bastion 接続の手順を見ていきます。
Azure CLI のインストール
ネイティブクライアントから Bastion を使用するためには Azure CLI を使用しますので、
で Azure CLI をインストールしたら、
az extension add --name bastion
と Bastion 拡張機能を追加します。
RDP ファイルの作成
再登場、今度は 2. RDPクライアント側の設定 の手順で "enablecredsspsupport:i:0" を追加した RDP ファイルを作成します。
ネイティブクライアントサポートの有効化
Bastion の [Native Client Support] を有効化します。
接続してみる
それでは再度接続してみます。
まずは Azure CLI にて、
az account clear
az login
az network bastion tunnel --name [Bastion リソース名] --resource-group [Bastion リソースグループ名] --target-ip-address [接続先の IP アドレス] --resource-port [接続先のポート番号] --port [ローカルのポート番号]
を実行しトンネル (ポートフォワード) を確立します。
コンピューターに "localhost:[ローカルのポート番号]" を指定して接続します。
これでリモートデスクトップのサインイン画面が上がってきますので、
再々登場の 3. RDP 接続 の手順でサインインすることができます。
まとめ
リモート接続するだけなのに何故かこんなに面倒でした。
デバイスと Bastion とかすべてのリソースが同じ Entra ID テナント所属ならもっとシンプルになるのかもしれません、それだったら Entra Private Access の方が良さそうですね。
詰まるところ Bastion をこのユースケースで使用するのがイレギュラーなのだとの理解に至った次第です。
本稿を読んでいただきありがとうございました!