【Security Hub修復手順】[ElasticBeanstalk.3] Elastic BeanstalkではログをCloudWatchに出力するべきです

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

こんにちは!AWS事業本部のおつまみです。

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

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

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

[ElasticBeanstalk.3] Elastic BeanstalkではログをCloudWatchに出力するべきです

[ElasticBeanstalk.3] Elastic Beanstalk should stream logs to CloudWatch

前提条件

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

対象コントロールの説明

このコントロールは、Elastic Beanstalk 環境が CloudWatch Logs にログを送信するように設定されているかどうかをチェックします。
Elastic Beanstalk 環境が CloudWatch Logs にログを送信するように設定されていない場合、コントロールは失敗します。

トラブルシューティングでインスタンスログを利用するため、有効化を推奨します。 CloudWatch Logsに出力されるログの種類はElastic Beanstalkのプラットフォーム毎に異なります。内容については、公式ドキュメントを確認してください。

Amazon CloudWatch Logs で Elastic Beanstalk を使用する - AWS Elastic Beanstalk

開発環境などログの長期保存が不要な環境では、ログの保持期間の短期化およびElastic Beanstalk環境終了時のログ削除をお勧めします。 大量にログが発生する環境でCloudWatch Logsへのデータ転送にかかる費用が問題になる場合は、Fluentd(td-agent)を検討ください。 Fluentd を使うことで、Kinesis Data Firehose経由でS3へログを配信できます。

修復手順

  1. Elastic Beanstalk コンソールを開き、ナビゲーションペインで、[環境]を選択し、リストから環境の名前を選択します。  

  2. ナビゲーションペインで[設定]を選択し、[更新、モニタリング、ログ記録] で、[編集]を選択します。  

  3. CloudWatchログへのインスタンスログストリーミングでログストリーミングをアクティブ状態にします。  

  4. [保持期間] をログを保存する日数に設定します。1~3653まで選択できます。  

  5. 環境の終了後にログを保存するかどうかを決定するライフサイクル設定を選択します。  

  6. 変更を保存するには、ページの下部にある[適用]を選択します。  

  7. ログストリーミングを有効にすると、 [設定]の[更新、モニタリング、ログ記録] で、[ロググループ]リンクを見つけることができます。CloudWatch コンソールでログを確認するには、このリンクを選択します。  

最後に

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

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

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

以上、おつまみ(@AWS11077)でした!

参考

Amazon CloudWatch Logs で Elastic Beanstalk を使用する - AWS Elastic Beanstalk

Elastic BeanstalkのCloudWatch Logs のストリーミングを試してみた | DevelopersIO