SNMP(Simple Network Management Protocol)は、監視および集中管理の目的で広く使用されています。このチュートリアルでは、snmpd
をインストールします RHEL 8 / CentOS 8マシンにサービスを提供し、自動起動を有効にします。サービスを開始した後、snmpwalk
を使用して機能しているサービスをテストします。 デフォルト設定を実行します。
このチュートリアルでは、次のことを学びます。
- SNMPサービスのインストール方法
- systemdでサービスを開始して有効にする方法
- リモートアクセス用にudpポート161を開く方法
- ローカルホストからsnmpwalkを使用してサービスをテストし、マシンを削除する方法
snmpwalkを使用したリモートクエリへのSnmpd回答。
使用されるソフトウェア要件と規則
カテゴリ | 使用する要件、規則、またはソフトウェアバージョン |
---|---|
RHEL 8 / CentOS 8 | |
snmpd 5.8 | |
rootまたはsudo を介したLinuxシステムへの特権アクセス コマンド。 | |
# –指定されたLinuxコマンドは、rootユーザーとして直接、またはsudo を使用して、root権限で実行する必要があります。 コマンド$ –特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります |
RHEL 8 /CentOS8にsnmpをインストールする方法ステップバイステップの説明
net-snmp
パッケージは、サブスクリプション管理リポジトリを有効にした後、ベースリポジトリで使用できます。
- 最初に、
snmpd
を含むパッケージをインストールする必要があります service:# dnf install net-snmp
- 起動時にサービスを自動開始するように設定するには、
systemctl
を使用します :# systemctl enable snmpd
- サービスを開始しましょう:
# systemctl start snmpd
- 実行状態を確認します。
# systemctl status snmpd -l snmpd.service - Simple Network Management Protocol (SNMP) Daemon. Loaded: loaded (/usr/lib/systemd/system/snmpd.service; disabled; vendor preset: disabled) Active: active (running) since Wed 2019-01-02 19:29:35 CET; 25min ago Main PID: 3217 (snmpd) Tasks: 1 (limit: 12544) Memory: 8.4M CGroup: /system.slice/snmpd.service 3217 /usr/sbin/snmpd -LS0-6d -f
- テストするには、
snmpwalk
が必要です ユーティリティ:# dnf install net-snmp-utils
- コマンドラインからテストするには、デフォルトの
public
をクエリします コミュニティ(回答の「rhel8lab」はラボマシンのホスト名です):$ snmpwalk -v 2c -c public -O e 127.0.0.1 SNMPv2-MIB::sysDescr.0 = STRING: Linux rhel8lab 4.18.0-32.el8.x86_64 #1 SMP Sat Oct 27 19:26:37 UTC 2018 x86_64 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (174237) 0:29:02.37 SNMPv2-MIB::sysContact.0 = STRING: Root <root@localhost> (configure /etc/snmp/snmp.local.conf) SNMPv2-MIB::sysName.0 = STRING: rhel8lab [...]
- リモートアクセスの場合、
firewalld
に新しいサービスを追加する必要があります 。テキストファイル/etc/firewalld/services/snmpd.xml
を作成します 次の内容で:<?xml version="1.0" encoding="utf-8"?> <service> <short>SNMPD</short> <description>SNMP daemon</description> <port protocol="udp" port="161"/> </service>
サービスのファイアウォールを開きます:
# firewall-cmd --zone=public --add-service snmpd --permanent
そして、ファイアウォールの構成をリロードします:
# firewall-cmd --reload
- これで、ローカルホストで行ったのと同じ方法でリモートでマシンにクエリを実行できます。
$ snmpwalk -v 2c -c public -O e <hostname-or-ip-address-of-the-machine>