Azure Bastionホストの作成から仮想マシンへの接続まで試してみた
Azure BastionはAzure上に構築された仮想マシンとのセキュアな接続を提供してくれるサービスになります。
仮想マシンにパブリックIPを付与する事無く外部からアクセスする事ができます。
Azure Portal(ブラウザ)経由で仮想マシンにアクセスする事ができます。
また2022年3月時点ではネイティブ クライアントを使用した接続もプレビューで開始されています。
ネイティブクライアントを使ったアクセスの詳細はこちら。
今回はAzure Bastionのリソース作成からBastion(Azure Portal)経由で仮想マシンにアクセスする所まで試してみました。
Azure Bastionのリソース作成の前に
Azure BastionのSKUにはStandardとBasicがある
Azure BastionのSKUにはStandardとBasicがあります。
BasicからStandardへのアップグレードは可能ですが、StandardからBasicへのダウングレードは出来ません。
今回はStandardで作成しています。
-
- Standardでしか出来ない事
- Standardではインスタンス(ホスト)のスケーリングが可能
- Basicではインスタンスが2固定
- ネイティブクライアントからの接続、ファイル転送が可能
- カスタム受信ポートが使用可能
- Standardではインスタンス(ホスト)のスケーリングが可能
- Standardでしか出来ない事
各SKUの詳細は公式サイトのガイドを参照ください。
価格は公式サイト価格表を参照ください。
Azure Bastionは仮想ネットワーク単位
Azure Bastionは仮想ネットワーク単位になります。
複数の仮想ネットワークに仮想マシンが分散している場合はその数分Bastionのリソースを作成する必要があります。
仮想マシンにパブリックIPは必要ない
Azure Bastion自体はパブリックIPを使いますが仮想マシン自体にはパブリックIPは必要ありません。
Bastion使う場合は仮想マシン自体のパブリックIPは外しておく事が推奨されます。
ネットワークセキュリティグループでインターネットからのアクセス許可は必要はない
Azure Bastion経由での仮想マシンへの接続はローカルIPを使います。
仮想マシンやサブネットでグローバルIPからのアクセスの許可設定をする必要ありません。
※仮想マシンのOSではRDPやSSHを許可しておく必要があります。
Azure Portal経由で仮想マシンに接続する方法にはシリアルコンソール接続もある
Azure Portal経由で仮想マシンに接続する方法にはシリアルコンソール接続もあります。
シリアルコンソール接続はこちらを参照ください。
Azure Bastionのリソース作成
Bastion構築チュートリアル
今回はマイクロソフト公開のチュートリアルを元に進めていきます。
チュートリアル:Bastion を構成し、Windows VM に接続する
事前準備として必要になるもの
Azure Bastionを設定するにあたって必要なリソースがあります。
Bastionの設定画面で一緒に新規作成もできます。
-
- Azure Bastion専用のサブネット
- サブネットの名前がAzureBastionSubnetである必要があります
- /26以上で必要になります
- 他のリソースが含まれていてはいけません
- Bastionを使う仮想マシンがある仮想ネットワークに作る必要があります
- パブリックIP
- SKUはStandardである必要があります
- Azure Bastion専用のサブネット
今回はサブネットは事前に準備します。
パブリックIPはBastionのリソース作成時に一緒に作成します。
サブネットを構成する
Azure Bastionを使うサブネットを構成します。
サブネット構成時には注意点がありますので気を付けて作成します。
-
- サブネット構成時の注意点
- サブネットの名前がAzureBastionSubnetである事
- アドレス範囲が/26以上である事
- サブネット構成時の注意点
事前に作成しておいたTest-VNET-01にBastion用のサブネット(/24)を追加する形にしています。
自身の環境に合わせて適時読み替えて下さい。
サブネット作成 | |
仮想マシンのメニューから作成します。 |
![]() |
AzureBastionSubnetと言う名前でサブネットが作成されている事が確認できました。 | ![]() |
Azure Bastionをセットアップ
Azure BastionはBastionのメニューもしくは仮想マシンのメニューどちらからでも作成が可能です。
今回はBastionのメニューから作成しています。リソース名はTest-Bastion-01と言う名前で作成しています。
確認画面で内容を確認し問題が無ければ作成をクリックします。
これでBastionのリソース作成は完了です。
PowerShellやREST APIを使ったAzure Bastionホストの作成や削除はこちら。
Azure Bastion経由で仮想マシンに接続する
Azure Bastionを使って仮想マシンに接続する
仮想マシンのメニューからBastionを使って接続してみます。
仮想マシン側いる仮想ネットワークにBastionをデプロイしておけば、仮想マシン側で特に設定する事はなく接続できました。
仮想マシンへ接続 | |
仮想マシンのメニューでBastionを選択します。仮想マシンのOSで設定しているユーザー名とパスワードを入力し接続をクリックします。 ※新しいウィンドウで開く場合は、ブラウザでポップアップを許可しておく必要があります。 |
![]() |
ブラウザ上の仮想マシンのデスクトップが表示されました。 | ![]() |
Azure Bastionでセッション情報を確認
Bastionのリソース内で実際に接続されているセッションを確認する事が出来ます。
セッション確認 | |
Bationのメニューでセッションを選択するとセッション情報が表示されます。 ユーザー(OSのユーザー)がどの仮想マシンへ接続しているかが分かります。 |
![]() |
Azure Bastionを使ってみて
Webベースでアクセスできることは非常に便利ですし、何よりもセキュリティ的なリスクが軽減される事は非常に良いかと思いました。
パブリックプレビュー中ではありますがネイティブクライアントからの接続やファイル転送が出来る点も実際の運用で使うには非常に良い進化かと思いました。
ネイティブクライアントからの接続など今後も色々試してみたいと思います。