IBM Cloud: Palo Alto (IDS/IPS) を利用してみる

# はじめに

IBM CloudではIDS/IPSとして、Palo Alto社のVM-Seriesをデプロイすることができます。
本記事では、設定手順を記載いたします。

- VM-Series のオーダー
- デバイスの初期設定
- ライセンス登録
- ポリシーの設定



# VM-Series のオーダー
IBM Cloudポータルのカタログより、「VM-Series Firewall - BYOL」オーダー画面へ遷移します。以下、オーダー画面のリンクです。 
- [IBM Cloud ポータル VM-Series 製品ページ](https://cloud.ibm.com/catalog/content/ibmcloud-vmseries-1.9-6470816d-562d-4627-86a5-fe3ad4e94b30-global)

デプロイはIBM Cloudの Infrastracture As a Code サービスである**IBM Cloud Schematics**により実行されます。
オーダーに必要な情報を入力します。


|Configure your Workspace|
|項目|値 | 備考 |
|---|---|----|
|*Name* |レイヤー 3 |  サーバー名とは異なります。任意の文字列で構いません。|
|*Resource Group*    |default | Schematics Workspaceに付与するリソース・グループを指定します|
|*Location*  |eu-de  |Schematicsを実行する任意のリージョンを指定します|
|*Tag*       |prod, dev     |(任意) 付与するタグを指定します|



|Set Input Variable
|項目               |値                | 備考 |
|---|---|----|
|*image_name*         |  pa-vm-kvm-9-1-3-1  |イメージ名を指定します。初めはデフォルト値が入力されており、バージョン要件がなければ変更不要です。 
|*region*             |jp-tok (東京)またはjp-osa(大阪) | デプロイするリージョンを入力します
|*ssh_key_name*       |dsp-sshkey           |sshログインの際に使用する、IBM Cloudに登録されたsshキー名を入力します。  
|*subnet_id1*         |xxx-xxx-xxx          |サブネット詳細画面よりコピーします     |*subnet_id2*         |xxx-xxx-xxx          |サブネット詳細画面よりコピーします     
|*vnf_instance_name*  |vm-series-byol-vsi   | 任意のサーバー名を入力します
|*vnf_profile*        |bx2-8x32             |  サーバースペックを入力します。    
|*vnf_security_group* | management-sg       |Management interfaceに紐付けるセキュリティ・グループ名を入力します  

<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/855ab09e-fca6-af89-b215-042895d076a5.png width=70%>

 
インストールをクリックすると、作成が開始されます。

![pa-install-comp.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/9ff95136-a80d-9145-14f4-abe2b078cd59.png)


作成が完了すると、インターフェースが２つ作成されます。それぞれIP Spoofingを有効化する必要があります。ペンマークをクリックし変更します。

![enable-ipspoofing.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/f718ec06-6e34-281b-4952-106cf0725034.png)


# デバイスの初期設定

### ログイン設定
 management IPアドレス(eth0)と疎通可能な環境にて、Webブラウザよりmanagement IPアドレスを入力して管理ポータルへアクセスします。

![pa-web-login.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/ea858970-47b9-b283-35ac-2c39cc9f20bc.png)


ログイン画面が表示されますので、下記の初期ID/Password でログインします。

* Username: admin
* Password: admin

![pa-web-dashboard.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/5a9f4964-d5d6-0ba5-400e-d410af322e68.png)


パスワード変更を求められるので、任意のパスワードに変更します。


次に、タイムゾーン・表示言語を設定します。
「Device」→ 「Setup」→「Management」をクリックし、「General Settings」の歯車をクリックします。

![1-set-lang-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/10f06bbc-d297-9a64-89e9-6fdde2d28e5f.png)


「Time Zone」「Locale」をそれぞれ変更し、「OK」をクリックします。

-  Time Zone: Japan
-  Locale: ja

<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/806e24ca-1ff7-7ef7-065c-dbbc27659fb8.png width=70%>


表示言語が変更されない場合は右下の「Language」より「日本語」選択します。

![1-set-lang-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/6c77afd4-25ca-f30e-81f2-aea3dcb5d946.png)


DNS・NTPサーバーを設定します。
「サービス」をクリックし、「サービス」の歯車をクリックしてDNSサーバー・NTPサーバーを設定します。
![1-set-dns-ntp.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/ddfa33d8-6e01-8afb-94c9-b33e34a64163.png)


DNSサーバーのIPアドレスを指定します。
IBM Cloud では下記の２つのDNSサーバーを提供しています。

- 161.26.0.10
- 161.26.0.11

![1-set-dns.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/b4af34fa-7c68-1055-23c9-193f338ab120.jpeg)


NTPサーバーのIPアドレスを指定します。 
IBM Cloud では下記のNTPサーバーを提供しています。
- 161.26.0.6

![1-set-ntp.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/255e837d-a152-fdb6-fb59-23e852abc90d.jpeg)


インターフェースを設定します。
「ネットワーク」→ 「Ethernet」をクリックし、「Enternet1/1」をクリックします。

|項目|値 |
|---|---|
|*インターフェース* |レイヤー 3  
|*仮想ルーター*    |default 
|*IPv4*  |タイプ  |スタティック
|IP     |10.244.1.11/24 (IPアドレスを追加)


zoneを設定します。
「ネットワーク」→「zone」をクリックし、左下「追加」をクリックします。
以下の項目を入力し、「OK」をクリックします。

|項目 |値| 備考|
|---|---|----|
|*名前* |  private-zone | 任意の名前を入力します
|*タイプ* | レイヤー3 | 
|*インターフェース* | ethernet1/1 | 追加をクリックし、作成したインターフェースを選択します


仮想ルーターを設定します。
「ネットワーク」→ 「仮想ルーター」をクリックし、「default」をクリックします。
「スタティックルート」をクリックし、左下「追加」をクリックします。
以下の項目を入力し、「OK」をクリックします。

|項目 |値 | 備考  
|---|---|----|
|*名前* |  comm-all | 任意のルーティング名前を入力します
|*宛先* | 0.0.0.0/0 | 全ての通信を作成したインターフェース経由にします
|*インターフェース* | ethernet1/1 | 作成したインターフェースを選択します
|*ネクストホップ* | IPアドレス、10.244.1.1 | 通信用インターフェースのゲートウェイIPアドレスを入力します


以上の設定変更を反映するため、コミットします。
右上の「コミット」をクリックし、表示された変更点を確認したのち「コミット」をクリックします。

![commit.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/9d5fb6fb-20a2-f064-b61a-50ff235d87c5.png)


続いてIBM Cloudポータルより、リブートを実行します。

![reboot.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/63311d08-56e4-cf5f-dcd2-984471b0f315.png)


再度、Webブラウザよりmanagement IPアドレスを入力してアクセスします。サーバーのステータスが「稼働中」になってからブラウザアクセスできるようになるまで数分かかる場合があります。

ethernetが緑になっていることを確認します。
「ネットワーク」→ 「Ethernet」をクリックし、「Enternet1/1」をクリックし、「リンク状態」が緑になっていることが確認できました。

![eth-check.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/e1fcdfef-7532-4530-d014-d76c611487e1.png)


# ライセンス登録
ライセンス発行が完了すると、メールを受信します。メールに記載されている「Activate Now」をクリックします。ブラウザにてPalo Altoサイトのページにアクセスされます。
ページに記載されているクレジットを選択し、「Start Activation」をクリックします。

<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/163d21de-54ff-79f0-8040-b8e2ea3a0a27.png width=60%>


発行されたクレジットを紐づけるアカウントを検索し、選択します。

<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/078fbd06-340b-5e7c-b8bb-581cf16a9ee9.png width=70%>


クレジットの紐付けが完了すると、アカウントのダッシュボードが開きます。 
 
![start-activation3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/67cf9d61-22f3-8440-faf6-ba16f157bc9e.png)


次に、サーバーへ割り当てるクレジットを作成します。
「Create Deployment Profile」をクリックし、以下の項目を選択します。


|項目|値  |
|---|---|
|*Select firewall type* |  VM-Series
|*Select vCPU configuration type* |Flexible vCPUs 

<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/5458695d-b70c-dbc3-006b-ca6cc851bca2.png width=70%>


次に、以下の項目を入力し、「Create Deployment Profile」をクリックします。
|項目| 入力  
|---|---|
|*Profile Name* | 任意の名前を入力します
|*Number of Firewalls* | クレジットを適用するVNFサーバー数を入力します
|*Planned vCPU per Firewall* | VNFサーバーのCPU数を入力します
|*Security Use Case* | 「Custom」を選択します
|*Customize Subscriptions* | 利用する機能にチェックを入れます
|*Use Credits to Enable VM Panorama* | 空欄にします

![create-deployments-file2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/18176043-205d-0e15-fff5-56929ed7f47c.png)


Deployment Profileを紐づける必要があります。
作成されたDeployment Profileの右側「︙」をクリックし、「Register Firewall」をクリックします。
入力には「UUID」「CPU ID」が必要となるため、管理ポータルの「Dashboard」よりコピーします。

![uuid.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/8b405242-7a05-b353-e7fb-ff03200b76e3.png)

|項目| 入力  
|---|---|
|*UUID* | Dashboardよりコピーします
|*CPUID* | Dashboardよりコピーします
|*Number of vCPU* | オーダー時に選択したバージョンを選択します
|*Memory* | オーダー時に選択したバージョンを選択します
|*PAN-OS Release* | オーダー時に選択したバージョンを選択します
|*Virtual Platform* | KVMを選択します

<img src=https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/f6ec966d-1249-4694-fb1d-07e7864a8b86.png width=70%>


続いて「Device」→「ライセンス」へ移動し、ライセンス管理の「ライセンス サーバーからライセンス キーを取得」をクリックし、ライセンスキーを取得します。

![license-register.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2199676/fc39c804-2d46-dbca-54a8-a48407d7b617.jpeg)




# ポリシーの設定
ネットワークポリシー設定を行う場合は、「Policies」→「セキュリティ」へ移動します。
デフォルトで「intrazone-default」が定義されており、上位から評価されます。
追加には、左下の追加をクリックし、以下の項目を入力します。

- 全般

|項目|値                 
|---|---|
|*名前*         |  ルールの名前を入力します   
|*ルールタイプ*  | "Universal" を選択します。これにより全ての通信にルールを適用します。|
<br>

- 送信元

|項目|値                 
|---|---|
|*送信元ゾーン*         | 指定する場合、「追加」をクリックします。指定しない場合、「いずれか」にチェックを入れます。
|*送信元アドレス*       | 指定する場合、「追加」をクリックします。指定しない場合、「いずれか」にチェックを入れます。|
<br>

- 宛先

|項目|値                 
|---|---|
|*宛先ゾーン*         | 指定する場合、「追加」をクリックします。指定しない場合、「いずれか」にチェックを入れます。
|*宛先アドレス*       | 指定する場合、「追加」をクリックします。指定しない場合、「いずれか」にチェックを入れます。

- アプリケーション

|項目|値                 
|---|---|
|*アプリケーション*      | 指定する場合、「追加」をクリックします。指定しない場合、「いずれか」にチェックを入れます。|
<br>


- サービス/URLカテゴリ

|項目|値                 
|---|---|
|*サービス*         | 指定する場合、「追加」をクリックします (定義は「Objects」→「サービス」)。指定しない場合、「any」を指定します。  
|*URLカテゴリ*      | 指定する場合、「追加」をクリックします(定義は「Objects」→「URLカテゴリ」)。指定しない場合、「いずれか」にチェックを入れます。


- アクション

|項目|値 | 
|---|---|
|*アクション設定*        | ポリシーが適用された際のアクションを選択します。
|*プロファイル設定*      | 使用するプロファイルを選択します。(定義は「Objects」→「セキュリティ プロファイル」)
|*ログ設定*             | ログ出力のタイミングを指定します。ログを転送する場合、転送先を指定します(定義は「Objects」→「ログ転送」)。

以上で設定が完了となります。