Amazon RDSのSQLログをIBM Security Guardiumで可視化してみた(1)
投稿者:林田 誠
こんにちは、今回はAmazon RDS for SQL Serverのデータベース操作ログをIBM Security Guardium(以下、Guardium)を利用して、ログをレポート表示してみたいと思います。
クラウドに移行した場合、データベース監査をどうやって実現するのか悩んでいるかと思います。Guardiumでは、オンプレだけではなくクラウドのDBaaS型のデータベースログをIBM Guardium External S-TAP(以下、External S-TAP)で取得することができます。
どのようにログを取得しているのか仕組みを理解する上でも、実際にAWS上でGuardiumの環境を構築してみました。
構成イメージ
構成イメージは下記となります。
※今回はわかりやすくするためにRDSやGuardium Collectorはシングル構成としています。
確認したいこと
・AWS外部のDBユーザー(※自端末)からAmazon RDS for SQL Server(External S-TAP経由)に対して、SQLを実行します。
・AWS外部のDB監査担当(※自端末)からGuardium Collectorに対して、ブラウザでSQL実行ログのレポートを表示します。
構築の流れ
Amazon RDS for SQL Serverが既に存在するAWS環境に、Guardium CollectorとExternal S-TAPを導入します。
(1)AWSにGuardium Collectorをデプロイ
(2)Amazon EKSクラスターにExternal S-TAPをデプロイ
(3)DBクライアントからSQL実行レポートを表示
※AWS関連の詳細については省略しています。
(1)AWS上にGuardium Collectorをデプロイ
(1)- a. Guardium Collectorのデプロイ
Guardium CollectorのEC2インスタンスをデプロイします。
AWS MarketplaceからGuardiumのイメージを検索して簡易にデプロイすることも可能ですが、IPアドレスを手動で指定するためここでは詳細なEC2パラメータを確認しながらデプロイしていきます。
1 AWSコンソールにログインします。
https://console.aws.amazon.com/
2 EC2ページの[イメージ]-[AMI]を選択します。
3 [パブリックイメージ]で[Guardium]を検索します。
[IBM Security Guardium v11.3 Collector-XXXXXXX]を選択して[起動]します。
4 インスタンスタイプの選択で、[m5.2xlarge]を選択します。
※ベンダー推奨の[m4.2xlarge]の新しいモデル
[IBM Security Guardium v11.3 Collector-XXXXXXX]を選択して[起動]します。
5 インスタンスタイプの詳細の設定で各項目を入力後、[次のステップ]を選択します。
・インスタンス数:1
・ネットワーク:事前に作成したVPC
・サブネット:事前に作成したGuardium Collector用のサブネット
・ネットワークインターフェイス(eth0):[プライマリIP]に
Guardium CollectorのIPアドレスを設定します。
6 ストレージの追加で、サイズが500(GiB)を入力後、[次のステップ]を選択します。
※500(GiB)以上のサイズを入力してもGuardium Collectorでログ保管に割り当てられるサイズは変わらないようです。
7 タグの追加で、[次のステップ]を選択します。
8 セキュリティグループの設定で、事前に作成したセキュリティグループを選択します。
Guardium Collectorに対して下記のポートをオープンにする必要があります。
・TCP 22:CLI接続用
・TCP 8443:GUI接続用
・TCP 8445:パッチ適用で利用するファイルサーバ用
[確認と作成]を選択します。
9 インスタンス作成の確認で設定した値を確認します。
問題がなければ、[起動]を選択します。
10 既存のキーペアを選択するか、新しいキーペアを作成します。
※作成したキーペアは、Guardium CollectorのCLIにログインする際に利用しますので、
無くさないように大事に保管しましょう。
11 今回は既にキーペアを作成していましたので、既存のキーペアを選択して
[インスタンスの作成]を選択します。
12 EC2ページのステータスチェックが[初期化します]と表示されている場合は、
作成中のため待ちましょう。
[2/2 のチェックに合格しました]と表示されたら完了です。
13 AWS内からGuardium Collectorに接続する場合は、
[プライベートIPv4アドレス(デプロイ時のプライマリIP)]を指定しますが
ここでは、AWS外からGuardium Collectorにアクセスするため、
[Elastic IPアドレス]をEC2インスタンスに割り当てて固定された
[パブリックIPv4アドレス]でインターネットからアクセスできるようにします。
14 SSHのターミナルソフトから、Guardium CollectorのElastic IPアドレスに接続します。
・ユーザ名:cli
・秘密鍵:Guardium Collectorのデプロイで指定したキーペアのファイルを指定します。
※パスワード入力でのログインは、製品仕様上できないようです。
15 いつもの見慣れたCLI画面が表示されました!!
IBM Guardium, Command Line Interface (CLI)
Last login: Tue Oct 26 06:59:22 2021 from XXXXXXXXXXXXXXXX |
続いてGuardium Collectorの初期設定もしましょう。
(1)- b. Guardium Collectorの初期設定
Guardium Collectorを利用するための最低限の設定をします。
このあたりは、オンプレのGuardiumと変わらないですね。
1 Guardium CollectorのCLIにログインします。
2 ネットワーク設定をします。
guard.yourcompany.com> show network interface all NIC: IP: Prefix: State: eth0 127.0.0.1 /24 Enabled ok guard.yourcompany.com> store network interface ip xx.xx.xx.xx/24 ・・・IPv4アドレス/マスク This change will take effect after the next network restart. ok guard.yourcompany.com> show network routes defaultroute 192.168.2.1 ok guard.yourcompany.com> store network routes defaultroute xx.xx.xx.1・・・デフォルトゲートウェイ This change will take effect after the next network restart. ok guard.yourcompany.com> show system hostname guard ok guard.yourcompany.com> store system hostname Guardium Collectorのホスト名 Is it a newly cloned appliance (y/n)?y ok guard.yourcompany.com> show system domain yourcompany.com ok guard.yourcompany.com> store system domain ドメイン名 ok guard.yourcompany.com> restart network Do you really want to restart network? (Yes/No) Yes Restarting network |
3 必要に応じて言語やタイムゾーン、NTP等を設定します。
4 Guardium CollectorのGUI画面にログインしてライセンス登録をします。
https://(Guardium CollectorのIPアドレス):8443/
※今回は、インターネットからのアクセスのため、Elastic IPを指定しています。
ナビゲーションメニューの[セットアップ]-[ツールとビュー]-[使用許諾条件]から
ライセンスキー(ベースライセンス、付加ライセンス)を設定します。
Guardium Collectorの初期設定はここまでです。
続きはこちらです。
Amazon RDSのSQLログをIBM Security Guardiumで可視化してみた(2)
*記載の製品/サービス名称、社名、ロゴマーク等は該当する各社・団体の商標または登録商標です
弊社の取り扱いセキュリティソリューション
GuardiumによるDB監査によるデータ保護以外にも、ゼロトラスト時代に必要な各種セキュリティソリューションを取り扱っています。
詳しくは、弊社取り扱いのセキュリティソリューションをご参照ください。