

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 Amazon Inspector 掃描 Amazon EC2 執行個體 Amazon Inspector
<a name="scanning-ec2"></a>

 Amazon Inspector Amazon EC2 掃描會從 EC2 執行個體擷取中繼資料，然後再將中繼資料與從安全建議收集的規則進行比較。Amazon Inspector 會掃描執行個體是否有套件漏洞和網路連線能力問題，以產生[問題清單](https://docs.aws.amazon.com/inspector/latest/user/findings-types.html)。Amazon Inspector 每 12 小時執行一次網路連線能力掃描，並根據與 EC2 執行個體相關聯的掃描方法，根據可變節奏進行套件漏洞掃描。

 套件漏洞掃描可以使用以[代理程式為基礎](https://docs.aws.amazon.com/inspector/latest/user/scanning-ec2.html#agent-based)或[無代理](https://docs.aws.amazon.com/inspector/latest/user/scanning-ec2.html#agentless)程式掃描方法執行。這兩種掃描方法都會決定 Amazon Inspector 如何和何時從 EC2 執行個體收集軟體庫存以進行套件漏洞掃描。代理程式型掃描會使用 SSM 代理程式收集軟體庫存，而無代理程式掃描則會在 Amazon EBS 快照上使用 收集軟體庫存。

 Amazon Inspector 會使用您為帳戶啟用的掃描方法。當您第一次啟用 Amazon Inspector 時，您的帳戶會自動註冊混合掃描，這會使用兩種掃描方法。不過，您可以隨時[變更此設定](https://docs.aws.amazon.com/inspector/latest/user/scanning-ec2.html#scan-mode)。如需如何啟用掃描類型的資訊，請參閱[啟用掃描類型](https://docs.aws.amazon.com/inspector/latest/user/activate-scans.html)。本節提供有關 Amazon EC2 掃描的資訊。

**注意**  
 Amazon EC2 掃描不會掃描與虛擬環境相關的檔案系統目錄，即使它們是透過深度檢查佈建。例如，路徑`/var/lib/docker/`不會掃描，因為它通常用於容器執行時間。

## 代理程式型掃描
<a name="agent-based"></a>

代理程式型掃描會在所有符合資格的執行個體上使用 SSM 代理程式持續執行。對於代理程式型掃描，Amazon Inspector 會使用透過這些關聯安裝的 SSM 關聯和外掛程式，從您的執行個體收集軟體庫存。除了針對作業系統套件的套件漏洞掃描之外，Amazon Inspector 代理程式型掃描還可以透過 偵測 Linux 型執行個體中應用程式程式設計語言套件的套件漏洞[Linux 型 Amazon EC2 執行個體的 Amazon Inspector 深度檢查 Amazon EC2](deep-inspection.md)。

下列程序說明 Amazon Inspector 如何使用 SSM 收集庫存並執行代理程式型掃描：

1. Amazon Inspector 會在您的帳戶中建立 SSM 關聯，以從您的執行個體收集庫存。對於某些執行個體類型 (Windows 和 Linux)，這些關聯會在個別執行個體上安裝外掛程式以收集庫存。

1. Amazon Inspector 使用 SSM 從執行個體擷取套件庫存。

1. Amazon Inspector 會評估擷取的庫存，並針對任何偵測到的漏洞產生調查結果。

**注意**  
 對於代理程式型掃描，Amazon EC2 執行個體必須由相同 SSM 管理 AWS 帳戶。

### 符合資格的執行個體
<a name="agent-based-eligible"></a>

如果執行個體符合下列條件，Amazon Inspector 將使用代理程式型方法來掃描執行個體：
+ 執行個體具有支援的作業系統。如需支援的作業系統清單，請參閱 的**代理程式型掃描支援**欄[支援的作業系統：Amazon EC2 掃描](supported.md#supported-os-ec2)。
+ Amazon Inspector EC2 排除標籤掃描不會排除執行個體。
+ 執行個體由 SSM 管理。如需驗證和設定代理程式的說明，請參閱 [設定 SSM 代理程式](#configure-ssm)。

### 代理程式型掃描行為
<a name="ec2-scan-behavior"></a>

使用代理程式型掃描方法時，Amazon Inspector 會在下列情況下啟動 EC2 執行個體的新漏洞掃描：
+ 當您啟動新的 EC2 執行個體時。
+ 當您在現有的 EC2 執行個體 (Linux 和 Mac) 上安裝新軟體時。
+ 當 Amazon Inspector 將新的常見漏洞和暴露 (CVE) 項目新增至其資料庫，且該 CVE 與您的 EC2 執行個體 (Linux 和 Mac) 相關時。

Amazon Inspector 會在初始**掃描完成時更新 EC2 執行個體的上次**掃描欄位。 EC2 之後，當 Amazon Inspector 評估 SSM 庫存 （預設每 30 分鐘） 或執行個體重新掃描時，會更新**上次掃描**欄位，因為影響該執行個體的新 CVE 已新增至 Amazon Inspector 資料庫。

您可以從**帳戶管理**頁面上的執行個體索引標籤或使用 [https://docs.aws.amazon.com//inspector/v2/APIReference/API_ListCoverage.html](https://docs.aws.amazon.com//inspector/v2/APIReference/API_ListCoverage.html)命令，檢查上次掃描 EC2 執行個體是否有漏洞。

### 設定 SSM 代理程式
<a name="configure-ssm"></a>

為了讓 Amazon Inspector 使用代理程式型掃描方法偵測 Amazon EC2 執行個體的軟體漏洞，執行個體必須是 Amazon EC2 Systems Manager (SSM) 中的[受管執行個體](https://docs.aws.amazon.com//systems-manager/latest/userguide/managed_instances.html)。SSM 受管執行個體已安裝並執行 SSM 代理程式，且 SSM 具有管理執行個體的許可。如果您已經使用 SSM 來管理執行個體，則代理程式型掃描不需要其他步驟。

根據預設，SSM 代理程式會安裝在從某些 Amazon Machine Image (AMIs EC2 執行個體上。如需詳細資訊，請參閱*AWS Systems Manager 《 使用者指南*》中的[關於 SSM Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/prereqs-ssm-agent.html)。不過，即使已安裝 ，您仍可能需要手動啟用 SSM 代理程式，並授予 SSM 許可來管理您的執行個體。

下列程序說明如何使用 IAM 執行個體描述檔將 Amazon EC2 執行個體設定為受管執行個體。該程序也提供 *AWS Systems Manager 使用者指南*中更多詳細資訊的連結。

[https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSSMManagedInstanceCore.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSSMManagedInstanceCore.html) 是在連接執行個體描述檔時使用的建議政策。此政策具有 Amazon Inspector EC2 掃描所需的所有許可。

**注意**  
您也可以使用 SSM 預設主機管理組態，自動化所有 EC2 執行個體的 SSM 管理，而無需使用 IAM 執行個體設定檔。如需詳細資訊，請參閱[預設主機管理組態](https://docs.aws.amazon.com/systems-manager/latest/userguide/managed-instances-default-host-management.html)。在執行個體上設定 IAM 執行個體設定檔時，Amazon Inspector 會使用該設定檔，並忽略預設主機管理組態 (DHMC) 角色。

**設定 Amazon EC2 執行個體的 SSM**

1. 如果您的作業系統廠商尚未安裝，請安裝 SSM Agent。如需詳細資訊，請參閱[使用 SSM Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html)。

1. 使用 AWS CLI 來驗證 SSM 代理程式是否正在執行。如需詳細資訊，請參閱[檢查 SSM 代理程式狀態和啟動代理程式](https://docs.aws.amazon.com//systems-manager/latest/userguide/ssm-agent-status-and-restart.html)。

1. 授予 SSM 管理執行個體的許可。您可以透過建立 IAM 執行個體描述檔並將其連接至執行個體來授予許可。我們建議您使用 [https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSSMManagedInstanceCore.html](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSSMManagedInstanceCore.html)政策，因為此政策具有 Amazon Inspector 掃描所需的 SSM Distributor、SSM Inventory 和 SSM State Manager 的許可。如需建立具有這些許可的執行個體描述檔並將其連接至執行個體的指示，請參閱[設定 Systems Manager 的執行個體許可](https://docs.aws.amazon.com/systems-manager/latest/userguide/setup-instance-permissions.html#instance-profile-add-permissions)。

1. （選用） 啟用 SSM Agent 的自動更新。如需詳細資訊，請參閱[自動化 SSM Agent 的更新](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent-automatic-updates.html)。

1. （選用） 將 Systems Manager 設定為使用 Amazon Virtual Private Cloud (Amazon VPC) 端點。如需詳細資訊，請參閱[建立 Amazon VPC 端點](https://docs.aws.amazon.com/systems-manager/latest/userguide/setup-create-vpc.html)。

**重要**  
Amazon Inspector 需要您帳戶中的 Systems Manager State Manager 關聯，才能收集軟體應用程式庫存。`InspectorInventoryCollection-do-not-delete` 如果尚未建立關聯，Amazon Inspector 會自動建立名為 的關聯。  
Amazon Inspector 也需要資源資料同步，並在資源資料同步不存在`InspectorResourceDataSync-do-not-delete`時自動建立稱為 的資料同步。如需詳細資訊，請參閱*AWS Systems Manager 《 使用者指南*》中的[設定庫存的資源資料同步](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-datasync.html)。每個帳戶每個區域可以有一組資源資料同步數量。如需詳細資訊，請參閱 [SSM 端點和配額](https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm)中的資源資料同步數目上限 ( AWS 帳戶 每個區域）。

#### 建立用於掃描的 SSM 資源
<a name="ssm-resources"></a>

 Amazon Inspector 需要您帳戶中的多個 SSM 資源才能執行 Amazon EC2 掃描。當您第一次啟用 Amazon Inspector EC2 掃描時，會建立下列資源：

**注意**  
 如果在您的帳戶啟用 Amazon Inspector Amazon EC2 掃描時刪除任何這些 SSM 資源，Amazon Inspector 會在下次掃描間隔嘗試重新建立這些資源。

`InspectorInventoryCollection-do-not-delete`  
這是 Amazon Inspector 用來從 Amazon EC2 執行個體收集軟體應用程式庫存的 Systems Manager State Manager (SSM) 關聯。如果您的帳戶已有從 收集庫存的 SSM 關聯`InstanceIds*`，Amazon Inspector 將使用該關聯，而不是建立自己的關聯。

`InspectorResourceDataSync-do-not-delete`  
這是資源資料同步，Amazon Inspector 會用來將從 Amazon EC2 執行個體收集的庫存資料傳送至 Amazon Inspector 擁有的 Amazon S3 儲存貯體。 Amazon Inspector 如需詳細資訊，請參閱*AWS Systems Manager 《 使用者指南*》中的[設定庫存的資源資料同步](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-inventory-datasync.html)。

`InspectorDistributor-do-not-delete`  
這是 Amazon Inspector 用於掃描 Windows 執行個體的 SSM 關聯。此關聯會在您的 Windows 執行個體上安裝 Amazon Inspector SSM 外掛程式。如果不小心刪除外掛程式檔案，此關聯將在下一個關聯間隔重新安裝它。

`InvokeInspectorSsmPlugin-do-not-delete`  
這是 Amazon Inspector 用於掃描 Windows 執行個體的 SSM 關聯。此關聯可讓 Amazon Inspector 使用外掛程式啟動掃描，您也可以使用它來設定自訂間隔以掃描 Windows 執行個體。如需詳細資訊，請參閱[設定Windows執行個體掃描的自訂排程](windows-scanning.md#windows-scan-schedule)。

`InspectorLinuxDistributor-do-not-delete`  
 這是 Amazon Inspector 用於 Amazon EC2 Linux 深度檢查的 SSM 關聯。此關聯會在您的 Linux 執行個體上安裝 Amazon Inspector SSM 外掛程式。

`InvokeInspectorLinuxSsmPlugin-do-not-delete`  
這是 Amazon Inspector 用於 Amazon EC2 Linux 深度檢查的 SSM 關聯。此關聯可讓 Amazon Inspector 使用 外掛程式啟動掃描。

**注意**  
 當您停用 Amazon Inspector Amazon EC2 掃描或深度檢查時，`InvokeInspectorLinuxSsmPlugin-do-not-delete`不會再叫用 SSM 資源。

## 無代理程式掃描
<a name="agentless"></a>

 當您的帳戶處於混合掃描模式時，Amazon Inspector 會在合格執行個體上使用無代理程式掃描方法。混合掃描模式包括以代理程式為基礎的無代理程式掃描，並在您啟用 Amazon EC2 掃描時自動啟用。

 對於無代理程式掃描，Amazon Inspector 會使用 EBS 快照從您的執行個體收集軟體庫存。無代理程式掃描會掃描執行個體是否有作業系統和應用程式程式設計語言套件漏洞。

**注意**  
掃描 Linux 執行個體是否有應用程式程式設計語言套件漏洞時，無代理程式方法會掃描所有可用的路徑，而以代理程式為基礎的掃描只會掃描您指定做為 一部分的預設路徑和其他路徑[Linux 型 Amazon EC2 執行個體的 Amazon Inspector 深度檢查 Amazon EC2](deep-inspection.md)。這可能會導致相同的執行個體有不同的問題清單，取決於是使用以代理程式為基礎的方法還是無代理程式方法進行掃描。

下列程序說明 Amazon Inspector 如何使用 EBS 快照來收集庫存並執行無代理程式掃描：

1. Amazon Inspector 會建立連接至執行個體之所有磁碟區的 EBS 快照。當 Amazon Inspector 使用它時，快照會存放在您的帳戶中，並以 `InspectorScan`標記為標籤索引鍵，並以唯一的掃描 ID 做為標籤值。

1. Amazon Inspector 會使用 [EBS 直接 APIs](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-accessing-snapshot.html) 從快照擷取資料，並評估它們是否有漏洞。系統會針對任何偵測到的漏洞產生問題清單。

1. Amazon Inspector 會刪除在帳戶中建立的 EBS 快照。

### 符合資格的執行個體
<a name="agentless-eligible"></a>

 如果執行個體符合下列條件，Amazon Inspector 將使用無代理程式方法來掃描執行個體：
+  執行個體具有支援的作業系統。如需詳細資訊，請參閱 的 >代理程式型掃描支援欄[支援的作業系統：Amazon EC2 掃描](supported.md#supported-os-ec2)。
+  執行個體的狀態為 `Unmanaged EC2 instance`、 `Stale inventory`或 `No inventory`。
+  執行個體由 Amazon EBS 支援，並具有下列其中一種檔案系統格式：
  + `ext3`
  + `ext4`
  + `xfs`
+  透過 Amazon EC2 排除標籤進行掃描時，不會排除執行個體。
+  連接至執行個體的磁碟區數目小於 8，且合併大小小於或等於 1200 GB。

### 無代理程式掃描行為
<a name="agentless-ec2-scan-behavior"></a>

當您的帳戶設定為**混合掃描**時，Amazon Inspector 會每 24 小時對符合資格的執行個體執行無代理程式掃描。Amazon Inspector 每小時會偵測和掃描新合格的執行個體，其中包括不含 SSM 代理程式的新執行個體，或狀態已變更為 的預先存在執行個體`SSM_UNMANAGED`。

Amazon Inspector 會在無代理**程式掃描後掃描從執行個體擷取的快照時，更新 Amazon EC2 執行個體的上次**掃描欄位。 Amazon EC2 

您可以從帳戶管理頁面上的執行個體索引標籤或使用 [https://docs.aws.amazon.com//inspector/v2/APIReference/API_ListCoverage.html](https://docs.aws.amazon.com//inspector/v2/APIReference/API_ListCoverage.html)命令，檢查上次掃描 EC2 執行個體是否有漏洞。

## 管理掃描模式
<a name="scan-mode"></a>

您的 EC2 掃描模式會決定 Amazon Inspector 在帳戶中執行 EC2 掃描時將使用哪些掃描方法。您可以從**一般**設定下的 EC2 掃描設定頁面檢視帳戶的掃描模式。獨立帳戶或 Amazon Inspector 委派管理員可以變更掃描模式。當您將掃描模式設定為 Amazon Inspector 委派管理員時，會為您組織中的所有成員帳戶設定掃描模式。Amazon Inspector 具有下列掃描模式：

**代理程式型掃描** – 在此掃描模式中，Amazon Inspector 只會在掃描套件漏洞時使用代理程式型掃描方法。此掃描模式只會掃描您帳戶中的 SSM 受管執行個體，但有利於提供持續掃描以回應新的 CVE 或執行個體的變更。代理程式型掃描也為符合資格的執行個體提供 Amazon Inspector 深度檢查。這是新啟用帳戶的預設掃描模式。

**混合掃描** – 在此掃描模式中，Amazon Inspector 會使用代理程式型和無代理程式方法的組合來掃描套件漏洞。對於已安裝並設定 SSM 代理程式的合格 EC2 執行個體，Amazon Inspector 會使用以代理程式為基礎的方法。對於未受 SSM 管理的合格執行個體，Amazon Inspector 會將無代理程式方法用於合格的 EBS 後端執行個體。

**變更掃描模式**

1.  使用您的登入資料登入，然後開啟位於 https：//[https://console.aws.amazon.com/inspector/v2/home](https://console.aws.amazon.com/inspector/v2/home) 的 Amazon Inspector 主控台。

1. 使用頁面右上角的 AWS 區域 選取器，選取您要變更 EC2 掃描模式的區域。

1. 在側邊導覽面板**的一般設定**下，選取 **EC2 掃描設定**。

1. 在**掃描模式**下，選取**編輯**。

1. 選擇掃描模式，然後選取**儲存變更**。

## 從 Amazon Inspector 掃描排除執行個體
<a name="exclude-ec2"></a>

 您可以使用 `InspectorEc2Exclusion`金鑰標記這些Windows執行個體，從 Amazon Inspector 掃描中排除 Linux和 執行個體。標籤鍵不區分大小寫。包含標籤值是選用的。如需新增標籤的詳細資訊，請參閱[標記您的 Amazon EC2 資源](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html)。

 當您標記要從 Amazon Inspector 掃描排除的執行個體時，Amazon Inspector 會將執行個體標記為已排除，而不會為其建立問題清單。不過，Amazon Inspector SSM 外掛程式將繼續被叫用。若要防止叫用外掛程式，您必須[允許存取執行個體中繼資料中的標籤](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/work-with-tags-in-IMDS.html#allow-access-to-tags-in-IMDS)。

**注意**  
 您不需要為排除的執行個體付費。

 此外，您可以透過標記用於使用 標籤加密磁碟區的 AWS KMS 金鑰，從無代理程式掃描中排除加密的 EBS 磁碟區`InspectorEc2Exclusion`。如需詳細資訊，請參閱[標記金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys)。

## 支援的作業系統
<a name="supported-instance"></a>

Amazon Inspector 會掃描支援的 Mac、Windows 和 Linux 執行個體是否有作業系統套件中的漏洞。對於 Linux 執行個體，Amazon Inspector 可以使用 產生應用程式程式設計語言套件的問題清單[Linux 型 Amazon EC2 執行個體的 Amazon Inspector 深度檢查 Amazon EC2](deep-inspection.md)。對於 Mac 和 Windows 執行個體，只會掃描作業系統套件。

如需有關支援的作業系統的資訊，包括哪些作業系統可以在不使用 SSM 代理程式的情況下掃描，請參閱 [Amazon EC2 執行個體狀態值支援的作業系統：Amazon EC2 掃描](supported.md#supported-os-ec2)。