SNMPv3とは?
SNMP(Simple Network Management Protocol)はネットワーク内に存在する装置の状態を監視することを目的につくられたプロトコルです。SNMPはRFCで定義された標準規格であり、サーバーやネットワーク機器のベンダーや種類を問わずに利用可能です。
SNMPには現時点で3種類のバージョンが使用されています。それぞれのバージョンは、もっとも先に定義されたv1と、v1の欠点を改良したバージョンがv2c、v3という関係性となっています。
SNMPv1・v2cとの違いとは?
SNMPv3の仕様は、RFC 3411~3418にて新たに仕様が定義しなおされ、v1とv2cと比較して機能が変更された点がいくつかあります。主な変更点について以下でご紹介します。
設計の一新
SNMPv3では、SNMPv1・v2cで利用されていたSNMPエージェント・SNMPマネージャという名称が廃止され、「SNMPエンティティ」に置き換えられました。SNMPエンティティは、1つの「SNMPエンジン」と1つ以上の「SNMPアプリケーション」を持ちます。
SNMPエンジンは一意の「SNMPエンジンID」を持ちます。SNMPエンジンIDはSNMPエンティティ間の通信時に、識別のために使用されます。
また、SNMPエンジンは、受信したSNMP通信のバージョンを判別する機能・認証や暗号化の機能・メッセージをネットワークに送信するなどの基幹機能を持ちます。
SNMPエンジンの主な機能は以下の4つです。
- ディスパッチャ
SNMPメッセージの送受信機能を持ちます。 - メッセージ処理サブシステム
送信するSNMPメッセージの準備や受信メッセージからのデータ抽出などを行います。 - セキュリティ処理サブシステム
メッセージの暗号・複合、ユーザー認証機能を持ちます。 - アクセス制御サブシステム
ユーザーがどの管理対象オブジェクトにアクセスできるか・どの操作が可能かを制御します。
SNMPアプリケーションには、これまでネットワーク監視に用いられたSNMPマネージャの機能であるSNMPリクエストの送信やトラップの受信などの機能、およびSNMPエージェントの機能であるリクエストへの応答やトラップ送信機能が含まれます。
SNMPアプリケーションに含まれる主なアプリケーションは以下の5つです。
- コマンド生成アプリケーション
GetRequest等のリクエストを送信するための処理・コマンドへの応答の処理を行います。以前のバージョンにおけるSNMPマネージャの機能です。 - コマンド応答アプリケーション
GetRequest等への応答のための処理を行います。以前のバージョンにおけるSNMPエージェントの機能です。 - 通知生成アプリケーション
トラップ等のSNMP通知を送信するための処理を行います。 - 通知受信アプリケーション
トラップ等のSNMP通知を受信した場合の処理を行います。以前のバージョンにおけるSNMPマネージャの機能です。 - プロキシ転送アプリケーション
メッセージの転送処理を行います。以前のバージョンにおけるSNMPエージェントの機能です。
セキュリティ面の向上
SNMPv3では、下位バージョンのv1とv2cと比較してセキュリティの観点で大きく機能が向上しています。
SNMPv1とv2cでは、SNMPマネージャとSNMPエージェントの間の認証を行う仕組みとして、「コミュニティ」が採用されています。SNMPマネージャーは、コミュニティという文字列を用いてエージェントに問い合わせを行い、エージェント側で文字列を確認後、問い合わせに応答する仕組みとなります。
コミュニティとは本来は機器のグルーピングを行うための機能ですが、実質的には機器間のパスワードのように利用されます。
しかし、v1・v2cでは機器間の通信が暗号化されていないため、通信内容を傍受すればコミュニティも簡単に把握できてしまいます。
SNMPでは、情報取得の他に設定変更リクエストの送信もできますが、この場合にSNMPv1やv2cを用いていると、コミュニティの傍受によって機器の情報が書き換えられてしまう危険性がありました。
SNMPv3では、通信の暗号化と認証を実装することによって意図しない機器の情報書き換えを防ぐことが可能になりました。メッセージの信頼性を確保するため、SNMPv3では2段階の確認を行います。
- メッセージ送受信時
送信元が不正ではないか・メッセージが改ざんされていないかなどを確認します。 - メッセージ処理時
ユーザーがリクエストされた操作を実行する権限を持っているかなどを確認します。
SNMPv3はSNMPメッセージをSHAなどでハッシュ化して送信します。また、通信の暗号・複合化にはDESアルゴリズムなどを使用します。
SNMP監視をより効率化するツール[機能・監視数 無制限]
SNMPを使用した監視をより効率化する方法
サーバーやスイッチ・ルーターなどネットワーク機器の監視目的でSNMPを利用する場合は、ネットワーク機器の台数が増加するにつれて、管理の手間が増える傾向があります。
効率的にネットワーク機器を管理・監視するには、SNMPを利用して自動でパフォーマンスデータを収集するツールを使用するのがお勧めです。
ManageEngineが提供する統合監視ツールである「OpManager」は、SNMPを利用してネットワーク機器を自動で監視し、機器のステータスが一目で分かるように可視化します。 スイッチ監視、ルーター監視、CPU監視、メモリ監視、ポート監視、アプリケーション監視、イベントログ監視機能などが、Webベースのわかりやすい画面で管理できます。ネットワーク監視に関する知識がない方でも操作が可能で、容易に運用できるのが特徴です。
ネットワーク機器やサーバーの監視の自動化・効率化の方法をお探しの場合は、是非「OpManager」をご検討ください。
関連機能
- SNMP監視
SNMPを利用したネットワーク監視機能について詳しく紹介しています。 - スイッチ監視
ネットワークスイッチを簡単に監視する方法についてご紹介しています。 - ルーター監視
ルーターを簡単に監視する方法についてご紹介しています。