PaloAlto

ChatGPTを利用し、PaloAltoで多数のアドレスオブジェクトを作成するコマンドを、一括作成してみた。

本記事はPaloAltoにおいて多数のアドレスオブジェクトを作成する際に、ChatGPTを利用し、GUIの操作や、CLIはコマンドの作成のために必要な手間や時間を、削減することができるのか、検証する記事となります。

実施環境

以下の環境下で実施しております。

PA-820

PAN-OS 10.2.4-h4

ChatGPT4(2023/11/12)
※GPTs未使用

設定の内容

多数のIPアドレスやFQDNが記載されたリストから、それぞれ、アドレスオブジェクトを新規作成し、1つのアドレスグループにまとめることを目的とする。

設定変更を実施するにあたり、以下の内容を条件として指定する。

条件:

  • アドレスオブジェクトに以下のIPアドレス、FQDNを合計34件追加する。
  • IPアドレスの名称は、xxx.xxx.xxx.xxx_32のように最後に“_32”をつける。
  • FQDNの名称は、値と同じとする。
  • アドレスグループは新規作成し、名称は「group2023」とする。
  • 追加したアドレスオブジェクトをすべてアドレスグループ「group2023」に入れる。

新規作成IPアドレス、FQDNリスト

1.1.1.1
1.1.1.2
1.1.1.3
1.1.1.4
1.1.1.5
1.1.2.1
1.1.2.2
1.1.2.3
1.1.2.4
1.1.2.5
1.1.3.1
1.1.4.1
1.1.5.1
1.1.5.2
1.1.5.3
1.1.5.4
1.1.5.5
1.1.5.6
1.1.5.7
1.1.5.8
1.1.5.9
1.1.5.10
1.1.5.11
1.1.5.21
1.1.5.31
1.1.5.41
1.1.5.51
1.1.5.61
1.1.5.71
1.1.5.81
1.1.5.91
1.1.5.101
www.example11.co.jp
www.example12.co.jp

ChatGPTに頼んでみる。

先程の条件を踏まえた、コマンドの作成をChatGPTに頼んでみた。

■依頼文

※『コピペで実行できるように出力してください』という文面を入れないと、回答が見やすいように改行して出力され、コピペで投入ができなくなるため記載しています。

※『省略せず、すべて記載してください。』という文面は、回答時にコマンドが省略されないように記載しています。
なお、言い回しを変えて、何度か試したが、回答時のコマンドが省略されてしまっているので意味はなかった。
回答時に省略されない書き方があるかも。

■ChatGPTからの回答

問題なくコマンドを作成してくれた…が一部のコマンドが省略されていた。(省略しないでって依頼しているのに…)

別に、コマンドの作り方が知りたいわけではなく、自分で作成する手間を省くことが目的のため、これでは意味がない。

…ということで、すべてのコマンドを作成してもらうように、再度依頼。

すると、

今度は、全コマンド作成してくれた。

見た感じは問題なさそうだが、このコマンドが、実際にそのままコピペで使えるのか、実機にて投入してみる。

コマンド投入

先ほど、ChatGPTにコマンドを作成してもらったので、コマンドをコピペで投入してみる。

まずは、コマンドを一気に投入するために、scriptingモードをONにする。

PaloAlto(active)> set cli scripting-mode on

コンフィグモードへ移行

PaloAlto(active)> configure
Entering configuration mode
[edit]

あとは、コマンドをChatGPTに作成してもらったので、それをそのまま、投入してみる。

まず、作成してもらった、IPアドレスのアドレスオブジェクト作成コマンドをコピーする。

set address 1.1.1.1_32 ip-netmask 1.1.1.1/32
set address 1.1.1.2_32 ip-netmask 1.1.1.2/32
set address 1.1.1.3_32 ip-netmask 1.1.1.3/32
set address 1.1.1.4_32 ip-netmask 1.1.1.4/32
set address 1.1.1.5_32 ip-netmask 1.1.1.5/32
set address 1.1.2.1_32 ip-netmask 1.1.2.1/32
set address 1.1.2.2_32 ip-netmask 1.1.2.2/32
set address 1.1.2.3_32 ip-netmask 1.1.2.3/32
set address 1.1.2.4_32 ip-netmask 1.1.2.4/32
set address 1.1.2.5_32 ip-netmask 1.1.2.5/32
set address 1.1.3.1_32 ip-netmask 1.1.3.1/32
set address 1.1.4.1_32 ip-netmask 1.1.4.1/32
set address 1.1.5.1_32 ip-netmask 1.1.5.1/32
set address 1.1.5.2_32 ip-netmask 1.1.5.2/32
set address 1.1.5.3_32 ip-netmask 1.1.5.3/32
set address 1.1.5.4_32 ip-netmask 1.1.5.4/32
set address 1.1.5.5_32 ip-netmask 1.1.5.5/32
set address 1.1.5.6_32 ip-netmask 1.1.5.6/32
set address 1.1.5.7_32 ip-netmask 1.1.5.7/32
set address 1.1.5.8_32 ip-netmask 1.1.5.8/32
set address 1.1.5.9_32 ip-netmask 1.1.5.9/32
set address 1.1.5.10_32 ip-netmask 1.1.5.10/32
set address 1.1.5.11_32 ip-netmask 1.1.5.11/32
set address 1.1.5.21_32 ip-netmask 1.1.5.21/32
set address 1.1.5.31_32 ip-netmask 1.1.5.31/32
set address 1.1.5.41_32 ip-netmask 1.1.5.41/32
set address 1.1.5.51_32 ip-netmask 1.1.5.51/32
set address 1.1.5.61_32 ip-netmask 1.1.5.61/32
set address 1.1.5.71_32 ip-netmask 1.1.5.71/32
set address 1.1.5.81_32 ip-netmask 1.1.5.81/32
set address 1.1.5.91_32 ip-netmask 1.1.5.91/32
set address 1.1.5.101_32 ip-netmask 1.1.5.101/32

PaloAltoへ貼り付けて投入してみる(Tera Term使用)

アドレスオブジェクト作成のコマンドを投入すると、自動で順番に作成されていくので、処理が終了するのを待つ。

PaloAlto (active)# set address 1.1.1.1_32 ip-netmask 1.1.1.1/32
set address 1.1.1.2_32 ip-netmask 1.1.1.2/32
set address 1.1.1.3_32 ip-netmask 1.1.1.3/32
set address 1.1.1.4_32 ip-netmask 1.1.1.4/32
set address 1.1.1.5_32 ip-netmask 1.1.1.5/32
~~~省略~~~

ChatGPTにて作成したコマンド投入後、処理が終了すると、IPアドレスオブジェクトが作成されたことが確認できた。

次にFQDNについても同様にChatGPTに作成してもらった以下コマンドを投入してみる。

set address www.example11.co.jp fqdn www.example11.co.jp
set address www.example12.co.jp fqdn www.example12.co.jp
PaloAlto(active)# set address www.example11.co.jp fqdn www.example11.co.jp
set address www.example12.co.jp fqdn www.example12.co.jp

問題なくFQDNについても作成されたことが確認できた。

IPアドレスとFQDN合わせて34件のオブジェクト追加について、自分でコマンドを作成せずとも、一瞬で行うことができた。

 

34個のオブジェクトを制御するために、作成してもらったアドレスグループを作成するコマンドを投入する。

PaloAlto(active)# set address-group group2023 static [ 1.1.1.1_32 1.1.1.2_32 1.1.1.3_32 1.1.1.4_32 1.1.1.5_32 1.1.2.1_32 1.1.2.2_32 1.1.2.3_32 1.1.2.4_32 1.1.2.5_32 1.1.3.1_32 1.1.4.1_32 1.1.5.1_32 1.1.5.2_32 1.1.5.3_32 1.1.5.4_32 1.1.5.5_32 1.1.5.6_32 1.1.5.7_32 1.1.5.8_32 1.1.5.9_32 1.1.5.10_32 1.1.5.11_32 1.1.5.21_32 1.1.5.31_32 1.1.5.41_32 1.1.5.51_32 1.1.5.61_32 1.1.5.71_32 1.1.5.81_32 1.1.5.91_32 1.1.5.101_32 www.example11.co.jp www.example12.co.jp ]
[edit]

これも、問題なくアドレスオブジェクトが作成されたことが確認できた。

コマンドは無事に投入できたので、条件を満たしているか確認する。

設定結果

最初の設定条件を満たしているか確認してみる。

条件:

  • アドレスオブジェクトに以下のIPアドレス、FQDN合計34件追加する。
    ┗ ◯ アドレスオブジェクトが指定通りの34件とも作成されている。
  • IPアドレスの名称は、xxx.xxx.xxx.xxx_32のように最後に“_32”をつける。
    ┗ ◯ 作成されたIPアドレスの名称に_32が付いている。
  • FQDNの名称は、値と同じとする。
    ┗ ◯ 作成されたFQDNの名称は値と同じ。
  • アドレスグループは新規作成し、名称は「group2023」とする。
    ┗ ◯ 作成されたアドレスグループの名称は「group2023」
  • 追加したアドレスオブジェクトをすべてアドレスグループ「group2023」に入れる。
    ┗ ◯ 追加されたアドレスグループに指定した34件のオブジェクトが追加されている。

結果、

条件を完全に満たした、コマンドをChatGPTが作成してくれたので、34件のオブジェクトを作成しアドレスグループに追加するための手間や作業時間を大幅に短縮することができた。

あとは、作成したアドレスグループ『group2023』を制御したいポリシーの送信元や宛先に追加するだけで、楽に多数のアドレスオブジェクトを制御することができる。

備考

ChatGPTは同じ質問でも、回答内容や表現が異なる場合がありますので、本記事を参考にしても、全く同じ回答にはならないので注意してください。
※何度か試した限りでは、コマンドのミスはありませんでした。

また、セキュアヴェイル社では業務にChatGPTは利用しておらず、本検証は検証環境で実施しております。

本記事作成に使用した、ChatGPTの履歴
Share link to Chat
https://chat.openai.com/share/9acf9dfd-6c3f-4600-a367-857d41cf0c51

記載されている会社名、システム名、製品名は一般に各社の登録商標または商標です。

当社製品以外のサードパーティ製品の設定内容につきましては、弊社サポート対象外となります。

Paloaltoにおけるセキュリティプロファイルの除外IP(exempt-ip)について前のページ

【物理で解決】絶対に見逃さない!システム障害のアラートにアレを実装してみた!2.0次のページLSCセキュリティアラート

ピックアップ記事

  1. ログフォワーダー「okurun.jar」について
  2. Zabbixヒストリデータのレポート生成について
  3. 自社製品をAMIにしてAWSマーケットプレイスへ出品
  4. IoT機器「Raspberry pi」とLogStare Collectorで温…

関連記事

  1. NW機器

    PaloAltoにおけるTLS通信を利用したSYSLOG送信方法

    当記事では、PaloAltoにおけるTLS通信を利用してSyslog …

  2. 実践記事

    【ネットワーク初心者向け】初めて読むSNMPv3について

    当記事では、ネットワーク初心者向けにSNMPv3の概要、SNMPv1、…

  3. NW機器

    【2021/12/29更新】Log4jの脆弱性(CVE-2021-44228)に対する各UTM/IP…

    ※本記事の内容は、2021年12月13日現在の公開情報をもとに記載して…

  4. NW機器

    FortiGate・Palo AltoのSyslogが取得できない

    FortiGate・Palo Alto側での確認事項FortiGa…

  5. NW機器

    GlobalProtect から特定アプリケーションの通信を除外する

    当記事では、PaloAlto のGlobalProtect を利用して…

  6. NW機器

    ネットワーク機器への不正接続の検知(PaloAlto)

    ネットワーク機器の空きポートに機器が接続された場合に、管理者へメールを…

月額200円でM356の監査ログの運用レベルUP LogStare M365

AWSのログ分析・モニタリングに 次世代のマネージド・セキュリティ・プラットフォーム LogStare

  1. 実践記事

    DNSキャッシュポイズニングやってみた
  2. デフォルト画像イメージ

    FortiGate

    FortiGateのSD-WAN設定について
  3. NW機器

    SonicWall UTMにSyslog送信設定を追加する方法について
  4. NW機器

    Nutanix Prism ElementにおけるSNMP監視/REST API…
  5. AWS/Azure

    AWSマーケットプレイス上から無償版のLogStare Collectorを試す…
PAGE TOP