🍅

【Azure】Bastionを使って、仮想マシンに安全に接続する

2024/03/23に公開

概要

Azure Bastionを使って、仮想マシンに接続してみるハンズオンです。

Bastionとは

仮想マシンに接続する手段の1つです。

https://learn.microsoft.com/ja-jp/azure/bastion/

Bastionを使うメリット

プライベートIPアドレスを介して仮想マシンに接続するため、非常にセキュアだと言えます。

RDPやSSHで仮想マシンに接続する場合、通常であれば仮想マシンのパブリックIPアドレスやRDP/SSHポートを公開する必要があります。しかし、Bastionを使えば、仮想マシンのパブリックIPアドレスは必要ありません。また、RDPやSSHポートを公開する必要もありません。

通常、仮想マシンに直接RDPやSSH接続することは、セキュリティの観点から推奨されません。そのため、Bastionを使用しない場合も、安全に接続するために何らかの措置が取られるケースが多いです。例えば、別途踏み台となる仮想マシンを用意して、そこからRDPやSSH接続するなどの手段を取ることが多いのではないでしょうか。

Bastionを使えば、そういったことをせずとも、安全に仮想マシンに接続できるのです。

Bastionを利用するメリットは、セキュアに接続するだけにとどまりません。その他のメリットは、下記ドキュメントにまとまっています。

https://learn.microsoft.com/ja-jp/azure/bastion/bastion-overview

Bastionリソースを作成する

Bastionのリソースページからカスタムで作成することも可能ですが、接続したい仮想マシンのページから作成することもできます。

今回は、仮想マシンのページからBastion関連のリソースを作成します。

Bastionのデプロイを押すと、下記のリソースが作成されます。

Bastion
名前 VNetD-bastion
仮想ネットワーク VNetD 仮想マシンが属する仮想ネットワーク(今回使用する仮想マシンはVNetDというVNetに属しています)
サブネット AzureBastionSubnet VNetD内にAzureBastionSubnetという名前で作成される
パブリックIPアドレス VNetD-ip

下記は作成されたリソースです。


Bastion


サブネット


パブリックIP

注意点(料金について)

Azure Bastionはリソースを作成した時点で課金が始まります。リソースが削除されるまで課金は続くので注意しましょう。

https://azure.microsoft.com/ja-jp/pricing/details/azure-bastion/

Basicプランでも1時間に28円掛かります。

私の場合、午前中リソースを作成したままにしていたら150円程掛かりました。

数日忘れたりすると、それなりの課金額になりますので、注意が必要です。

Bastionを実際に試すタイミングでリソースを作成するのが良いと思います。

また、こういった時に備えて、コストアラートを細かく設定することもオススメします。

Bastionを使ってLinuxVMにSSH接続する

さて、実際にBastionを使ってLinuxVMに接続します。

接続したい仮想マシンページに行き、接続 > Bastionを介した接続を選択します。

認証に関する情報を求められますので、下記のように入力します。

認証の種類 ローカルファイルからのSSH秘密キー
ユーザー名 azureuser
ローカルファイル az104vm_key.pem

ここで指定するユーザー名やSSH秘密キーは、仮想マシン作成時に設定したものです。

この記事では、仮想マシン作成の過程は省略していますので、詳細は【Azure / 初心者向け】Azure上で仮想マシンを立ち上げて、SSHで接続し、nginxを起動するまでをご覧ください。

https://zenn.dev/shimiyu/articles/8ab683ba33c897#仮想マシンを作成する

認証情報を入力したら、接続ボタンを押します。

すると、ブラウザで新しいタブが立ち上がり、Bastionを使った仮想マシンへの接続ができました。

Discussion