

# OPS05-BP05 パッチ管理を実行する
<a name="ops_dev_integ_patch_mgmt"></a>

 パッチ管理を実行し、問題を解決して、ガバナンスに準拠するようにします。パッチ管理の自動化により、手動プロセスによって発生するエラーを低減し、スケールして、パッチに関連する労力を減らすことができます。 

 パッチと脆弱性の管理は、利点とリスク管理のアクティビティの一環です。不変のインフラストラクチャを使用し、検証済みの正常な状態でワークロードをデプロイすることが推奨されます。これが現実的でない場合のオプションには、パッチの適用があります。 

 [Amazon EC2 Image Builder](https://aws.amazon.com/image-builder/) は、マシンイメージ更新向けのパイプラインを提供します。パッチ管理の一環として、 [AMI イメージパイプラインを使用する](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html       ) Amazon マシンイメージ (AMI) または [Docker イメージパイプラインを備えた](https://docs.aws.amazon.com/imagebuilder/latest/userguide/start-build-image-pipeline.html) コンテナイメージを [を検討します。](https://docs.aws.amazon.com/imagebuilder/latest/userguide/start-build-container-pipeline.html)一方、AWS Lambda は、脆弱性を排除するための [カスタムランタイムと追加ライブラリのパターンを](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-custom.html) 提供します。 

 Linux または Windows Server イメージ用の [AMI イメージパイプラインを使用する](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) の更新管理については、 [Amazon EC2 Image Builder](https://aws.amazon.com/image-builder/)を使用します。既存のパイプラインで [Amazon Elastic Container Registry (Amazon ECR)](https://docs.aws.amazon.com/AmazonECR/latest/userguide/what-is-ecr.html) を使用して、Amazon ECS と Amazon EKS イメージを管理できます。Lambda には、 [バージョン管理機能が提供されています](https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html)を使用します。 

 パッチの本番環境のシステムへの適用は、まず安全な環境でテストした後とする必要があります。パッチは運用上またはビジネス上の成果に対応している場合にのみ適用してください。AWS では、 [AWS Systems Manager Patch Manager を使用して、](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 管理対象システムへのパッチ適用プロセスを自動化し、 [Systems Manager Maintenance Windows を使用してアクティビティを](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html)を使用します。 

 **期待される成果:** AMI とコンテナイメージにパッチが適用されて最新の状態であり、起動の準備が整っています。デプロイされたすべてのイメージのステータスを追跡し、パッチのコンプライアンスを把握できます。現在のステータスを報告でき、コンプライアンスのニーズを満たすプロセスが施行されています。 

 **一般的なアンチパターン:** 
+  あなたには、すべての新しいセキュリティパッチを 2 時間以内に適用するために権限が付与されました。その結果、アプリケーションにパッチとの互換性がないため、複数の機能停止が発生しました。 
+  パッチが適用されていないライブラリは、不明な関係者がライブラリ内の脆弱性を使用してワークロードにアクセスするため、意図しない結果をもたらします。 
+  あなたは、デベロッパーに通知することなく、自動的にデベロッパー環境にパッチを適用します。あなたには、デベロッパーから、環境が想定どおりに動作しなくなったという苦情が複数寄せられます。 
+  永続的なインスタンスの商用オフザシェルフのセルフソフトウェアにパッチを適用していない。ソフトウェアに問題があり、ベンダーに連絡すると、ベンダーから、バージョンがサポートされておらず、サポートを受けるためには、特定のレベルにパッチを適用する必要があることが伝えられます。 
+  使用した暗号化ソフトウェアの最近リリースされたパッチにより、パフォーマンスが大幅に向上しますが、パッチが適用されていないシステムには、パッチを適用しない結果として、パフォーマンスの問題が残存している。 
+  緊急に修正が必要なゼロデイ脆弱性についての通知を受けて、すべての環境に手動でパッチを適用する必要がある。 

 **このベストプラクティスを活用するメリット:** パッチ適用の基準や環境全体にわたる配布方法など、パッチ管理プロセスを確立することで、パッチレベルのスケールとレポート作成が実現します。これにより、セキュリティパッチの適用が保証され、実施されている既知の修正のステータスを明確に把握できます。これにより、必要な機能の導入、問題の迅速な解決、継続的なガバナンスへの遵守が実現します。パッチ管理システムと自動化を実装して、パッチをデプロイする労力を軽減し、手動プロセスに起因するエラーの発生を抑制します。 

 **このベストプラクティスを活用しない場合のリスクレベル:** 中程度 

## 実装のガイダンス
<a name="implementation-guidance"></a>

 問題の修正、希望する機能や能力の取得、ガバナンスポリシーやベンダーのサポート要件への準拠継続を行うためにはシステムをパッチします。変更不可能なシステムでは、必要な成果を達成するために適切なパッチを使用してデプロイします。パッチ管理メカニズムを自動化することで、パッチ適用の経過時間、手動プロセスが原因で発生するエラー、パッチに関する労力を低減できます。 

### 実装手順
<a name="implementation-steps"></a>

 Amazon EC2 Image Builder の場合: 

1.  Amazon EC2 Image Builder を使用して、次のパイプラインの詳細を指定します。 

   1.  イメージパイプラインの作成と命名 

   1.  パイプラインのスケジュールとタイムゾーンの定義 

   1.  すべての依存関係の設定 

1.  次のレシピを選択します。 

   1.  既存のレシピを選択するか、新しいレシピを作成します 

   1.  イメージのタイプを選択します 

   1.  レシピに名前を付けてバージョンを付けます 

   1.  ベースイメージを選択します 

   1.  ビルドコンポーネントを追加して、ターゲットレジストリに追加します 

1.  オプション - インフラストラクチャの設定を定義します。 

1.  オプション - 設定を定義します。 

1.  設定を確認します。 

1.  レシピのハイジーンを定期的に管理します。 

 Systems Manager Patch Manager の場合: 

1.  パッチベースラインを作成します。 

1.  パス設定操作方法を選択します。 

1.  コンプライアンスレポートとスキャンを有効にします。 

## リソース
<a name="resources"></a>

 **関連するベストプラクティス:** 
+  [OPS06-BP08 テストとロールバックを自動化する](ops_mit_deploy_risks_auto_testing_and_rollback.md) 

 **関連するドキュメント:** 
+ [ Amazon EC2 Image Builder とは ](https://docs.aws.amazon.com/imagebuilder/latest/userguide/what-is-image-builder.html)
+ [ Amazon EC2 Image Builder を使用してイメージパイプラインを作成する ](https://docs.aws.amazon.com/imagebuilder/latest/userguide/start-build-image-pipeline.html)
+ [ コンテナイメージパイプラインを作成する ](https://docs.aws.amazon.com/imagebuilder/latest/userguide/start-build-container-pipeline.html)
+  [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 
+ [ Patch Manager の操作 ](https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-console.html)
+ [ パッチコンプライアンスレポートの使用 ](https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-compliance-reports.html)
+ [AWS デベロッパーツール ](https://aws.amazon.com/products/developer-tools)

 **関連動画:** 
+  [AWS のサーバーレスアプリケーション用の CI/CD](https://www.youtube.com/watch?v=tEpx5VaW4WE) 
+  [Ops を考慮に入れて設計する](https://youtu.be/uh19jfW7hw4) 

   **関連する例:** 
+ [ Well-Architected ラボ - インベントリおよびパッチ管理 ](https://wellarchitectedlabs.com/operational-excellence/100_labs/100_inventory_patch_management)
+ [AWS Systems Manager Patch Manager チュートリアル ](https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager-tutorials.html)