- 限定コンテンツへのアクセス
- 他ユーザーとのつながり
- あなたの体験を共有
- サポート情報の発見
PAN-OSはXML APIが提供されており、外部システムからの様々な制御やログ情報の取得などが可能です。この記事では、PAN-OSのポリシー変更やコミットを伴わず、即座に特定のIPアドレスからの通信を制御するための仕組みについてご紹介します。
まず、お客様のニーズとしては、運用時に様々なセキュリティインシデントなどで、一時的に即座に特定のIPアドレスの通信を遮断したいケースがあります。例えば、外部組織からの通報で、自身の組織から攻撃トラフィックが送出されていたり、まさに今攻撃され何らかのサイバー攻撃の被害が出ていると考えられるケース、またPAシリーズ以外のセキュリティ製品が危険な通信や端末を検知した場合などです。そういう場合には、その特定のIPアドレスからのインターネットとの通信を一旦遮断して、端末や状況を確認し、問題なければ遮断を解除したくなります。
通常、PAシリーズで特定のIPアドレスからの通信を遮断したい場合には、そのためのセキュリティポリシーを設定し、コミット処理を行います。しかし、これが一時的な制御の場合、遮断を解除するためには、作成したセキュリティポリシーを削除してコミットしなければならず、運用面での操作が負担になります。また、管理GUIもしくはCLIの操作が必要になり、PAN-OSを操作できる技術者でなければできません。そういう場合に、この記事でご紹介する仕組みが役に立つケースがあります。
早速仕組みの種明かしですが、以下がポイントとなります。
尚、このip-user-mappingテーブルの情報はPAN-OSの再起動などを実施した場合にはクリアされますので、一時的かつポリシー変更せずに通信制御を行いたい場合に非常に便利です。
では、以下にXML APIについて解説いたします。
以下のサンプルXMLは、192.168.1.100のIPアドレスをblock-clientとしてUserIDにマッピングします。
タイマーは10分です。(0を指定するとタイマー制御なしとなります)
<uid-message><version>1.0</version><type>update</type><payload><login><entry name="block-client" ip="192.168.1.100" timeout="10"></entry></login></payload></uid-message>
ip-user-mappingテーブル情報を取得するXML APIです。
<show><user><ip-user-mapping><all></all></ip-user-mapping></user></show>
最後に、マッピングテーブルからエントリを削除するXML APIです。
<uid-message><version>1.0</version><type>update</type><payload><logout><entry name="block-client" ip="192.168.1.100"></entry></logout></payload></uid-message>
非常に簡単なXML APIで制御を行うことができます。尚、PAN-OSでは、XML-APIを使わなくともExternal Dynamic List(EDL)という機能があり、外部のWebサーバーからIPアドレス情報などを自動的に読み込んでアドレスオブジェクトとしてポリシーで利用する機能もあります。XML APIでプログラム開発が面倒と思われる方は、EDL機能を利用して、設定変更を伴わずに特定のIPアドレスをブロックすることなども可能です。