Alibaba Cloud 上のサーバーレス環境にビジネスをデプロイする場合、Security Center のサーバーレスセキュリティ機能を使用してサーバーレスアセットを保護できます。この機能は、一般的な脅威の検出、脆弱性のスキャン、ベースラインリスクのチェックを行います。このトピックでは、サーバーレスアセットを Security Center に接続し、セキュリティ保護を有効にする方法について説明します。
特徴
サポートされているアセットインスタンス
マネージド ACK クラスター、専用 ACK クラスター、および ACK Serverless クラスターから作成された Elastic Container Instance (ECI)。
Container Compute Service (ACS) から作成された ECI インスタンス。
Serverless App Engine (SAE) インスタンス。
重要安定性の理由から、インスタンスタイプが 0.5 コア以下の SAE インスタンスは接続またはスキャンできません。
Platform for AI (PAI) の Lingjun リソース。
サポートされているセキュリティ機能
Security Center は、サーバーレスアセットに対して次のセキュリティ機能を提供します。
脅威検出: バックドア (WebShell) ファイル、不審なネットワーク接続、異常なプロセス動作など、サーバーレスアセットの一般的なセキュリティ脅威を検出して処理します。サポートされているチェックの詳細については、「CWPP (クラウドワークロード) セキュリティアラートの概要」をご参照ください。
脆弱性スキャン: ページで、すでにサポートされている脆弱性 の下の数字をクリックして 検出可能な脆弱性のリスト パネルを開き、サポートされている脆弱性のリストを表示できます。
アプリケーションの脆弱性については、スキャンのみがサポートされており、修正はサポートされていません。アプリケーションの脆弱性は、サーバーにインストールされているソフトウェアをスキャンすることによって検出されるリスクです。セキュリティリスクを排除するには、脆弱性の詳細で提供される修正の提案に基づいて、ソフトウェアアプリケーションの構成を手動でアップグレードまたは変更する必要があります。

ベースラインリスクチェック: サーバーレスアセットのベースラインリスクを検出して処理します。例としては、Kubernetes (ECI) Pod General International Security Best Practices Baseline のコンテナーの root 実行の制限およびカーネル機能を持つコンテナーの禁止チェックが含まれます。サポートされているベースラインチェックの詳細については、「ベースラインチェック項目」をご参照ください。
Security Center は、接続されたサーバーレスアセットをコンテナーランタイムのステータスに基づいて異なるインスタンスタイプに分類します。サポートされているセキュリティ機能はインスタンスタイプによって異なります。
インスタンスタイプ | サポートされているセキュリティ機能 |
Elastic Container Instance |
|
RunD コンテナーインスタンス | 脅威検出 |
課金
2024 年 7 月 31 日 (UTC + 08:00) から、サーバーレスセキュリティ保護機能のパブリックプレビューは終了し、無料トライアルは利用できなくなります。サーバーレスセキュリティ保護機能を引き続き使用するには、コンソールでサーバーレスアセットの従量課金を有効にする必要があります。詳細については、このトピックの「2. 従量課金を有効にする」をご参照ください。
課金開始
サーバーレスアセットを有効にして権限を付与すると、サーバーレス保護機能は、月間の累積使用量に基づく従量課金の段階的価格設定モデルを使用して課金されます。
課金方法: 料金は、承認されたサーバーコア数 × 実際の保護期間の数式で計算されます。保護期間は秒単位で測定され、クライアントがオンラインの場合にのみ計算されます。
課金サイクル: 請求は毎日決済され、翌日 (T+1) に生成されます。
価格: 月間の累積使用量に基づいて段階的価格設定モデルが使用されます。次の表に価格の詳細を示します。
重要最初の月の場合、課金サイクルは機能を有効にした日からその月の終わりまでです。2 か月目以降、課金サイクルは暦月 (月の初日から末日まで) です。
月間累積使用量 (コア秒、課金サイクルごと)
価格 (USD/コア/秒)
課金数式 (U はコア秒単位の日次使用量)
Tier 1: 0 ~ 200,000,000
0.000003
0.000003 × U (USD)
Tier 2: 200,000,001 ~ 1,000,000,000
0.000002
0.000002 × (U - 200,000,000) + 0.000003 × 200,000,000 (USD)
Tier 3: 1,000,000,001 ~ 9,999,999,999,999
0.0000015
0.0000015 × (U - 1,000,000,000) + 0.000002 × 800,000,000 + 0.000003 × 200,000,000 (USD)
たとえば、アカウントに Security Center クライアントがアタッチされたサーバーレスアセット用の 20,000 コアがある場合、日次料金は次のように計算されます。
課金サイクルの初日、月間累積使用量は 20,000 × 86,400 = 1,728,000,000 コア秒です。0 ~ 200,000,000 コア秒の使用量はTier 1 に分類されます。200,000,001 ~ 1,000,000,000 コア秒の使用量はTier 2 に分類されます。1,000,000,001 ~ 1,728,000,000 コア秒の使用量はTier 3 に分類されます。
課金は各 Tier の単価に基づいて段階的に行われます。日次課金数式は次のとおりです: 0.000003 (Tier 1 単価) × 200,000,000 + 0.000002 (Tier 2 単価) × 800,000,000 + 0.0000015 (Tier 3 単価) × (1,728,000,000 - 1,000,000,000) = 3,292 (USD)。
2 日目から現在の課金サイクルの終わり (月末) まで、料金はTier 3 の単価に基づいて計算されます。
日次課金数式は次のとおりです: 0.0000015 (Tier 3 単価) × (20,000 × 86,400) = 2,592 (USD)。
課金停止
次のシナリオでは、Alibaba Cloud は承認されたサーバーレスアセットのセキュリティ検出と課金を直ちに停止します。
すべてのサーバーレスアセットの課金を停止する:
Security Center コンソールの [概要] ページで、[従量課金サービス] エリアにある [サーバーレスアセット] のスイッチをオフにします。
Security Center コンソールの ページの上部にある [サービスの停止] をクリックします。
Alibaba Cloud アカウントに支払い遅延があり。
特定のサーバーレスアセットの課金を停止する:
Security Center コンソールの ページで、特定のアセットの権限付与をデタッチできます。詳細については、このトピックの「3.2. アセットの権限付与のアタッチまたはデタッチ」をご参照ください。
1. ECI Pod に Security Center クライアントをインストールして起動する
マネージド ACK クラスター、専用 ACK クラスター、ACK Serverless クラスター、および ACS クラスターから作成された ECI アセットの場合、Security Center が提供するサーバーレスセキュリティ保護機能を使用するには、Security Center クライアントをインストールして起動する必要があります。
次の方法で ECI Pod に Security Center クライアントをインストールして起動できます。
ACK Serverless クラスターの ECI Pod でクライアントを起動する
Container Service for Kubernetes (ACK) コンソールで、ターゲットクラスターの管理ページに移動します。左側のナビゲーションウィンドウで、 を選択します。[YAML から作成] をクリックします。YAML テンプレートで、spec > template > metadata の下に annotations パラメーターを追加し、k8s.aliyun.com/eci-aliyundun-enabled: "true" に設定します。
以下は YAML テンプレートのサンプルです。
apiVersion: apps/v1 # 1.8.0 より前のバージョンでは apps/v1beta1 を使用
kind: Deployment
metadata:
name: nginx-deployment-basic
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
annotations:
k8s.aliyun.com/eci-aliyundun-enabled: 'true'
labels:
app: nginx
spec:
# nodeSelector:
# env: test-team
containers:
- name: nginx
image: nginx:1.7.9 # これを正確な <image_name:tags> に置き換えてください
ports:
- containerPort: 80
resources:
limits:
cpu: "500m"イメージからリソースを作成する場合、[高度な構成] セクションに Pod アノテーション k8s.aliyun.com/eci-aliyundun-enabled=true を追加できます。リソースの作成方法の詳細については、「イメージからステートレスアプリケーションを作成する」をご参照ください。

マネージドまたは専用 ACK クラスターの ECI Pod でクライアントを起動する
マネージドまたは専用 ACK クラスターの ECI Pod でクライアントを起動する
ACK コンソールにログインし、クラスターの管理ページに移動し、[ack-virtual-node] コンポーネントをデプロイして Pod を ECI にスケジュールします。詳細については、「Pod を ECI にスケジュールする」をご参照ください。
ACK コンソールで、クラスター管理ページの左側のナビゲーションウィンドウで、 を選択します。次に、[YAML から作成] をクリックします。YAML テンプレートで、
metadataの下にannotationsパラメーターを追加し、k8s.aliyun.com/eci-aliyundun-enabled: "true"に設定します。spec > containersの下にenv環境変数を構成し、コンテナータイプをECI_CONTAINER_TYPE = sidecarに設定します。以下は YAML テンプレートのサンプルです。
apiVersion: v1 kind: Pod metadata: name: test-aegis-alinux2-lifsea-x86 labels: eci: "true" annotations: k8s.aliyun.com/eci-aliyundun-enabled: "true" spec: containers: - name: sidecar image: registry-vpc.cn-shanghai.aliyuncs.com/eci_open/centos:7 command: - /bin/sh - -c args: - sleep inf env: - name: ECI_CONTAINER_TYPE value: sidecar - name: nginx image: registry-vpc.cn-shanghai.aliyuncs.com/eci_open/centos:7 command: - /bin/sh - -c args: - sleep inf
ACS クラスターの ECI Pod でクライアントを起動する
Container Compute Service コンソールで、ターゲットクラスターの管理ページに移動します。左側のナビゲーションウィンドウで、 を選択します。[YAML から作成] をクリックします。YAML テンプレートで、spec > template > metadata の下に annotations パラメーターを追加し、security.alibabacloud.com/aliyundun-enabled: 'true' に設定します。詳細については、「ACS Pod の概要」および「YAML ファイルからリソースを作成する」をご参照ください。
以下は YAML テンプレートのサンプルです。
apiVersion: apps/v1 # 1.8.0 より前のバージョンでは apps/v1beta1 を使用
kind: Deployment
metadata:
name: nginx-deployment-basic
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
alibabacloud.com/compute-class: general-purpose
alibabacloud.com/compute-qos: default
annotations:
security.alibabacloud.com/aliyundun-enabled: 'true'
spec:
# nodeSelector:
# env: test-team
containers:
- name: nginx
image: anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6 # これを正確な <image_name:tags> に置き換えてください
ports:
- containerPort: 80
resources:
limits:
cpu: "500m"イメージからリソースを作成する場合、[高度な構成] セクションに Pod アノテーション security.alibabacloud.com/aliyundun-enabled=true を追加できます。リソースの作成方法の詳細については、「イメージからリソースを作成する」をご参照ください。

2. 従量課金を有効にする
購入時にサーバーレスアセット保護を有効にする
無料版のユーザーおよび無料トライアル中のユーザーは、従量課金の Security Center インスタンスを購入することで、サーバーレスアセット保護を有効にできます。
Security Center 購入ページに移動し、Alibaba Cloud アカウントでログインします。
購入ページで、[課金方法] を [従量課金] に設定します。[サーバーレスアセット] で、[はい] を選択します。
[オンデマンドバインディングのカスタマイズ] をクリックします。[権限付与管理] ダイアログボックスで、[すべてバインド] または [カスタムバインディング] を選択して、ターゲットのサーバーレスアセットの保護権限を設定できます。
重要カスタムバインディングを設定しない場合、デフォルトですべてのアセットがバインドされ、新しいアセットには権限付与が自動的にアタッチされます。

Security Center 利用規約を読んで選択し、[注文する] をクリックします。
Security Center は、Alibaba Cloud アカウントで実行中の状態にあるサーバーレスアセット (ECI インスタンスおよび SAE アプリケーション) に自動的に接続します。その後、[権限付与管理] の構成に基づいて、ターゲットのサーバーレスアセットに権限付与をアタッチします。
既存のインスタンスに対してサーバーレスアセット保護を有効にする
Security Center の有料版 (ウイルス対策、プレミアム、エンタープライズ、またはアルティメット) を購入している場合は、サーバーレスアセット保護機能を有効にできます。
Security Center コンソールにログインします。
左側のナビゲーションウィンドウで、 を選択します。コンソールの左上隅で、保護するアセットが配置されているリージョンを選択します: 中国 または 全世界 (中国を除く)。
[サーバーレスアセット] ページで、[今すぐ有効にする] をクリックします。
[概要] ページの右側にある [従量課金サービス] エリアで、サーバーレスアセットスイッチをオンにすることもできます。
確認ダイアログボックスで、[オンデマンドバインディングのカスタマイズ] をクリックしてターゲットのサーバーレスアセットの保護権限を設定し、[OK] をクリックします。
重要カスタムバインディングを設定しない場合、サーバーレスアセットは次のロジックに基づいて承認されます。
この機能を初めて有効にする場合、デフォルトですべてのアセットがバインドされ、新しいアセットには権限付与が自動的にアタッチされます。
以前にこの機能を有効にしたことがある場合、以前に承認されたサーバーレスアセットに権限付与が自動的にアタッチされます。前回 ECI インスタンスまたは SAE アプリケーションが承認されなかった場合、デフォルトですべてのアセットがバインドされ、新しいアセットには権限付与が自動的にアタッチされます。
アカウントに支払い遅延があり、支払い遅延が発生する前にサーバーレスアセット機能が有効になっていた場合、支払い遅延を解消すると、以前に承認されたサーバーレスアセットが自動的にバインドされます。
確認ダイログボックスで、Security Center (従量課金) 利用規約を読み、同意しますを選択し、[今すぐ有効にする] をクリックします。
3. 承認済みアセットの管理
権限付与のアタッチ: サーバーレスセキュリティ保護機能を使用するには、Security Center クライアントがオンラインであり、サーバーレスアセットに権限付与がアタッチされている必要があります。
権限付与のデタッチ: 保護を必要としないサーバーレスアセットから権限付与をデタッチできます。
3.1. 最新アセットの同期
サーバーレスアセットの保護を有効にした後、既存および新規の両方のアセットについて最新のサーバーレスアセット情報を同期する必要があります。これにより、保護したいアセットに Security Center クライアントがインストールされ、実行されていることが保証されます。
Security Center コンソールにログインします。
ページで、[最新アセットの同期] をクリックします。
Security Center は最新のサーバーレスアセット情報をプルし、アセットリストをリフレッシュします。
説明最新のアセット情報の同期には約 1 分かかります。お待ちください。

ページで、アセットリストからターゲットのサーバーレスアセットを見つけ、[クライアント] 列のアイコンの色を確認します。

緑: クライアントはオンラインで実行中です。権限付与をアタッチした後、サーバーレスセキュリティ保護機能を使用できます。
灰色: クライアントがインストールされていない、ネットワークが不安定である、またはその他の理由でクライアントはオフラインです。権限付与をアタッチしても、セキュリティ保護機能はサポートされません。
詳細については、このトピックの「1. ECI Pod に Security Center クライアントをインストールして起動する」をご参照ください。対応するアセットの Security Center クライアントを確認してインストールし、アセットインスタンスを再起動します。
サーバーレスアセットインスタンスを作成または再起動した後、 ページに移動し、[最新アセットの同期] をクリックして最新のアセット情報を Security Center に同期します。
3.2. アセットの権限付与のアタッチまたはデタッチ
ターゲットアセットインスタンスで Security Center クライアントを起動し、オンラインになった後、アセットに権限付与をアタッチしてサーバーレスセキュリティ保護機能を使用できます。機能を有効にしたときにすべてのアセットをバインドすることを選択した場合、保護を必要としないアセットから権限付与をデタッチすることもできます。
ページで、アセットリストの上にある [バインドされていないインスタンス] の下の [権限付与管理] をクリックします。
[権限付与管理] ダイアログボックスで、操作タイプ ([アタッチ] または [デタッチ]) を選択します。プロンプトに従ってターゲットのサーバーレスアセットを選択し、[OK] をクリックします。
新しいサーバーレスアセットに自動的に権限付与をアタッチするには、[新しいアセットに自動的に権限付与をアタッチ] を選択します。

4. セキュリティリスクの表示と処理
サーバーレスアセットが Security Center に接続され、権限付与がアタッチされると、Security Center はインスタンスのリアルタイムのセキュリティ脅威検出を開始します。脆弱性スキャンとベースラインリスクチェックは、それぞれのスキャンサイクルに従って実行されます。[脆弱性管理] または [ベースラインチェック] ページに移動して、最新のチェック時間を確認できます。
次のステップでは、サーバーレスアセットのセキュリティリスクステータスを表示する方法について説明します。
ページで、アセットリストからターゲットアセットを見つけます。リスクステータス 列に [リスクあり] と表示されている場合、アセットでアラート、脆弱性、またはベースラインリスクが検出されたことを意味します。
ターゲットアセットの名前をクリックするか、そのアセットの [アクション] 列にある 表示 をクリックして、詳細なリスク情報を表示します。
セキュリティアラート数、脆弱性リスクの数、または ベースラインリスク数 カードをクリックして、対応するリスク項目のリストを表示します。

セキュリティアラートの処理。
ターゲットアラートの [アクション] 列にある 詳細 をクリックして詳細を表示し、それが実際のリスクであるかどうかを判断します。
評価後、アラートのアクション列にある 処理 をクリックします。実際のリスクである場合は、隔離を選択します。アラートを処理する必要がないか、無視できる場合は、ホワイトリストに追加したり、無視したり、手動で処理済みとしてマークしたりできます。
脆弱性リスクの処理。
脆弱性リスクの数 カードをクリックして、アセットで検出された脆弱性を表示します。
脆弱性は、ハッカーによって悪用される可能性のある弱点です。検出されたすべての脆弱性を速やかに処理することをお勧めします。アプリケーションの脆弱性に対するワンクリック修正はサポートされていません。脆弱性の詳細にある指示に基づいて手動で修正することをお勧めします。詳細については、「脆弱性の表示と処理」をご参照ください。
ベースラインリスクの処理。
ベースラインリスク数 カードをクリックして、アセットで検出されたベースラインリスクを表示します。ターゲットリスクのアクション列にある 詳細 をクリックして、その詳細と強化の提案を表示します。ベースラインリスクを処理するかどうかを決定します。決定に基づいて、リスクを処理するか、ホワイトリストに追加できます。
Security Center は、一部のベースラインリスク項目のみの修正をサポートしています。リスク詳細ページの [リスク処理] リストに [修正] ボタンが表示されている場合、そのリスク項目は Security Center で修正できることを意味します。その後、Security Center で直接ベースラインリスクを修正できます。