Azure VMの拡張機能 Agent for Cloud Workload Protection (Linux) を試す

Azure上のLinux環境のマルウェア対策どうしようかなと考えていたときに、VMの拡張機能で「Agent for Cloud Workload Protection (Linux)」があることを知りました。

[Agent for Cloud Workload Protection (Linux)](https://azuremarketplace.microsoft.com/ja-jp/marketplace/apps/Symantec.SymantecCloudWorkloadProtectionAgentForLinux?tab=Overview)

検証してみたので手順を残しておきます。

# 環境
* Ubuntu Server 16.04 LTS
    * 執筆時点では16.04 LTSがサポートされる最新バージョンです。17.10/18.04に拡張機能でインストールしようとしてもうまくいかないので注意してください。

# Symantecアカウント取得
拡張機能として追加するためには、Cloud Workload Protectionポータル画面からキー情報を取得する必要があります。
無料体験版を登録して検証したいと思います。

* [無料体験版ページ](https://www.symantec.com/ja/jp/products/cloud-workload-protection
) にいってアカウントを作成します。

* 確認メールが届くので記載されたリンクをクリックするとポータル画面にいくことができます。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/9403be0e-a6f2-a023-7328-46bb527fc72d.png)
<br>

[CWPポータル](https://scwp.securitycloud.symantec.com/webportal/)

# Azureと接続する
* 左バーの[設定]を選択し、[Azure接続]を選択します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/5a841f63-6cc9-adca-4809-4d5fdb1ba622.png)

* +ボタンを押します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/ab49b2bc-5511-392a-b90c-944c913f3152.png)

* 設定画面が出てくるのでここにAzureサブスクリプションの情報を入れていきます。ディレクトリIDなどの情報は、事前に [サービスプリンシパルを取得](https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/resource-group-create-service-principal-portal#get-application-id-and-authentication-key) しておきましょう。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/9cf66533-34f3-1bb3-a294-e94e216bf303.png)

* しばらくすると、こんな感じでAzureサブスクリプションに作成されているVMが認識されます。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/d439ac50-641d-bdf4-0e74-ac66af841dd0.png)

# Customer ID取得
拡張機能インストール時に指定するCustomer ID等を取得します。

* [設定]から[ダウンロード]を選択します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/79ba1a5a-1ee8-c629-9d51-2b150cece247.png)

* [表示]を選択します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/9738165f-54e6-680c-f7f8-f5775579515e.png)

* [カスタマーID]、[ドメインID]、[カスタマーシークレットキー]をメモっておきます。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/b5bdb6d4-52a1-60dc-1069-a40fa9e04635.png)

# 拡張機能からAgentをインストールする
ここからはAzureポータル画面からの操作です。

* 対象のVMで[拡張機能]を選択します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/19b6805e-ff5c-d114-07ee-23d638323a00.png)

* [追加]を選択し、[Agent for Cloud Workload Protection (Linux)]を選択します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/0ffcb8d4-9ead-ac0f-bd70-e1e963e38651.png)

* 先程メモした[カスタマーID]、[ドメインID]、[カスタマーシークレットキー]を入力し、[OK]を選択します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/7e07aba9-ab49-b058-1d88-80486692a9bd.png)

* しばらく経つと「SCWPAgentForLinux」がインストールされます。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/8cde0643-b111-9f3d-95dc-8369f59b5a05.png)

* Cloud Workload Protectionポータルに戻ってみると、エージェントが認識されていることが分かります。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/ccd26928-a9c6-ab16-1d4e-59499d0c4b75.png)

# 動作確認
Eicarファイルで試してみます。

* UbuntuサーバにSSHでログインしてEicarファイルをダウンロードします。

```
# wget http://www.eicar.org/download/eicar.com
```

* CWPポータルに戻り、該当インスタンスを選択し、[マルウェア対策スキャン]を実行します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/925221be-fb30-1f70-4d19-6f040e8408d9.png)

* [今すぐスキャン]を実行します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/4085369f-671c-12d5-b81d-ee1c44fc44a6.png)

* ジョブの結果を見てみるとマルウェアが1件検出されています。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/180335/c0bc69aa-bd2b-1320-deee-fe5df6a17ff2.png)

* 実際にサーバ上でも確認してみると、eicarファイルは削除されていました。

# まとめ
とりあえず手動スキャンさせるところまでやってみました。
CWPポータルからサーバの状態を一元管理できるので、対象サーバが増えるほど効果を発揮しそうです。
VM拡張機能からセットアップできるのがいいですね！