【Security Hub修復手順】[EKS.2] EKS クラスターは、サポートされている Kubernetes バージョンで実行する必要があります

2023.04.27

こんにちは、岩城です。

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

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

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

[EKS.2] EKS クラスターは、サポートされている Kubernetes バージョンで実行する必要があります

[EKS.2] EKS clusters should run on a supported Kubernetes version

前提条件

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

対象コントロールの説明

EKSでサポートされているKubernetesバージョンを使用することを求めるものです。

現時点ではいえば、バージョン1.21がEOSを迎えていますので、これを利用している場合はコントロールが失敗します。

EKSではProduction ReadyなKubernesバージョンを少なくとも4つサポートするように取り組まれています。

新しいバージョンは、3ヶ月ごとにリリースされ、マイナーバージョンは最初にリリースされてから約12ヶ月間サポートされます。

2023年4月27日時点のリリースカレンダーは以下のとおりです。

Amazon EKS Kubernetes release calendar(引用元)

アプリケーションが特定のKubernetesのバージョンを必要としない場合は、EKSがサポートしている最新バージョンにバージョンアップすることが推奨されています。

本コントロールは抑制済みにしたとしても、バージョンアップからは逃れられません。常に特定バージョンを利用することはできず、サポート終了後AWSにより自動でバージョンアップされますので計画的に対応しましょう。

ちなみに、1.21から最新の1.25にバージョンアップする際は、直接バージョンアップできないので、一つずつマイナーバージョンアップが必要です。

修復手順

EKSを利用しているユーザーは、CloudFormationやTerraformなどを始めとするIaCを使用して構成管理されていると思います。本エントリでは分かりやすくイメージできるということでマネジメントコンソールでのバージョンアップ手順を示します。

なお、バージョンアップに伴う影響についてAWSドキュメントを参照したり、バージョンアップ先のEKSクラスターを用意して実際に検証のうえ、環境に適用してもEKS上で動かすワークロードに影響がないことを確認してください。

古いバージョンを利用しているEKSは以下のようにレコメンドが表示されます。すぐ横の今すぐ更新からすぐにバージョンアップすることができます。

ひとつ上のマイナーバージョンを選択して更新します。

EKSクラスターのバージョンアップが完了すると、すべてのノードグループとワーカーノードが更新されます。

1.21から1.22へのバージョンアップが完了しても、現在EKSでサポートされている最も古いバージョンを利用しているので、バージョンアップを計画を促すレコメンドが表示されます。ちなみに1.22は2023/06/04がEOSです。すぐにEOSを迎えるので、2023/10までサポート期限のある1.23まで上げて、次のバージョンアップ対応まで猶予を持たせても良いかも知れません。

最後に

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

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

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