1. Introduction (はじめに)
1. Introduction (はじめに)
1.1. Overview (概要)
この文書は, SNMP管理フレームワークを記述するためのアーキテクチャについて説明します。このアーキテクチャは, SNMPプロトコル標準の時間経過による進化を可能にするためにモジュール化されるように設計されています。
アーキテクチャの主要部分には以下が含まれます:
-
メッセージの送受信, メッセージの認証と暗号化, および管理対象オブジェクトへのアクセス制御のサービスを提供するSNMPエンジン。
-
SNMPエンジンのサービスを使用して特定の管理機能を実行する1つ以上のSNMPアプリケーション。
このアーキテクチャは, 異なるメッセージ形式とセキュリティモデルの使用を可能にします。SNMP実装に重大な混乱を引き起こすことなく, セキュリティプロトコルの進化を可能にします。
1.2. SNMP
SNMPは, 管理システムとエージェント間で管理情報を交換するためのアプリケーション層プロトコルです。SNMPは, ルータ, スイッチ, サーバ, ワークステーションなどのネットワークデバイスの管理に広く使用されています。
SNMPの最初のバージョンはSNMPv1として知られ, RFC 1155, 1157, 1212で定義されています。SNMPv1は, コミュニティ文字列に基づく単純なセキュリティモデルを使用します。
SNMPの第2バージョンはSNMPv2cとして知られ, RFC 1901-1908で定義されています。SNMPv2cはSNMPv1と同じセキュリティモデルを使用しますが, 新しいプロトコル操作とデータ型を追加します。
SNMPの第3バージョンはSNMPv3として知られ, RFC 3410-3418で定義されています。SNMPv3はSNMPv2cにセキュリティと遠隔設定機能を追加します。この文書はSNMPv3フレームワークの一部です。
1.3. Goals of this Architecture (このアーキテクチャの目標)
このアーキテクチャの主な目標は次のとおりです:
-
モジュール性 (Modularity): アーキテクチャは, 異なるメッセージ形式, セキュリティモデル, アクセス制御モデルを独立して使用できるように設計されています。
-
進化 (Evolution): アーキテクチャは, 既存の実装を変更することなく新機能を追加できるようにします。
-
セキュリティ (Security): アーキテクチャは, 認証, プライバシー, アクセス制御を含む強力なセキュリティをSNMPに追加するためのフレームワークを提供します。
-
共存 (Coexistence): アーキテクチャは, SNMPv1, SNMPv2c, SNMPv3が同じネットワーク内で共存できるようにします。
-
単純性 (Simplicity): アーキテクチャは, 他の目標を満たしながらできるだけ単純になるように設計されています。
1.4. Security Requirements of this Architecture (このアーキテクチャのセキュリティ要件)
アーキテクチャは, 以下のセキュリティサービスの機能を提供します:
-
データ完全性 (Data Integrity): メッセージが不正な方法で変更または破壊されていないことを保証します。これはメッセージ認証コードの使用によって達成されます。
-
データ送信元認証 (Data Origin Authentication): メッセージのソースを確認します。これもメッセージ認証コードの使用によって達成されます。
-
メッセージ再生保護 (Message Replay Protection): 各メッセージが一意であり, 後で再生できないことを保証します。これはタイムスタンプとメッセージ識別子の使用によって達成されます。
-
データ機密性 (Data Confidentiality): 暗号化によってメッセージのペイロードの開示から保護します。
-
アクセス制御 (Access Control): ユーザーのIDと実行されている操作の種類に基づいて, 管理対象オブジェクトへのアクセスを制限します。
アーキテクチャは以下のセキュリティ脅威にも対処します:
-
なりすまし (Masquerade): 承認されていないエンティティが承認されたエンティティになりすますこと。
-
情報の改変 (Modification of Information): 承認されていないエンティティが転送中のメッセージを変更すること。
-
メッセージストリーム改変 (Message Stream Modification): メッセージの並べ替え, 遅延, または再生。
-
開示 (Disclosure): 承認されていないエンティティへのメッセージ内容の公開。
-
サービス拒否 (Denial of Service): 承認されたユーザーが管理システムにアクセスできないようにすること。
アーキテクチャは以下の脅威に対処していません:
-
トラフィック分析 (Traffic Analysis): メッセージパターンの分析によるネットワークに関する情報の推測。
-
サービス拒否攻撃: エージェントまたはマネージャーでリソースを消費する攻撃。
1.5. Design Decisions (設計決定)
このアーキテクチャの開発において, 以下の設計決定が行われました:
-
PDU処理とメッセージ処理の分離: アーキテクチャは, プロトコルデータユニット(PDU)の処理とメッセージの処理を分離します。これにより, 同じPDU形式で異なるメッセージ形式を使用できます。
-
複数のセキュリティモデル: アーキテクチャは, 複数のセキュリティモデルの共存を可能にし, セキュリティプロトコルの進化を可能にします。
-
複数のアクセス制御モデル: アーキテクチャは, 複数のアクセス制御モデルの共存を可能にし, 異なるアクセス制御ポリシーを可能にします。
-
認証とプライバシーの分離: アーキテクチャは, 認証とプライバシーを独立して使用できるようにします。これにより, 一部の環境で必要とされる可能性のあるプライバシーなしの認証が可能になります。
-
抽象サービスインターフェースの使用: アーキテクチャは, 主要コンポーネント間の抽象サービスインターフェースを定義します。これにより, 各コンポーネントの異なる実装が相互運用できるようになります。
-
遠隔設定の重視: アーキテクチャは, セキュリティとアクセス制御パラメータを遠隔で設定する能力を重視します。これは大規模展開に不可欠です。
-
後方互換性: アーキテクチャは, SNMPv3メッセージを処理する同じSNMPエンジンがSNMPv1とSNMPv2cメッセージを処理できるように設計されています。
-
前方互換性: アーキテクチャは, 将来新しいメッセージ形式とセキュリティモデルを追加できるように設計されています。