Microsoft Azure の VM にセキュアに RDP 接続をする

Azure

こんにちは。

今回は今日プレビューがアナウンスされました「Azure Bastion」です。

Azure Bastion - RDP and SSH over SSL - now available for Preview | Azure updates | Microsoft Azure
Fully managed service for seamless and secure RDP/SSH access to your virtual machines without public IP on the VM.

 

この機能を使うと、Public IP なしの、VM が作れるのでとても素敵なんですよね。

 

構築方法

現在は、プレビューの機能ですので、プレビュー機能を有効にするとことからになります。

その後、Bastion を作成し、VM の VNET を Bastion で紐づけた VNET にブラ下げる構成となります。

構築手順は、以下のドキュメントをご覧ください。

Tutorial: Deploy Azure Bastion using specified settings: Azure portal
Learn how to deploy Azure Bastion by using settings that you specify in the Azure portal.

 

概要としては、

1.プレビューを有効にする

Cloud Shell などから、Azure PowerShell を使ってサブスクリプションにプレビューを有効にします。

こんな感じ

Register-AzProviderFeature -FeatureName AllowBastionHost -ProviderNamespace Microsoft.Network
Register-AzResourceProvider -ProviderNamespace Microsoft.Network

自分がやったときは、数分でレジストされました。レジストされたかはこんな感じで確認しましょう。

PS Azure:\> Get-AzProviderFeature -ProviderNamespace Microsoft.Network

FeatureName      ProviderName      RegistrationState
-----------      ------------      -----------------
AllowBastionHost Microsoft.Network Registered

 

2.Azure Bastion のリソースを作成する

ポータルから作成するのですが、現時点では普通のポータルでは Azure Bastion 関連の操作はできません。以下の、URL のポータルでサインインしてリソースを操作します。

Microsoft Azure

画面の上の方に、オレンジの帯のついたポータルが開きます。

 

「Create Resource」あたりで、「bastion」とでも検索して、Azure Bastion を作成します。

 

ちなみに、Azure Bastion が作成できるのは、ドキュメントに以下のように記載があります。東日本もありますね。

 

Azure Bastion を作成時の注意点は、仮想ネットワークを紐づけてあげるのですが、その仮想ネットワークのサブネットに「AzureBastionSubnet」が存在していることが条件です。ちなみに、このサブネットは、/27だそうです。

 

5分くらいでデプロイ終わります。

3.Azure VMの作成

Azure Bation を有効にした、Azure VMにするのはとても簡単で、Azure Bastion がいる 仮想ネットワークに、Azure VM を紐づけるだけです。

仮想ネットワークの中のサブネットは、「AzureBastionSubnet 」ではなく、普通のサブネットを選択します。

こんだけです。

 

動作確認

動作確認ですが、これは、Azure Bastion を作成したポータルじゃないと、Bastion 関連の操作ができないのでご注意を。

 

こんな感じで、Azure ポータルから、VM に接続をすると、「Bastion」接続のタブがでてきます。

 

あとは、RDP をする username/Password で接続するだけです。ポップアップブロックが禁止になってると、怒られちゃうので許可してあげてください。

そうすると、こんな感じで RD接続できます。

  

んで、何がうれしいの?

Azure ポータルから VM に RD 接続できるようになって、何がうれしいの?って感じの方もいるかもしれませんが、Azure Bastion を使うことで、Azure VM に Public IP というエンドポイントを作らなくてよくなります。

エンドポイントを持たないってことは、外界からアクセスされる口がなくなるってことですよね。これ画期的じゃないですか??

さらに、VM へのアクセスがポータルからということなので、RBAC で VM のリソースを制限かけることで、ID 別に VM へのアクセスを制限することができます。ここに、Azure Sercurity Center の JIT などを組み合わせると運用上の承認フローみたいなことができちゃいます。

 

この機能の使い方も、少なくともこんなシナリオは思い浮かびますよね。

  • Azure Bastion をもった仮想ネットワークに、VM をすべてぶら下げて各VM ごとに Bastion 接続を行う。
  • Azure Bastion に 1台踏み台 VM をつくって、踏み台VM までは Bastion接続でその VM からプライベート IP で運用 VM に RD 接続する

Global VNET Peering で Azure Bastion がいる仮想ネットワークと他のリージョンの仮想ネットワークをつないじゃえば、プライベートIP で通信できるので、Azure Bastion がまだ来てないリージョンでもメリットがあるんじゃないかな~。

 

あと、Twitter とかを見ていて面白いなって思ったのが、レガシーIT の環境で社内から Azure VM に RD 接続ができない環境(FWでポートが閉じてて RD 接続できない) ような環境も、ポータルが見えれば Bastion 接続で RD 接続できるっていうのもありました。

これは、その通りですね。

まとめ

Azure Bastion は、運用上とても効果がありかつ、セキュリティを担保する上でも大切な機能になってきます。

この機能の注目度の高さは、Twitter の反応や、MVP の人がブログ書いたりとかからもうかがえるかなーって思います。

ってことで、Kパイセンのブログ貼っとこっと

https://zakki.nya-n.net/?p=274

 

AWS や GCP をあまり知らないのですが、こういう機能ってあるのかな??
VM を利用する上で、この機能は各クラウドサービスに是非取り込んで頂きたいって思います。

 

おまけ

おまけな内容です。

Azure Bastion を作るとこんな感じでリソースが出来てます。

 

この VMSS が、RD Web アクセスみたいなことしてるんでしょうねー。

と、この辺もうちょっと中身しりたいなーって思いましたとさ。

(・_・).。oO(ほんとうにどうでもいいおまけだw)

コメント

タイトルとURLをコピーしました