マネージドな踏み台サーバ「Azure Bastion」を試す

目次

はじめに

2019/6/18にAzure仮想マシンへ対するSSH とRDP接続をSSLでトンネルできるマネージドな踏み台サーバ「Azure Bastion」がPreview公開されたので早速使ってしました。

https://azure.microsoft.com/ja-jp/updates/azure-bastion-now-available-for-preview/

手順

Preview利用登録

MSのドキュメントは以下になります。

https://docs.microsoft.com/en-us/azure/bastion/

日本では東日本リージョンで利用可能ですが、まずはAzure Cloud ShellのPower Shellから以下のコマンドでPreviewの利用登録をします。

Register-AzureRmProviderFeature -FeatureName AllowBastionHost -ProviderNamespace Microsoft.Network
Register-AzureRmResourceProvider -ProviderNamespace Microsoft.Network

以下のコマンドを入力すると、Preview利用の申請ステータスが確認できます。

Get-AzureRmProviderFeature -ProviderNamespace Microsoft.Network

タイミングによって申請が通るまでの時間はまちまちなので、なんとも言えませんが、私の場合は申請後、ランチを食べに行って帰ってきたらRegisteredになっていました。

PS Azure:> Get-AzureRmProviderFeature -ProviderNamespace Microsoft.Network

FeatureName ProviderName RegistrationState


AllowBastionHost Microsoft.Network Registered

仮想ネットワークの準備

既にある仮想ネットワーク内に「AzureBastionSubnet」を事前に作成しておきます。サブネットのprefixは/27以上にする必要があるみたいです。

img

Bastionのデプロイ

以下のPreview用Azureポータルから操作します。

http://aka.ms/BastionHost

「+リソースの作成」から検索フィールドに「bastion」と入力して、出てきた「Bastion(プレビュー)」を選択します。

img

「作成」をクリックします。

img

リソースグループ、名前は適当に。
地域は既存の仮想ネットワークがある東日本を選択しました。

仮想ネットワークを選択すると、自動的に「AzureBastionSubnet」が(存在していれば)自動で選択されます。

パブリックIPアドレスも今回は新規作成します。

最後に「確認及び作成」をクリックします。

img

最後に「作成」をクリックします。

img

5分ほど待ったら無事作成完了しました。

img

仮想マシンに接続

Linuxの場合

対象の仮想マシンの「Overview(概要)」画面で「Connect」をクリックします。

img

「Connect to virtual machine」のポップアップ画面で、既にタブが「BUSTION」が選ばれている状態なので 「Connect to virtual machine」のポップアップ画面で、UsernameとPasswordを入力して、「Connect」をクリックします。

img

ブラウザに新しいタブが開かれ、そちらにsshのターミナル画面が表示されます。

img

Windowsの場合

対象の仮想マシンの「Overview(概要)」画面で「Connect」をクリックします。

img

後は基本Linuxの時と一緒です。
「Connect to virtual machine」のポップアップ画面で、既にタブが「BUSTION」が選ばれている状態なので、UsernameとPasswordを入力して、「Connect」をクリックします。

img

ブラウザに新しいタブが開かれ、そちらにリモートデスクトップ画面が表示されます。

img

ブラウザの画面をリサイズしても、ちゃんとOS内でも画面サイズを変更してくれました。すばらしい。

おわりに

今回試した操作では、Preview用のAzureポータルからの操作で、各仮想マシンに繋ぐには、仮想マシンの概要ページから「Connect」で接続しました。

自分の希望としては、直接Bastionのエンドポイントを指定後に接続する仮想マシンを選んで認証してログイン、、、といったフローを期待するのですが、まずは各仮想マシンにPublic IPアドレスが無くてもAzure BastionだけVNET内のサブネットに展開しておけば簡単に接続できる事が確認できました。