GNU/Linux >> Linux の 問題 >  >> Linux

監視するホストをLibreNMSに追加する

LibreNMSは、SNMP、ARP、OSPF、BGPなどの複数のプロトコルによる自動検出をサポートする監視ツールです。オペレーティングシステムを監視するには、SNMPプロトコルを使用できます。SNMPプロトコルは、Linux、Windows、BSDなどのほとんどのOSで利用できます。

SNMPプロトコルには、コミュニティパスワードのみで保護されるv1とv2の3つのバージョンと、認証と暗号化のパスワードをサポートするプロトコルv3があります。実稼働環境では、SNMPプロトコルv3を使用することをお勧めします。これは、v2およびv1よりも安全です。

この記事では、SNMPプロトコルを使用してLibreNMS監視システムにホストを追加する方法を学習します。

前提条件

開始する前に、以下のLibreNMSのインストールを完了する必要があります。

Debian11BullseyeにLibreNMSをインストールする方法

この例では、次の環境を使用します。

LibreNMS監視サーバー

  • オペレーティングシステム:Debian 11 Bullseye
  • ホスト名:bullseye64
  • IPアドレス:192.168.1.1.100

ホスト/クライアントマシン

  • オペレーティングシステム:Debian 11 Bullseye
  • ホスト名:host01
  • IPアドレス:192.168.1.50

それでは始めましょう。

ホストマシンにSNMPをインストールする

まず、SNMPパッケージをホストマシンにインストールします。

1.ホストマシンに接続し、次のコマンドを使用してリポジトリを更新します。

sudo apt update

2.次に、以下のaptコマンドを使用してSNMPパッケージをインストールします。

sudo apt install snmpd snmp libsnmp-dev

' yと入力します 'を押してインストールを確認し、' Enter を押します '続行します。

3. SNMPのインストールが完了したら、次のコマンドを使用してsnmpdサービスを開始して有効にします。

sudo systemctl enable --now snmpd

次に、以下のコマンドを使用してsnmpdサービスを確認します。

sudo systemctl status snmpd

snmpdサービスがアクティブで実行されていることを確認してください。

SNMPプロトコルv3認証と暗号化のセットアップ

SNMPプロトコルは、v1、v2、およびv3の3つの異なるバージョンをサポートします。 LibreNMS監視ツールは、3つのプロトコルすべてをサポートします。また、セキュリティ上の理由から、SNMPプロトコルv3を使用することをお勧めします。

SNMPプロトコルv1およびv2は、単純な認証を提供します。ただし、SNMPプロトコルv3は、MD5およびSHAハッシュアルゴリズムによる認証と、AESおよびDESによるデータ暗号化を提供します。

このステップでは、ホストマシン上にプロトコルv3用の新しいsnmpdユーザーを作成します。

1.新しいSNMPユーザーを作成する前に、デフォルト構成をバックアップし、サービス停止を使用してsnmpdサービスを停止します

cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.bak
sudo systemctl stop snmpd.service

2.次に、以下の「net-snmp-create-v3-user」コマンドを実行して、パスワード認証とパスワード暗号化を使用して新しいSNMPユーザーを作成します。

この例では、新しいユーザー' snmpdadminを作成します。 'パスワード認証付き'StrongAuthPass 'およびパスワード暗号化'StrongEncPass '。

net-snmp-create-v3-user -ro -A StrongAuthPass -a SHA -X StrongEncPass -x AES snmpadmin

これで、以下と同様のエラーメッセージが表示され、次のステップでこのエラーを修正します。

adding the following line to /var/lib/snmp/snmpd.conf:
   createUser snmpadmin SHA "StrongAuthPass" AES "StrongEncPass"
adding the following line to /snmp/snmpd.conf:
   rouser snmpadmin
touch: cannot touch '/snmp/snmpd.conf': No such file or directory
/usr/bin/net-snmp-create-v3-user: 144: cannot create /snmp/snmpd.conf: Directory nonexistent

このエラーを修正するには、SNMP構成ファイル' /etc/snmp/snmpd.conf'の構成を編集する必要があります。 および'/var/lib/snmp/snmpd.conf '。

知っておくべきオプション:

  • -ro :新しいユーザーに読み取り専用の権限を付与します。
  • -A: 新しいユーザーのパスワード認証を設定します。
  • -a :パスワード認証のハッシュアルゴリズムを指定します。ハッシュMD5およびSHAをサポートします。
  • - X: 新しいユーザーのパスワード暗号化を設定します。
  • -x: パスワード暗号化アルゴリズムを指定します。 AESとDESをサポートします。
  • snmpadmin :作成するユーザー。

3.次に、nanoエディターを使用してSNMP構成'/etc/snmp/snmpd.conf'を編集します。

sudo nano /etc/snmp/snmpd.conf

「agentaddress」オプションで、ホストマシンの内部ネットワークを追加します。この例では、ホストマシンのIPアドレスは' 192.168.1.50 '。

agentaddress  127.0.0.1,[::1],192.168.1.50

次に、次の構成を行の最後に貼り付けます。この構成により、ユーザー' snmpadminが有効になります '読み取り専用の権限があります。

rouser snmpadmin

構成を保存して終了します。

4.次に、nanoエディターを使用してSNMPデータ構成'/var/lib/snmp/snmpd.conf'を編集します。

sudo nano /var/lib/snmp/snmpd.conf

次の構成をコピーして、行の最後に貼り付けます。

createUser snmpadmin SHA "StrongAuthPass" AES "StrongEncPass"

構成を保存して終了すると、SNMPv3プロトコルの基本構成が完了します。

5.次に、次のコマンドを実行してsnmpdサービスを開始します。

sudo systemctl start snmpd.service

snmpdサービスは、SNMPプロトコルv3を使用して内部IPアドレス「192.168.1.50」で実行されています。

SNMPサービス認証を確認する

ホストマシンのSNMP構成を確認するには、コマンド「snmpwalk」を使用できます。このツールは、SNMPプロトコルを使用してリモートホストのシステム情報を照会するために使用できます。

1.ホストマシンから、以下のsnmpwalkコマンドを実行します。

snmpwalk -v3 -a SHA -A StrongAuthPass -x AES -X StrongEncPass -l authPriv -u snmpadmin localhost | head

SNMP構成が正しい場合は、以下のようなホストシステム情報が表示されます。

2.次に、LibreNMSサーバーに移動し、以下のsnmpwalkコマンドを使用して、IPアドレス「192.168.1.50」でホストマシンにクエリを実行します。

snmpwalk -v3 -a SHA -A StrongAuthPass -x AES -X StrongEncPass -l authPriv -u snmpadmin 192.168.1.50 | head

構成が正しければ、以下のようなホストマシン情報が表示されます。

これで、プロトコルv3とパスワード認証およびパスワード暗号化を使用したSNMPのインストールと構成が完了しました。

ホストマシンへのSNMP拡張のセットアップ

LibreNMSでは、3つの異なる方法を使用してホストとアプリケーションを監視できます。

  1. アプリケーションへの直接接続
  2. SNMPExtendの使用
  3. LibreNMSエージェントの使用

このステップでは、SNMPExtendメソッドでLibreNMS監視ツールを使用してシステムまたはアプリケーションを監視する方法を学習します。

SNMP Extendメソッドを使用するには、次のURLからcheckコマンドスクリプトをダウンロードする必要があります。

https://github.com/librenms/librenms-agent/tree/master/snmp

1.この例では、ホストオペレーティングシステムを検出するためのチェックコマンドスクリプト「distro」をダウンロードします。

checkコマンドを「/usr/ local / bin」ディレクトリにダウンロードし、次のコマンドを使用して実行可能にします。

curl -o /usr/local/bin/distro https://raw.githubusercontent.com/librenms/librenms-agent/master/snmp/distro
chmod +x /usr/local/bin/distro

2.次に、nanoエディターを使用してSNMP構成'/etc/snmp/snmpd.conf'を編集します。

sudo nano /etc/snmp/snmpd.conf

次の構成を行の最後に貼り付けます。

extend distro /usr/local/bin/distro

構成を保存して終了します。

3.ここで、snmpdサービスを再起動して、新しい構成を適用します。

sudo systemctl restart snmpd

これで、SNMPExtendメソッドを使用したLibreNMS監視の基本構成が完了しました。

これで、ホストマシンをLibreNMS監視ツールに追加する準備が整いました。

LibreNMS監視ツールにホストを追加

LibreNMS監視ツールにログインし、メニューの[デバイス]に移動します '次に、メニュー'デバイスの追加をクリックします '。

1.次の構成を使用して詳細デバイスを入力します

  • ホスト名:192.168.1.50(ホストマシンのIPアドレス)。
  • SNMPバージョン:UDPトランスポートを使用するデフォルトポート161のプロトコルv3。
  • 認証レベル:authPriv
  • 認証ユーザー名:snmpadmin
  • 認証パスワード:StrongAuthPass
  • 暗号パスワード:StrongEncPass

次に、[デバイスの追加]ボタンをクリックします '。

2.ここで、数分待ってから、LibreNMS監視ツールがホストマシンからシステムの詳細を収集するようにします。

メニューの[デバイス]をクリックします 'をクリックし、'サーバーをクリックします '利用可能なすべてのデバイスのリストを取得します。

以下のように、リストサーバーで使用可能なホストマシンが表示されます。

3.ホストマシンのIPアドレスをクリックして、すべての詳細を監視します。

以下と同様の詳細なホストマシンが表示されます。

さらに、以下はシステムホストマシンのグラフです。

これで、監視するホストがLibreNMSに正常に追加されました。

結論

おめでとう! SNMPプロトコルv3を使用してLibreNMS監視ツールにホストを追加する方法を学習しました。また、認証と暗号化を備えたプロトコルv3を使用して新しいものを作成するためのSNMPの基本構成を学習しました。

次のステップでは、SNMP拡張を介して追加のチェックコマンドを追加して、他のアプリケーションを監視できます。または、LibreNMSエージェントを使用してシステムとアプリケーションを監視する他の方法を検討することもできます。


Linux
  1. Debian で独自のアプリケーションに SNMP サポートを追加する最良の方法

  2. CUPS (ホスト) で raw プリンター キューを作成し、CUPS (クライアント) を介してそれらを追加する

  3. 共有フォルダー内の新しいファイルを監視するスクリプト (Windows ホスト、Linux ゲスト)

  1. scp にローカル IP とユーザー名を追加すると公開鍵エラーが返されるのはなぜですか?

  2. 特定のホストへのルートを追加すると、特定のインターフェイスに出ます

  3. 編集情報

  1. WindowsServerへのIPの追加

  2. ディスク io を監視するにはどうすればよいですか?

  3. IP アドレス スコープ パラメータ