SNMP
SNMP ポート ガイド: ポート 161 および 162 でのネットワーク監視
SNMP ポーリングとトラップがどのように機能するか、いつポート 161 と 162 に到達できるか、インフラストラクチャ データの漏洩を回避する方法を理解します。
- 既定ポート
- 161/162
- プロトコル
- UDP
- 主な用途
- ネットワーク監視とテレメトリ
SNMPポートとは何ですか?
SNMP (Simple Network Management Protocol) は、ネットワーク デバイス、サーバー、ストレージ、UPS システム、プリンター、およびアプライアンスの監視と管理に使用されます。通常、マネージャーは UDP ポート 161 でエージェントをポーリングし、エージェントは UDP ポート 162 でマネージャーにトラップまたはインフォームを送信します。
ポート 161 は SNMP ポーリング用です
モニタリング システムは、UDP 161 経由で SNMP エージェントからデバイス カウンタ、インターフェイス ステータス、CPU、メモリ、温度、およびその他の MIB 値をクエリします。
ポート 162 はトラップとインフォーム用です
デバイスは、リンクに障害が発生した場合、しきい値がトリガーされた場合、またはハードウェアの状態が変化した場合に、UDP 162 上のモニタリング コレクターにイベント通知を送信できます。
SNMP の仕組み
SNMP には 2 つの主な役割があります。 SNMP マネージャーは、質問したり通知を受信したりする監視システムです。 SNMP エージェントは監視対象のデバイス上で実行され、管理情報ベース (MIB) を通じて値を公開します。
ルーチン監視の場合、マネージャは、UDP 161 で get、get-next、get-bulk、または set リクエストをエージェントに送信します。イベント駆動型監視の場合、デバイスは UDP 162 でマネージャにトラップまたはインフォームを送信します。インフォームは確認されます。トラップは通常、ファイアアンドフォーゲットです。
SNMP ポート 161 および 162
SNMP ポートが開いているかどうかを尋ねるときに、ほとんどのチームが意味するポートは UDP 161 です。ポーリングが必要な場合は、監視コレクタから各監視対象デバイスに到達可能である必要があります。 UDP 162 は、デバイスからコレクタへのトラップと通知の逆方向です。
SNMP は主に UDP を使用するため、単純な TCP のみのチェックでは実際の動作が見逃される可能性があります。 TCP ポート チェッカーは一般的な到達可能性パターンに役立ちますが、SNMP 検証には、正確なコミュニティ、ユーザー、および MIB オブジェクトに対する SNMP 対応コマンドまたはモニタリング コレクタ テストを含める必要があります。
SNMPv1、SNMPv2c、および SNMPv3
SNMPv1 および SNMPv2c は、共有パスワードのように動作するコミュニティ文字列を使用します。特に古いネットワークでは依然として一般的ですが、強力な認証やプライバシーは提供されません。コミュニティ文字列が漏洩すると、攻撃者が機密のインベントリやトポロジ データを読み取る可能性があります。
SNMPv3 は、ユーザーベースのセキュリティ、認証、およびオプションのプライバシー暗号化を追加します。新しい展開の場合は、認証とプライバシーを備えた SNMPv3 をデフォルトにする必要があります。 SNMPv2c が引き続き必要な場合は、範囲を厳密に設定し、デフォルト以外の一意のコミュニティ文字列を使用します。
SNMP を開く必要がある場合
信頼できる監視コレクタとそれらが管理するデバイスの間でのみ SNMP を開きます。一般的なソースには、NMS プラットフォーム、可観測性コレクター、SIEM 統合、キャパシティ プランニング システム、専用トラップ レシーバーなどがあります。
SNMP を公共のインターネットに公開しないでください。 SNMP では、インターフェイス名、デバイス モデル、ファームウェア バージョン、ルーティングの詳細、シリアル番号、パフォーマンス カウンターを明らかにできます。設定操作が有効になっている場合、書き込み可能な SNMP アクセスはさらに危険になる可能性があります。
SNMPを開く前に
SNMP を許可する前に、デバイスがポーリング、トラップ、インフォーム、または 3 つすべてをサポートするかどうかを決定します。 SNMP バージョン、許可されたソース IP、コミュニティ文字列または SNMPv3 ユーザー、認証およびプライバシー アルゴリズム、およびどの MIB ビューが公開されているかを確認します。
ポート チェックでは、パスに到達できるかどうかを確認できますが、SNMP が成功するかどうかはプロトコル レベルのポリシーに依存します。 snmpwalk、snmpget、snmpbulkwalk、またはモニタリング プラットフォーム自体を使用して、予期される OID がデータを返し、未承認のソースが拒否されていることを確認します。
ネットワーク デバイス、Linux、および Windows で SNMP を有効にする方法
ネットワーク デバイスでは、可能な場合は管理インターフェイスまたは信頼された VRF でのみ SNMP を有効にします。 SNMPv3 ユーザーを構成し、ACL で送信元アドレスを制限し、MIB ビューを定義して、監視システムが必要なものだけを認識できるようにします。
Linux では、一般的に net-snmp が使用されます。目的のインターフェイスでリッスンするように snmpd を構成し、SNMPv3 ユーザーまたは制限付きコミュニティを定義し、監視コレクタからの UDP 161 のみを許可します。 snmptrapd などのトラップ レシーバーには、コレクター上で UDP 162 が開かれている必要があります。
Windows Server では、SNMP は最新のテレメトリ オプションと比較するとレガシーですが、依然として古い監視スタックに表示されます。有効にすると、受け入れられるホストを制限し、デフォルトのコミュニティ文字列を避け、実際には新しいエージェントまたは Windows ネイティブの監視を優先します。
- ポーリング パス: 監視コレクタは UDP 161 上のエージェントに到達する必要があります。
- トラップ パス: デバイスは UDP 162 上のトラップ レシーバーに到達する必要があります。
- ID 層: 共有コミュニティ文字列よりも認証とプライバシーを持つ SNMPv3 ユーザーを優先します。
- 公開レイヤー: ソース IP、管理ネットワーク、MIB ビュー、および読み取り専用権限によって SNMP を制限します。
SNMP 接続をテストする方法
まず、コレクタとデバイス間の基本的なネットワーク到達可能性を確認します。次に、監視プラットフォームが使用しているのと同じ SNMP バージョン、資格情報、セキュリティ設定を使用して、コレクターから snmpwalk または snmpget を実行します。
トラップの場合は、既知のイベントを生成するか待機し、コレクタが UDP 162 でそれを受信することを確認します。トラップが到着しない場合は、デバイスのトラップ ターゲット、ソース インターフェイス、ルーティング、ACL、NAT、コレクタのファイアウォール ルール、およびコレクタが実際にリッスンしているかどうかを検査します。
一般的な SNMP トラブルシューティングのケース
ポーリングが失敗した場合、エージェントは無効になっているか、別のインターフェイスでリッスンしているか、ACL によってブロックされているか、コミュニティまたは SNMPv3 ユーザーを拒否している可能性があります。一部の OID のみが失敗する場合は、MIB ビュー、デバイス ファームウェア、権限、または監視テンプレートが間違っている可能性があります。
トラップが失敗した場合は、デバイスが間違ったコレクタ アドレスに送信しているか、間違った送信元インターフェイスを使用しているか、ルーティングおよびファイアウォール ポリシーによってブロックされている可能性があります。ポーリングとトラップは逆のトラフィック方向を使用するため、一方が機能しなくても、もう一方が機能する可能性があることに注意してください。
SNMP のセキュリティ チェックリスト
可能な限り、認証とプライバシーを備えた SNMPv3 を使用してください。パブリックやプライベートなどのデフォルトのコミュニティを無効にし、本当に必要な場合を除いて書き込みアクセスを回避し、許可されたソースを監視コレクターに制限します。
デバイスのファームウェアとエージェントにパッチを適用した状態を維持し、SNMP 認証の失敗をログに記録し、クエリ量を監視し、予期しないソースについて警告します。 SNMP データは、攻撃者が横方向の移動を計画するのに役立つインフラストラクチャの詳細を明らかにする可能性があるため、機密データとして扱います。
よくある質問
SNMP はどのポートを使用しますか?
SNMP ポーリングは通常、UDP ポート 161 を使用します。SNMP トラップとインフォームは通常、UDP ポート 162 上の監視受信機に送信されます。
SNMP は TCP ですか、それとも UDP ですか?
SNMP は通常 UDP を使用します。一部の実装とプロキシは TCP をサポートしている場合がありますが、標準の SNMP モニタリングは、ポーリングには UDP 161、トラップには UDP 162 に依存することが最も一般的です。
SNMP をインターネットに公開しても安全ですか?
いいえ。SNMP は信頼できる監視ネットワークに限定する必要があります。一般に公開されると、デバイス インベントリ、トポロジ、カウンタ、ファームウェアの詳細、その他の運用データが漏洩する可能性があります。
ポート 161 は開いているのに、SNMP ポーリングが失敗するのはなぜですか?
SNMP ポリシーが要求をブロックしている間、ネットワーク パスに到達できる可能性があります。 SNMP バージョン、コミュニティまたは SNMPv3 ユーザー、認証/プライバシー設定、許可されたソース IP、MIB ビュー、OID サポート、およびデバイス ログを確認します。