自動修復により、顧客はインフラストラクチャ上で自己修復型のLambda関数を実行し、セキュリティおよびガバナンスの失敗をリアルタイムで修正することができます。サポートされている自動修復Lambda関数のリストについては、GitHubページを参照してください。
大規模なビジネスに対する自動修復の実装およびセキュリティギャップを埋めるカスタムLambdaの作成に関する詳細は、Conformityプラットフォームを使用したセキュリティおよびコンプライアンスの自動修復の追加方法をご覧ください。
注意
注意
[Example Scenario]: ユーザがS3アクセス制御リスト (ACL) を介してS3バケットを公開読み取り可能にします。

自動修復はどのように機能しますか 親トピック

手順

  1. ConformityはリスクをルールFailureとして識別します
  2. Conformityは指定されたSNSチャネルにNotificationsを送信します。
  3. SNSトピックがオーケストレーターLambda関数をトリガーし、それがS3バケットの自動修復関数を呼び出します。
  4. AutoRemediateS3-001 functionはS3バケットACLを更新し、ルールFailureを解決してセキュリティギャップを解消します。
    auto-remediate-y5t5mt=4d6a81ed-c67d-47bb-b74c-6c07c87e7d1e.png

自動修復を設定 親トピック

公式Serverlessドキュメントの指示に従って、AWSアカウントへのアクセスをServerless Frameworkに提供し、インストールしてください。Auto-remediationリポジトリの作業コピーを作成し、以下の指示に従ってください。

手順

  1. Auto-remediationリポジトリの作業コピーを作成する:
    1. Linux / Mac OS X / WindowsにGitをインストールしていない場合はインストールしてください。
    2. 次のGitコマンドを実行してください: git clone https://github.com/cloudconformity/auto-remediate.git
      step-2-set-up-auto-remediate-gszqhf=e4e13afb-1bcb-46f6-9282-0f4882947601.png
  2. 自動修復フォルダ内のfunctionsディレクトリに移動します: cd auto-remediate/functions
  3. コマンドを使用してアクセスルールを構成します: nano config.js
    step-4-set-up-auto-remediate-sxxhts=cf69aff5-0526-4dd7-8541-a2f5344d5cf7.png
  4. [config.js]ファイル内のすべてのルールは次のように設定されています:
    'enabled': false はデフォルトで無効になっており、誤設定を防ぎます。
    ルールを手動で有効にするには、値を'enabled': trueに変更する必要があります
    step-5-set-up-auto-remediate-cgtgyl=05c4ef0c-ffa5-4947-a3e6-e0b4b7a8f4fe.png
  5. 変更を加えた後:
    • キーボードアクション[Ctrl-O]を実行して変更を書き出します
    • 変更を確認するには[Enter]を押してください
    • キーボード操作[Ctrl-X.]を行ってコマンドラインエディタを終了します
  6. 次のコマンドを実行してください:
    • コマンドcd ..を使用して、auto-remediateフォルダに1レベル上がります
    • コマンドnpm installを使用して、node:modulesフォルダをAWSで利用可能にする
    step-7-set-up-auto-remediate-gcsmxd=87bb6c3e-cb64-464a-87e3-81330d74979e.png
  7. 次のコマンドを実行して自動修復をデプロイします:
    serverless deploy --region [your AWS account region]
    例えば
    serverless deploy --region us-east-2
    注意
    注意
    自己修復機能のために、AWSアカウントと同じリージョンに自動修復を展開することをお勧めします。チェックの失敗の検出は、RTMConformity Botによって実行されるため、展開のリージョンに依存しません。
    step-8-set-up-auto-remediate-y2seyb=0cbd4fd1-baa2-4418-bb27-9573065df150.png
  8. 展開が成功すると:
    • AWSアカウントに[CloudConformity]という名前のSNSトピックが自動的に作成されます。
      step-9a-set-up-auto-remediate-vennsp=a74680fd-88a9-4b4d-bc56-b86b5081bf90.png
    • [autoremediate-v1-AutoRemediateOrchestrator]という名前のLambda関数は[CloudConformity] SNSトピックに自動的にサブスクライブされます。
      step-9b-set-up-auto-remediate-faliqv=87d65e4d-beec-4089-a03d-b32fac9b355a.png
  9. ConformityプラットフォームにAmazon SNS Communicationチャネルを統合し、有効にしたいNotificationsを選択してください。
    • Automatic notifications - 失敗したチェックは、メッセージがSNSチャネルに公開されると自動的に解決されます。
    • Manual notifications - チェック失敗時に[Send via SNS]ボタンを表示できます。ボタンをクリックして失敗を解決してください。

自動修復の展開後にルールを有効化または無効化 親トピック

手順

  1. AWSコンソールで、次に移動します: [Services][Compute][Lambda][Functions]
  2. 検索して選択: [auto-remediate-v1-AutoRemediateOrchestrator]
    step-2-enable-rules-d3pv6x=9e6eef4e-fb69-4f98-a595-4dc0946dc46b.png
  3. 構成を変更する
    1. [Configuration][Function code][Environment][auto-remediate-v1][functions]に移動します。
  4. [config.js]を選択して、自動修復ルールの設定を変更します。
    step-4-enable-rules-ij5zyy=c5e6d2eb-e40f-4e78-8057-76527e52fc2d.png

自動修復展開のテスト 親トピック

手順

  1. Communication triggerAmazon SNSチャネルを構成する際に選択したことを確認してください:
    1. デフォルトに設定して、NotificationsをAll Checksに送信するか
    2. [Rules]の下で[EC2-002]を特定して選択できます
  2. [AutoRemediateEC2-002]Ruleが有効になっていることを確認するには、Ruleを有効にするための手順に従ってください。
    step-2-test-deployment-f4xygj=d3a8deff-492b-46b8-b0f3-a6bbaeddddd9.png
  3. AWSコンソールで、[Services][Compute][EC2 Security Groups]に移動します
    step-3-test-deployment-bydcts=ac7dd898-6d67-460b-be29-d7f6ca5491a9.png
  4. [Create Security Group]をクリック
    1. 名前、説明を入力し、VPCを選択
    2. [Security group rules][Inbound,]の下で[Add Rule]をクリックします:
      • タイプを選択: [SSH]
      • ソース: [Anywhere]
      • [Create]をクリックしてください

Manual notifications を使用した解決 親トピック

Manual notificationsのみを有効にしている場合は、以下の手順に従ってFailureを解決してください。

手順

  1. All Checks reportに移動し、ルールをフィルタリングしてください:
    • [Rules]: EC2-002 (無制限のSSHアクセス)
    • [Only show checks created less than]: 1日
  2. チェックのFailure時に、[Send via SNS]をクリックしてください。

自動修復の解決を確認 親トピック

手順

  1. AWSコンソールで、[Services][Compute][EC2][Security Groups.]に移動します。ステップ4で作成したSecurity Groupがもう利用できないことがわかります。
    step-1-verify-resolution-y1iv54=e87aa49d-1d96-4e8e-9a00-54fb6b8b31e9.png
  2. AWSコンソールで、**サービス > コンピュート > Lambda > 関数 > {auto-remediate function}を選択 > モニタリング**に移動します。[auto-remediate-v1-AutoRemediateOrchestrator]およびそのサブ関数がトリガーされているかどうかを理解するために、Lambdaモニタリングチャートを確認することもできます。
    step-2-verify-resolution-ljjg9w=dec11435-6382-48cf-89d2-926cb50955af.png

オートリメディエーションプロジェクトへの貢献 親トピック

独自の自動修復コードをフォークして変更することはできますが、Conformityはフォークされたコードに対してサポートを提供しません。ただし、自動修復コードにプルリクエストを送信することは可能で、承認された場合、そのコードはカスタマーサクセスチームによってサポートされます。