Cisco ASA は、企業に VPN(virtual private network、仮想プライベートネットワーク)アクセスを提供するデバイスで、世界中で最も一般的に使用されているデバイスの1つです。Cisco ASA が正常に作動していなければ、在宅勤務者が業務をまったく遂行できなくなってしまう可能性があります。 Cisco ASA が想定どおりに作動していることを確認する必要がある担当者は、問題が発生したら一刻も早く通知を受け取りたいと考えるはずです。このブログでは、WhatsUp Gold で Cisco ASA VPN を監視する方法を紹介します。WhatsUp Gold で VPN を監視する一般的な方法については、知識ベースのこの記事を参照してください。
WhatsUp Gold とは?
WhatsUp Gold は、オンプレミスとクラウドの両方で重要なシステムを監視できる統合ネットワーク監視ソリューションです。WhatsUp Gold は柔軟性に富み、高度にカスタマイズ可能です。WhatsUp Gold を使用すると、ネットワークデバイスのステータスを監視できるだけでなく、ネットワークインフラストラクチャ、サーバーやストレージなどの可用性やパフォーマンスも監視できます。
Cisco ASA VPN をどう監視するか?
WhatsUp Gold を使用すると、データを入力できるすべてのものを監視できます。そのデータが、ルーター、スイッチ、サーバーなどのオンプレミスシステムからのものか、AWS、Azure、Meraki などのクラウド環境からのものか、Zoom、WebEx、Office 365 などの SaaS (Software as a Service) からのものか、といったことは関係ありません。
そうは言っても、「これをどう監視するか?」 という個々の問題については、様々な選択肢があり得ます。Cisco ASA VPN の場合は、WhatsUp Gold に送信される SNMP トラップを使用することを推奨します。WhatsUp Gold は、「パッシブ監視」で SNMP トラップ、Syslog メッセージ、Windows イベントを受信します。また、パッシブ監視で受信した状況に応じて、対応する「アクション」を指定することもできます。アクションとしては、送信された問題を関係者に電子メールで通知することから、WhatsUp Gold の SSH アクションで送信されたコマンドを使用して修正アクションの実行することまで、様々なことができます。
デバイスをトラップを送信するように設定
Cisco のアプライアンスは、デフォルトでは SNMP トラップを送信するようには設定されていません。トラップを送信するように設定するには、送信するトラップと、トラップを送信する場所を指定する必要があります。モデルや IOSのリビジョンによって異なる場合があるので、どのように設定すればいいか正確に提示することはできませんが、Cisco のこのドキュメントは参考になると思います。
一般的には、チェックしたいトラップを WhatsUp Gold サーバーに送信するように設定してパッシブ監視を行いますが、次のように設定することもできます。
snmp-server enable traps all
最終的な設定内容は、以下のような感じになります。
ASA1# show run | grep snmp |
SNMP トラップの送信先を指定して、デバイスが送信できるすべての SNMP トラップを有効にしましたが、ご覧のように、Cisco デバイスが生成し、WhatsUp Gold がリッスンできる、多くの便利な SNMP トラップがあります。上記のうち、特に注目したいのは “config” トラップです。設定が変更されたときに WhatsUp Gold に SNMP トラップを送信するので、それを使用して WhatsUp Gold で設定管理アクションを起動できます。
パッシブ監視リスナーの有効化
このタイプの監視設定を行う最初のステップは、WhatsUp Gold システムで SNMP トラップリスナーがオンになっていることを確認することです。SNMP トラップリスナーはデフォルトではオフになっていますので、これまでにオンにしたことがなかったら、ここから始めます。SNMP トラップリスナーがすでにオンになっていれば、ここは飛ばして次のステップ、「モニタの作成」に進んでください。
SNMP トラップリスナーをオンにするのはとても簡単です。WhatsUp Gold の Web インタフェースにログインし、[Settings] > [System Settings] > [Passive Monitor Listeners] と進みます。
[Passive Monitor Listeners] ダイアログで、[SNMP Trap Settings] の [Listen for messages] をオンにし、ダイアログの左下にある [Save] をクリックします。これで、SNMP トラップリスナーがオンになりました。
モニタの作成
SNMP トラップリスナーがオンになったら、SNMP トラップのパッシブ監視を作成して、Cisco ASA に関連付ける必要があります。これにより、どの SNMP トラップをデータベースに保存すべきかを WhatsUp Gold が認識します。リッスンするよう特別に指定されていない SNMP トラップは、WhatsUp Gold サーバーに送信されても、デフォルトで破棄されるようになっています。
モニタを作成するには、[Settings] > [Libraries] > [Monitors] と進んで、[Monitors Library] を表示します。[Monitors Library] ダイアログで [+] をクリックし、[ Passive Monitor] を選択します。
[Select Passive Monitor Type] ダイアログで、[SNMP Trap Monitor] をクリックし、左下の [Select] をクリックします。
[Add SNMP Trap Monitor] ダイアログで、[Generic type (Major)] の下にある [Enterprise Specific] を選択します。[Enterprise OID] に1.3.6.1.4.1.9.9.171.2.0 を入力します。これは、Cisco の cipSecMIBNotifications のエンタープライズ OID で、ここには、ここで対象としているすべてのトラップが含まれています。[Specific type (Minor)] としては、この例では、[Any] にしておきます。つまり、このモニタは、objectID が1.3.6.1.4.1.9.9.171.2.0 で始まるトラップはすべてキャッチします。もし特定したい場合は、[Specific type (Minor)] セクションで1〜13の数字を使用して、特定のモニタを作成することもできます。例えば、”cikeTunnelStop” だけのモニタを作成したい場合は、2を入力します。
[Browse] をクリックすると、すべての SNMP トラップの定義とその “minor” 番号が表示されます。簡単に参照できるように、クイックリストを示します。
- cikeTunnelStart: この通知は、IPsec Phase-1 IKE トンネルがアクティブになったときに生成されます
- cikeTunnelStop: この通知は、IPsec Phase-1 IKE トンネルが非アクティブになったときに生成されます
- cikeSysFailure: この通知は、IPsec Phase-1 IKE トンネルの処理中に内部またはシステム容量エラーが発生したときに生成されます
- cikeCertCrlFailure: この通知は、IPsec Phase-1 IKE トンネルの処理で証明書または証明書失効リスト(CRL)関連のエラーが発生したときに生成されます
- cikeProtocolFailure: この通知は、IPsec Phase-1 IKE トンネルの処理でプロトコル関連のエラーが発生したときに生成されます
- cikeNoSa: この通知は、IPsec Phase-1 IKE トンネルの処理で、存在しないセキュリティアソシエーションエラーが発生したときに生成されます
- cipSecTunnelStart: この通知は、IPsec Phase-2 トンネルがアクティブになったときに生成されます
- cipSecTunnelStop: この通知は、IPsec Phase-2 トンネルが非アクティブになったときに生成されます
- cipSecSysFailure: この通知は、IPsec Phase-2 トンネルの処理中に内部またはシステム容量エラーが発生したときに生成されます
- cipSecSetUpFailure: この通知は、IPsec Phase-2 トンネルのセットアップが失敗したときに生成されます
- cipSecEarlyTunTerm: この通知は、IPsec Phase-2 トンネルが途中でまたは予期せずに終了したときに生成されます
- cipSecProtocolFailure: この通知は、IPsec Phase-2 トンネルの処理中にプロトコル関連のエラーが発生したときに生成されます
- cipSecNoSa: この通知は、IPsec Phase-2 トンネルの処理中に、存在しないセキュリティアソシエーションエラーが発生したときに生成されます
デバイスにモニタを割り当て
モニタを作成したら、適切なデバイスにモニタを割り当てます。これは、[My Network] から一括で行うことができます。グループに移動するか、フィルタを使用して、モニタを追加するデバイスを表示し、選択したデバイス上で右クリックし、[Edit Devices] > [Assign Monitors] > [Passive Monitor] と進みます。
次の [Assign Passive Monitor] ダイアログで、[Passive Monitor Type] として [SNMP Trap] を選択し、[Passive Monitor] として作成したパッシブ監視(下の例は ”IPSEC traps”)を選択して、[OK] をクリックします。これで、デバイスが SNMP トラップをリッスンし始めました。
モニタのテスト
パッシブ監視は、その性質上、テストするのは少し困難です。アクティブ監視のように自ら能動的にチェックに行くのではなく、受動的にメッセージをリッスンするだけなので、何らかの形で実際のイベントをシミュレートする必要があります。たとえば、テストトンネルを作成してから、開始/停止することができます。私は Cisco の設定に関しては門外漢なので、何か確認する必要があれば Cisco のサポートに問い合わせてください。
このモニタは何をするのか?
このモニタは、基本的に、VPN トンネルのステータスの変化や中断を監視します。VPN トンネルのステータスが変化したり、何らかの理由で失敗したりすると、SNMP トラップが WhatsUp Gold に送信されます。WhatsUp Gold の機能を使って、警告送信(例:電子メールアクション、SMS アクション)、修正アクション(例:SSH アクション、PowerShell アクション)、両方のアクションの組み合わせなどを実行するよう設定することができます。
最後のステップ
さらに、必要に応じて、このパッシブ監視をファイアウォールに自動的に追加することもできます。これを行うには、WhatsUp Gold のデバイスロールを活用して、組み込みのファイアウォール・サブロールを変更するか、独自のロール/サブロールを作成します。
関連ブログ:デバイスロールを使用した効率的なネットワーク監視
ほかには?
さらに、モニタには、アクションを関連付けることができます。アクションとしては、電子メールやテキストメッセージでの警告通知などが考えられます。ここで紹介したのは WhatsUp Gold を利用する方法の1つに過ぎず、ほかにもいろいろできることがあります。たとえば、各トンネルに固有の個別の統計や、個別ユーザーの統計情報を確認することも可能です。今回はここまでにしておきますが、WhatsUp Gold は柔軟性が高く、様々なことができるので、ぜひ無料試用版をダウンロードして試してみてください。