ネットワーク設定管理 (NCM)

概要

Pandora FMS NCM サーバ(ネットワーク設定管理 )を使用すると、Telnet および SSH プロトコルを介して任意のネットワークデバイスと対話し、設定の管理、バックアップの実行、作成したバックアップからのデバイス設定の復元、さらにはカスタム実行が可能です。

これらのタスクの実行は、メーカ - モデル によるテンプレートのシステムに基づいています。ネットワークデバイスで実行できる処理のデータを持っており、すべての処理をカスタマイズすることができます。上記のそれぞれの処理やすべてを実行することができます。

NCM サーバの有効化

Pandora FMS でこの機能を有効化するには、pandorafms サーバで NCM サービスを有効化する必要があります。

pandora_server.conf ファイルで、次のパラメータを設定する必要があります。

# Network manager configuration server.
ncmserver 1

# Threads for NCM server.
ncmserver_threads 1

# NCM utility to execute SSH and Telnet connections.
ncm_ssh_utility /usr/share/pandora_server/util/ncm_ssh_extension

有効化しPFMS サーバを再起動たら、サーバ一覧に新たなサーバが表示され、コンソール上でこの機能に関連するセクションが有効化されます。

NCM サーバに関連するすべてのメニューを表示するには、各ユーザが対応するACL権限を持っている必要があります。詳細はこちらを参照してください。

Enterprise 代替サーバパッケージ

Enterprise 代替サーバパッケージ を利用している場合、この機能が正しく動作するためには libnsl および openssh-clients をインストールしてください。

ベンダとモデルの定義

利用開始する前に、利用するデバイスのベンダとモデルが定義されていることを確認する必要があります。それには、ベンダ および モデル エディタを利用します。

設定(Configuration)ネットワーク設定管理(Network Config Manager) セクションに、これらのエディタがあります。

これは説明的な定義にすぎません。 ロジックは、ネットワーク機器のテンプレートに適用されます。

ネットワーク機器テンプレート

テンプレートは、メーカーと1つ以上のモデルに適用されます。 テンプレートは、ネットワーク機器との対話方法を定義します。 NCM と機器は、Telnet または SSH を介して接続できます。 どちらの場合も、1つ以上の資格情報のセットを提供する必要があります(Cisco の場合は、アクセスユーザ名/パスワードと enable モードのパスワード)。他のデバイスでは、2組の資格情報が存在する場合があります。

認証情報には、Pandora FMS 内部認証情報システム を使用して、詳細を知らなくても再利用できるようにします。 このようにして、管理者は識別子を使用して異なるユーザ/パスワードの ペア を指定でき、オペレーターは内容を見ずにそれらを使用できます。 NCM では、これらのユーザとパスワードは、マクロを介してデバイスとのダイアログに渡されます。

ネットワークデバイスに対するダイアログにおけるマクロ

  • _enablepass_ : エージェントに関連付けられた拡張キーの パスワード フィールドに置き換えらえます。
  • _username_ : エージェントのアクセスキーの ユーザ名 フィールドに置き換えられます。
  • _password_ : エージェントのアクセスキーの パスワード に置き換えられます。
  • _advusername_ : enable 拡張キーの ユーザ名 フィールドに置き換えられます。
  • _advpassword_ : enable 拡張キーの パスワード フィールドに置き換えれれます。_enablepass_ の別名です。同じ値を参照しており、どちらもテンプレートで利用可能です。
  • _applyconfigbackup_ : 現在のバックアップにある設定行と同じ数のコマンドが展開されます。 Cisco® デバイスに適用する場合、1行ずつ適用されます。

NCM テンプレートの作成

NCM テンプレート定義(Define a NCM template) ボタン (メニュー 管理(Management) → 設定(Configuration) → ネットワーク設定マネージャー(Network Config Manager)) をクリックし、作成(Create) ボタンをクリックします。

フィールドに入力します。

  • 名前(Name): NCM テンプレート名。
  • ベンダ(Vendors): カンマ区切りの、テンプレート内で定義されたスクリプトと互換性のあるベンダー一覧。
  • モデル(Models): カンマ区切りの、テンプレート内で定義されたスクリプトと互換性のあるモデル一覧。
  • スクリプト: テスト(Script: Test): デバイスの可用性をテストするために使用されるスクリプト。
  • スクリプト: 設定取得(Script: Get configuration): デバイスから設定を取得するために使用されるスクリプト。
  • スクリプト: 設定(Script: set configuration): デバイスの設定、以前のバックアップをするために使用されるスクリプト。
  • スクリプト: ファームウエア取得(Script: get firmware): デバイスからファームウエアのバージョンを取得するために使用されるスクリプト。
  • スクリプト: ファームウエア設定(Script: set firmware): デバイスのファームウエアをアップグレードするために使用されるスクリプト。
  • スクリプト: カスタムタスク(Script: custom task): カスタム(CUSTOM) タスクを選択したときにデバイスで実行されるスクリプト。

Cisco 7200 デバイスでの利用例

これらのスクリプトは、(Telnet または SSH 経由で)ログインするユーザがユーザとパスワードを利用し、デフォルトで enable フィールドが有効になっていない場合にのみ機能します。

テスト

デバイスへのテスト接続が行われ、操作を実行せずに終了します。

enable
expect:Password:\s*
_enablepass_
exit

テスト接続は、実際にデバイスに接続できることを確認するために使用されます。 Ready などの特定の応答を期待するように変更 (expect:xxxx) することができます。 これは基本的な例にすぎません。

現在の設定の取得

このブロックは、現在のデバイスの設定を取得する方法を定義するために使用されます。 この例(Cisco®)では、デバイスの running configuration は、デバイス内で show running-config コマンドを実行することによって取得されます。

enable
expect:Password:\s*
_enablepass_ term length 0
capture:show running-config exit

capture:<comando> : 画面に返す現在の設定を取得するために使われています。

ファームウエアバージョンの取得

前の例と似ていますが、show version | i IOS Software コマンドを使用してデバイスのファームウェアバージョンを取得します。前の例と同様に、capture コマンドを使用してコマンドの出力を取得します。

enable
expect:Password:\s*
_enablepass_
term length 0
capture:show version | i IOS Software
exit

設定バックアップのリストア

これは、マクロ _applyconfigbackup_ を使用して前もってコンソール上にバックアップ保存されているすべての設定を適用します。

enable
expect:Password:\s*
_enablepass_
term length 0
config terminal
_applyconfigbackup_
exit

カスタムスクリプトの例

デバイスの SSH パラメータの一部の値を変更するカスタムスクリプトの例です。必要な変更やコマンドの実行を適用できます。

enable
expect:Password:\s*
_enablepass_
conf term
ip ssh authentication-retries 4
ip tcp synwait-time 10
end
exit

デバイスに記録されたすべての変更はファームウェアバックアップの実行時に記録され、レポートと画面(Webコンソール)の両方で行われた変更を制御できます。

エージェントでの設定

リモート設定管理をする必要がある各エージェント内で、モデルを関連付けます。

この関連付けは、エージェントの NCM セクションで行う必要があります。ここで、次のパラメータを選択する必要があります。

  • デバイスのベンダ(Device manufacturer).
  • デバイスモデル(Device model).
  • 接続手法(Connection method): 接続タイプ(Telnet または SSH)
  • ポート(Port): Telnet または SSH 接続で利用するポート番号
  • デバイスへアクセスする認証情報(Credentials to access device): Pandora FMS の認証情報ストア 内の認証情報で、Telnet または SSH 接続に利用されます。ユーザが接続するときは、両方のパラメーターが必要です。
  • admin の認証情報(Credentials to admin device): Pandora FMS の認証情報ストア 内の認証情報で、使用する NCM テンプレートで選択されたテンプレート内で利用されます。マクロはユーザの場合は _advusername_、パスワードの場合は _enablepass_ または _advpassword_ です。

エージェントの設定が完了すると、設定の管理、バックアップ、ファームウェアの取得、作成したバックアップからのデバイス設定の復元、さらにはそれらを使用したカスタム実行が可能になります。

ファームウェアファイルをアップロードし、FTP でそれらのバックアップを作成するには、暗号化された方法でそれを実行して、可能な限り最高のセキュリティを確保する必要があります。 “Pandora FMS にデータを取り込むための FTP 設定” および vsFTPd の使用を参照してください。 次の場所で排他的な chroot を使用して SFTP を使用する必要があります。

/var/spool/pandora/firmware/

これに関する統合的な内容は、Pandora FMS の “セキュリティアーキテクチャ” を参照してください。

デバイスの設定管理

設定が正常に完了した場合は、エージェント表示または 設定(Configuration)ネットワーク設定管理(Network Config Management) セクションにアクセスして、それぞれで可能なすべての管理を実行できます。

デバイスの初期化

Get running-config ボタンをクリックして、すべての情報の取得を開始します。 クリックすると確認を求められ、これを受け入れると、設定されたデバイスの概要が表示され、完了するまで進行中のタスクが表示されます。

この同じ画面から、処理を見ながら、テンプレートで定義されたすべての処理を実行できます。

その時点で、すべてのオプションがエージェント表示で有効になり、保存された設定を更新したり、バックアップを更新したり、Pandora FMS に保存されているバックアップの 1つによってネットワークデバイスの現在の設定を復元したりできるようになります。

ファームウエアバックアップの違い

最後にダウンロードしたバージョンがバックアップバージョンと一致しない場合は、両方のバージョンの違いを示すウィンドウが表示されます:

成功したかどうかに関係なく、この機能の実行ごとに Pandora FMS に新しいイベントが作成され、タスクが完了したかどうか、および正しく完了しなかった場合は失敗した旨の情報を示します。

ACL

NCM 機能には、次の定義済みビットからさまざまなユーザを定義できる 3つの異なる ACL ビットがあります。

NCM データ参照(View NCM data) → エージェント表示を参照でき、それに反映されている情報を見ることはできますが、変更を適用することはできません。

NCM 操作(Operate NCM) → 参照できるだけでなく、エージェントおよび NCM 表示で必要な処理を実行することもできます。

NCM 管理(Manage NCM) → この権限があれば、NCM 操作(Operate NCM) によってできる実行に加えて、テンプレート、モデル、および新しいメーカーを設定できます。

Pandora FMS ドキュメント一覧に戻る