Azure Security CenterのJust-In-Time仮想マシンアクセス機能を使ってみた
インターネットからのSSHやRDPと言った管理ポートを公開しておくと不正なアクセスが来ます。普段は閉じておき作業時だけ仮想マシンへのアクセス許可を行いたいという事があったりします。
Azure Security CenterのJust-In-Time仮想マシンアクセス機能を使うと一定時間だけアクセス許可を行う事が出来ます。
今回はAzure Security Centerの有効化、Just-In-Timeの有効化、ポート構成設定、アクセス権の要求から実際にネットワークセキュリティグループの変化を確認までやってみます。
Just-In-Timeとは何か
Azure Security Center とは
Azure Security Center とは(マイクロソフト社公式)
マイクロソフト社公式サイトを見るとこのように記載があります。
Azure Security Center は、データ センターのセキュリティ体制を強化する統合インフラストラクチャ セキュリティ管理システムです。
これを一言で言ってしまうと、Azureの上で構成しているシステムのセキュリティを推奨事項としてお知らせしてくれたりスコアとして可視化してくれるサービスになります。可視化されたセキュリティインシデントを継続的に管理する事でクラウドセキュリティを確保する事が出来ます。
例えば、AzureのVMでパッチが最新化されていないVMのリストを表示したりする事が出来ます。
※Defenderを有効化するとAzure以外にも拡張可能です。
2021年9月現在、Azure Security Centerは下記2つのプランで提供されています。
-
-
- Azure Security Center Free
- Azure Defender
-
Azure Security Center FreeはすべてのAzureユーザーが無料で利用可能です。クラウド セキュリティ態勢管理 (CSPM)を提供します。
Azure Defenderは有料でクラウド ワークロード保護 (CWP) を提供します。Just-In-Timeはクラウドワークロード保護(CWP) に含まれます。
Azure Defenderとは
Azure Defender の概要(マイクロソフト社公式)
Azure DefenderはAzure Security Centerの1つの柱となるクラウド ワークロード保護 (CWP)を提供するするサービスになります。
Azure Defenderは各サービス単位に色んな種類がありそれぞれ提供される機能が異なります。Azure Defenderは仮想マシン(Azure Defender for servers)だけではなく、App Serviceやストレージアカウントと言ったPaaSのサービスにも適用する事が出来ます。
こちらにAzure Defenderを有効化するメリットが記載されています。
仮想マシン(Azure Defender for servers)の場合には、Microsoft Defender for Endpointや仮想マシンの脆弱性スキャンと言ったより高度なセキュリティ機能が提供されます。
今回利用するJust-In-TimeはこのAzure Defender for serversに含まれる機能になります。
Just-In-Timeとは
Just-In-Time (JIT) VM アクセスについて(マイクロソフト社公式)
Just-In-TimeはネットワークセキュリティグループもしくはAzure Firewallのルールを使って実現されます。大きく分けて以下の2つが提供されます。
-
- Just-In-Timeの主な特徴
- すべての受信トラフィックを拒否する受信規則が必ず存在する
- 設定した IP アドレス (または範囲) から選択したポートへの受信規則を指定した時間だけ作成できる
- Just-In-Timeの主な特徴
すべてのトラフィックを閉じルールと管理ポートのアクセス許可する受信する規則が出来ます。結果として特定の管理ポート(SSHやRDP)へのアクセスを一定時間だけ許可する事が出来ます。
Just-In-Timeを設定する
Security CenterでAzure Defender for serversを有効化
Just-In-TimeはAzure Defender for serversの一機能になる為、Azure Security Center Freeでは利用できません。
最初にAzure Defender for serversを有効化する必要があります。Azure Defender for serversは有料のサービスになります。価格はこちらを参照ください。
Azure Defender for serversの有効化 | |
セキュリティセンターで価格と設定を選択します。サブスクリプションが表示されますのでクリックします。 | |
Azure Defenderプランが表示されるのでAzure Defenderオンを選択します。 | |
Azure Defenderオンにすると各プランでオンオフを選択できます。デフォルトはすべてオンになっています。今回はサーバのみをオンにしそれ以外はオフに変更します。 設定が終わったら保存を選択します。 |
これでAzure Defenderの有効化は完了です。
Just-In-Timeの有効化
Just-In-Timeを使う為には有効化、ポート構成の作成、アクセス権の要求の順で設定を行う必要があります。
最初にJust-In-Timeの有効化を行います。仮想マシンのメニュー、セキュリティセンターのメニューから設定が可能です。今回は仮想マシンのメニューから実施しています。
ポート構成の作成
Just-In-Timeで使うポート構成の作成を行います。ポート構成はネットワークセキュリティグループと同様にどのポートについてどこからアクセスを許可するのかを設定します。
-
- ポート構成の要素
- ポート、プロトコル
- 許可するIPアドレス
- 要求時間(許可する時間)
- ポート構成の要素
※同一ポート番号に対して作成可能なポート構成は1つです。同じ22番ポートでこのIPの場合は3時間許可、このIPの場合は1時間許可のような設定は出来ません。
アクセス権の要求
実際にJust-In-Timeを使ってアクセスを行う為にはアクセス権の要求が必要になります。アクセス権の要求はセキュリティセンター、仮想マシンどちらかでも行う事が可能です。
アクセス権の要求 | |
セキュリティセンターで対象のポート構成にチェックを入れるとアクセス権の要求が有効化されます。 クリックするとアクセス権の要求が行われます。 |
|
仮想マシンのメニューの場合は接続にアクセス権の要求があります。 クリックするとアクセス権の要求が行われます。 |
Just-In-Timeを使った場合のネットワークセキュリティグループ受信規則
実際に使ってみて、ネットワークセキュリティグループがどのように変化するのか確認してみます。