【Security Hub修復手順】[RDS.18] RDS インスタンスは VPC 内にデプロイする必要があります

AWS SecurityHub 基礎セキュリティのベストプラクティスコントロール修復手順をご紹介します。

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、AWS事業本部のトクヤマシュンです。

皆さん、お使いのAWS環境のセキュリティチェックはしていますか?

当エントリでは、AWS Security HubによるAWS環境のセキュリティ状況スコアリングに該当する項目についての修復手順をご紹介します。

本記事の対象コントロール

[RDS.18] RDS インスタンスは VPC 内にデプロイする必要があります

[RDS.18] RDS instances should be deployed in a VPC

前提条件

本記事はAWS Security Hubで「AWS基礎セキュリティのベストプラクティススタンダード」を利用されている方向けの内容となります。 AWS Security Hubの詳細についてはこちらのブログをご覧ください。

修復手順

1.ステークホルダーに確認

まずはステークホルダー(Amazon RDSインスタンスの管理者、Amazon RDSに接続するアプリの開発・運用者など)に以下を確認します。

  • RDSインスタンスをVPC内にデプロイしても問題ないか?
    • 問題ある場合
      • 何が問題なのか深掘りを行い、早急に移行をオススメします
        • 本コントロールに抵触するRDSインスタンスはEC2-Classicプラットフォームに存在します
        • EC2-Classicは2022年08月15日に廃止済みで、2023年現在にはインスタンスは原則存在しないはずですが、もし存在する場合はVPC内へのデプロイを前提に移行計画を立てましょう
    • 問題ない場合
      • ダウンタイムは認めらるか?
        • 認められる:2.VPC内へのマイグレーション(ダウンタイムあり)に進んでください
        • 認められない:3.VPC内へのマイグレーション(ダウンタイムなし)に進んでください

2.VPC内へのマイグレーション(ダウンタイムあり)

ダウンタイムありの場合のマイグレーション方法を簡単にまとめます。
詳細はVPC 外の DB インスタンスを VPC 内に移行するをご確認ください。

2.1 VPC・サブネット作成

移行先のVPCが存在しない場合、VPCを作成しておきます。

Amazon RDSインスタンスをデプロイする、最低2つの異なるアベイラビリティーゾーンを持つサブネットも、必要に応じて作成します。

2.2 サブネットグループ作成

DBサブネットグループが存在しない場合、DB サブネットグループを作成します。

2.3 VPCセキュリティグループ作成

続いて、Amazon RDSインスタンスに割り当てるためのVPCセキュリティグループを作成します。
セキュリティグループのインバウンド・アウトバウンドルールは既存のAmazon RDSインスタンスと同様の許可ポリシーとなるよう設定してください。

2.4 DBインスタンスのVPCの更新

既存DBインスタンスに対してDBインスタンスのVPCの更新を行い、対象のVPC内にAmazon RDSインスタンスをデプロイします。
移行の際にはダウンタイムが発生しますので、ご注意ください。
必要に応じてDBに接続しているアプリケーションの接続先変更も行ってください。

以上でVPC内へのマイグレーション(ダウンタイムあり)は完了です。

なお、移行の際には次の制約を確認してください。

  • マルチAZ
    • VPC外のマルチAZインスタンスはVPC内へ移行できません
    • 事前にシングルAZ配置に変更し、VPC内へ移行してからマルチAZ配置に戻す必要があります
  • リードレプリカ
    • VPC外のリードレプリカ有りのAnazib RDSインスタンスはVPC内へ移行できません
    • 事前にすべてのリードレプリカを削除し、VPC内へ移行してからリードレプリカを追加する必要があります
  • オプショングループ
    • カスタムオプショングループの使用が必要な場合は、事前に作成の上でVPC移行時にDBインスタンスに関連付ける必要があります
  • インスタンスクラス

3.VPC内へのマイグレーション(ダウンタイムなし)

ダウンタイムを抑える場合、下記のいずれかを実施してください。

  • AWS DMS(Database Migration Service)の利用
    • VPC内にRDSインスタンスを作成し、VPC外のRDSインスタンスをソースDBとしてレプリケーションします
    • インデックスや、ユーザー、権限、ストアドプロシージャ、テーブルデータなどは移行されないためご注意ください
    • 詳細はAWS Database Migration Serviceを参照してください
  • DB スナップショットの復元またはポイントインタイムリカバリ

修復確認

マネジメントコンソールからAmazonRDSデータベースにアクセスし、対象のDBインスタンスのVPC列にVPC IDの記載があれば、インスタンスがVPC内に存在することを確認できます。

この状態であれば、修復は完了です。

最後に

今回は、AWS Security HubによるAWS環境のセキュリティ状況スコアリングに該当する項目についての修正手順をご紹介しました。

コントロールを修正して、お使いのAWS環境のセキュリティをパワーアップさせましょう!

最後までお読みいただきありがとうございました!どなたかのお役に立てれば幸いです。

以上、トクヤマシュンでした。

クラスメソッドメンバーズをご契約の皆さまに

AWS Security Hub 「基礎セキュリティのベストプラクティス」の各チェック項目(コントロール)に対する弊社としての推奨対応やコメントを記載しているClassmethod Cloud Guidebookを提供しています。 クラスメソッドメンバーズポータルの「お役立ち情報」→「組織的な AWS 活用のためのノウハウ」からご参照ください。