オープンソース Kubernetes の kubelet で使用される安全でない読み取り専用ポート 10255 は、Pod とコンテナを悪意のある攻撃に晒す可能性があります。このセキュリティリスクを軽減するため、Container Service for Kubernetes (ACK) は、Kubernetes 1.26 以降を実行する ACK クラスターにおいて、kubelet の読み取り専用ポート 10255 をデフォルトで開かなくなりました。代わりに、kubelet は認証ポート 10250 を使用するようになりました。
リスク免責事項
攻撃者はノードに侵入し、kubelet の読み取り専用ポート 10255 を利用してノード上のアプリケーションに関する情報を取得する可能性があります。これにより、情報漏洩が発生します。この問題を解決するため、ACK は Kubernetes 1.26 以降を実行する ACK クラスターにおいて、kubelet の読み取り専用ポート 10255 をデフォルトで開かなくなりました。代わりに、kubelet は認証ポート 10250 を使用するようになりました。
お使いのクラスターが 1.26 より前の Kubernetes バージョンを実行している場合、このトピックの手順に従って、関連するモニタリングコンポーネントを更新し、kubelet の読み取り専用ポート 10255 を手動で閉じることを推奨します。詳細については、「関連するモニタリングコンポーネントの更新と kubelet の読み取り専用ポート 10255 の手動でのクローズ」をご参照ください。
ポート 10255 がアプリケーションで使用されているか、または使用される予定がある場合は、潜在的なセキュリティリスクを評価することを推奨します。Kubernetes 1.26 以降では、kubelet パラメーターを変更してポート 10255 を開くことができます。詳細については、「kubelet の読み取り専用ポート 10255 の手動でのオープン」をご参照ください。
影響範囲
Kubernetes 1.26 より前のバージョンを実行している ACK クラスターにおいて、kubelet がポート 10255 を使用しているか、または使用する予定がある場合に影響があります。
関連するモニタリングコンポーネントの更新と kubelet の読み取り専用ポート 10255 の手動でのクローズ
お使いのクラスターの Kubernetes バージョンが 1.26 より前の場合、関連するモニタリングコンポーネントを更新し、クラスター内の kubelet の読み取り専用ポート 10255 を手動で閉じることを推奨します。
注意事項
クラスターに仮想ノード (ack-virtual-node) が含まれている場合、または 1.26 より前の Kubernetes バージョンを実行する ACK サーバーレスクラスターを使用している場合は、チケットを送信し、ポート 10255 を閉じるようテクニカルサポートにご依頼ください。
手順
ACK コンソールにログインし、左側のナビゲーションペインで [クラスター] をクリックします。
[クラスター] ページで、管理するクラスターの名前をクリックし、左側のナビゲーションペインで の順に選択します。
関連コンポーネントを検索して更新します。
metrics-server を 0.3.9.4-ff225cd-aliyun 以降に更新します。クラスターに metrics-server がインストールされていない場合、操作は不要です。
ack-arms-prometheus がインストールされている場合は、コンポーネントを 1.1.15 以降に更新します。クラスターに ack-arms-prometheus がインストールされていない場合、操作は不要です。
説明この更新は、クラスターのモニタリングパフォーマンスを損なったり、アプリケーションに影響を与えたりすることはありません。
左側のナビゲーションペインで の順に選択します。ノードプールリストで、次の手順を実行して、すべてのクラスターノードでポート 10255 を閉じます。
ノードプールの [操作] 列で、 の順に選択します。
[カスタムパラメーター] セクションで、[readOnlyPort] を
0に設定し、[送信] をクリックしてポート 10255 を閉じます。
重要ポート 10255 を閉じる際、ノード上の kubelet 設定ファイル
/etc/kubernetes/kubelet-customized-args.confを手動で変更しないでください。ACK コンソールの kubelet 設定が、kubelet 設定ファイルを自動的に上書きします。
kubelet の読み取り専用ポート 10255 の手動でのオープン
ポート 10255 がアプリケーションで使用されているか、または使用される予定がある場合は、潜在的なセキュリティリスクを評価することを推奨します。Kubernetes 1.26 以降では、kubelet パラメーターを変更してポート 10255 を開くことができます。
手順
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターの名前をクリックし、左側のナビゲーションペインで の順に選択します。
ノードプールの [操作] 列で、次の手順を実行して、すべてのクラスターノードでポート 10255 を開きます。
対象のノードプールで を選択します。
[カスタムパラメーター] セクションで、[readOnlyPort] を
10255に設定し、[送信] をクリックしてポート 10255 を開きます。