こんにちは、サイオステクノロジー技術部 武井です。私は、マイクロソフトが実施しているテクニカルカンファレンス「Ignite」に参加するためにフロリダのオーランドということろに来ております。Igniteが実施している期間中に、「ほぼ」リアルタイムレポートをお届けしたいと思います。今回は「Securing Azure IaaS virtual machines」について記載します。
本セッションは以下のような方向けです。
Azure上に立てた仮想マシンのセキュリティを強固なものにしたい!!
Hyatt Regencyの端っこの方にある場所でわかりにくかったです^^;
冒頭では仮想マシンをセキュアにするために以下のTIPSが提示されました。一つずつ説明いたします。
Secure Administrative panel
Azureの仮想マシンの管理画面に対するアクセスを強固にしましょうという意味になります。そのためにできることは、MFA(多要素認証)を有効にしたり、RBACを活用したりするなどが挙げられていました。確かに管理画面を乗っ取られたら、いくら仮想マシン自体のセキュリティを強固にしても意味がないので、この対策は非常に重要となります。
Azure Software Update
Azureの「Update Management」という機能を使って常にソフトウェアを最新にしましょうということです。Update Managementを有効にした仮想マシンには、専用のエージェントがインストールされ、OSの更新状態をチェックした結果をAzure側に送信します。そして、専用の管理画面からOSの更新状態(どのパッチが適用済みなのか未適用なのか)を確認、必要であればパッチをインストールします。
パッチを放置しておくと、OS自体に脆弱性が生まれて、管理者権限を乗っ取られる等の被害が出る可能性がありますので、この作業は確かに重要です。
Azure Firewall, NSG, & NVA
Azure上で構築できるFirewallであるAzure Firewallや、Network Security Groupで適切なポートの開け締めや、FQDNによるフィルタリングなど、通信の制御を行いましょう。
言わずもがな、必要な通信のみ許可するというのはセキュリティの基本です。
Bastion and JiT
対象の仮想マシンに直接SSHやRDPをするのではなく、Azureから提供されるマネージドな踏み台サーバーBastionや、必要に応じてRDPやSSHのポートを限られた時間開放するJiT(Just in time VM access)を使うことが推奨されています。
確かに、SSHやRDPのポートは攻撃の対象になりやすいので、必要なときにのみ必要な場所から使えるようにしておけば安心です。
Adaptive Application Control
アダプティブアプリケーション制御によって、ホワイトリスト規則を使って、VM上のアプリケーションをマルウェアから保護することが出来ます。
IaaS VN Disk Encryption
題名に記載のあります通り、VMのディスクを暗号化する方法です。暗号化のキーはKey Vaultによって適切に管理されている必要があります。また、VHDファイルへのアクセスは、認証されたユーザーのみに限定することも必要とあります。
File Integrity Monitoring
ファイルの改竄チェックになります。Security Centerで提供されている機能で、対象のファイルのが変更されたかどうかをApplication Insightsに通知することが可能です。
これを使えば、例えばWebサイトのコンテンツをチェック対象にしておいて、改ざんされたらApplication Insightsからメールで通知を行うように設定することで被害を最小限に食い止めることができるかもしれません。
まとめ
以上、Azureの仮想マシンのセキュリティを向上させるTIPSについて記載させて頂きました。AzureではたくさんのManagedなサービスが出ていますが、また仮想マシンの出番はたくさんあります。意外に立てたら立てっぱなしのことが多いと思いますが、これらTIPSに従って、仮想マシンのセキュリティを向上させて、事故を未然に防ぎましょう。