Redhat7 のインストールと構成 NET-SNMP - 方法 1 (yum インストール)

1. バージョンに関する注意事項

オペレーティング システム: Red Hat Enterprise Linux Server リリース 7.6
net-snmp: v5.7.2

2. net-snmp のインストールと構成

2.1 net-snmp のインストール

redhat7.6のシステムディスクのyumソースを設定した後、以下を実行します。

# yum list | grep net-snmp
net-snmp.x86_64                         1:5.7.2-37.el7             local       
net-snmp-agent-libs.x86_64              1:5.7.2-37.el7             local       
net-snmp-devel.x86_64                   1:5.7.2-37.el7             local       
net-snmp-libs.x86_64                    1:5.7.2-37.el7             anaconda/7.6
net-snmp-utils.x86_64                   1:5.7.2-37.el7             local       
net-snmp-agent-libs.i686                1:5.7.2-37.el7             local        
net-snmp-devel.i686                     1:5.7.2-37.el7             local        
net-snmp-libs.i686                      1:5.7.2-37.el7             local 

# yum -y install net-snmp*

2.2 ファイルパス

snmpd プログラムのデフォルトのパス: /usr/sbin/snmpd
snmpd.conf 設定ファイルのデフォルトのパス: /etc/snmp/snmpd.conf

2.3 snmpd.confの変更 - コミュニティ名

# vim /etc/snmp/snmpd.conf

#       sec.name  source          community
com2sec notConfigUser  default      public

改为:
#       sec.name  source          community
com2sec notConfigUser  default      cmsnmp

2.4 snmpd.confの変更 - デバイスノードの権限の表示

view: どのノードのデバイス情報を表示できるかを定義します。
デフォルトの SNMP 設定では、.1.3.6.1.2.1.1 および .1.3.6.1.2.1.25.1.1 ノードの下のデバイス情報のみを表示できますが、
ホスト CPU やメモリなどのデバイスはこれらのノードの下にないため、データが取得できません。次のように変更します。

#       name           incl/excl     subtree         mask(optional)
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1

改为:

#       name           incl/excl     subtree         mask(optional)
view    systemview    included   .1
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1

2.5 snmpd.confの変更 - プロセスチェックの設定を変更する

#proc mountd
#proc ntalkd 4
#proc sendmail 10 1

改为:
proc mountd
proc ntalkd 4
proc sendmail 10 1

/ 検索機能を使用して、これら 3 行の前にある # 記号のコメントを解除します。

2.6 snmpd.confの変更 - その他

#exec echotest /bin/echo hello world
改为:
exec echotest /bin/echo hello world
#disk / 10000
改为:	
disk / 10000
#load 12 14 14
改为:
load 12 14 14

設定を保存して終了します

2.7 sedコマンドによるsnmpd.confの変更

次の sed コマンドは、上記の第 2.3 章から第 2.6 章の内容を置き換えることができます。後のバッチ操作用のスクリプトを作成すると便利です。

cp /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.bak		#首先备份下配置文件
sed -i '41s/public/cmsnmp/' /etc/snmp/snmpd.conf		#修改41行,public为cmsnmp
sed -i '207s/#proc mountd/proc mountd/' /etc/snmp/snmpd.conf
sed -i '210s/#proc ntalkd 4/proc ntalkd 4/' /etc/snmp/snmpd.conf
sed -i '213s/#proc sendmail 10 1/proc sendmail 10 1/' /etc/snmp/snmpd.conf
sed -i '272s/#exec echotest/exec echotest/' /etc/snmp/snmpd.conf
sed -i '323s/#disk/disk/' /etc/snmp/snmpd.conf
sed -i '352s/#load 12 14 14/load 12 14 14/' /etc/snmp/snmpd.conf
sed -i '/.1.3.6.1.2.1.1/i\view    systemview    included   .1' /etc/snmp/snmpd.conf
			#匹配到字符串“.1.3.6.1.2.1.1”,在这前插入一行内容“view    systemview    included   .1”

#确认修改成功:
cat /etc/snmp/snmpd.conf | grep -E "cmsnmp|proc mountd|proc ntalkd|proc sendmail|exec echotest|load 12|view    systemview"

3. net-snmpを開始します

# /bin/systemctl restart snmpd.service
# ps -ef | grep snmpd
root     21768     1  1 17:33 ?        00:00:00 /usr/sbin/snmpd -LS0-6d -f
root     21779 10145  0 17:33 pts/5    00:00:00 grep --color=auto snmpd

4. net-snmp を確認する

4.1 ローカルクライアントからの検証

snmpget -v 1 -c cmsnmp localhost sysUpTime.0			#此处localhost也可以用本地IP代替
snmpwalk -v 2c -c cmsnmp -m ALL localhost .1.3 | more	#此处localhost也可以用本地IP代替

#cmsnmp はコミュニティ名です。これは snmpd.conf ファイル設定と一致している必要があります。そうでない場合、コマンドは実行できません。
出力された情報が正常であれば、snmp 設定が正常であることを示します。

4.2 SNMPサーバー側からの確認

# cmsnmp为共同体名称
# 10.168.1.129 是client端IP地址
snmpwalk -v 2c -c cmsnmp 10.168.1.129 .1.3.6.1.2.1.25.2.2  			#取得系统总内存
snmpwalk -v 2c -c cmsnmp 10.168.1.129 hrSystemNumUsers  			#取得系统用户数
snmpwalk -v 2c -c cmsnmp 10.168.1.129 .1.3.6.1.2.1.4.20    			#取得IP信息
snmpwalk -v 2c -c cmsnmp 10.168.1.129 system   						#查看系统信息
snmpwalk -v 2c -c cmsnmp 10.168.1.129 ifDescr 						#获取网卡信息

実行すると、出力される情報は正常であり、設定に問題がないことを示します。
以下の情報が表示された場合:

Timeout: No Response from 10.168.1.129

ファイアウォールの設定が原因かどうかを検討する必要があります。

5. ファイアウォールの設定

5.1 ビジネス環境ではファイアウォールをオフにすることができます

# systemctl stop firewalld			#关闭防火墙
# systemctl status firewalld		#查看防火墙状态

5.2 ビジネス環境ではファイアウォールをオフにできない

ビジネス環境でファイアウォールを閉じることができない場合は、SNMP サーバーからの接続を許可するようにポート 161 を設定できます。

# systemctl start firewalld			#打开防火墙
# systemctl status firewalld		#查看防火墙状态
# firewall-cmd --zone=public --add-port=161/udp --permanent		
									#开放161端口															
									#--permanent的作用是使设置永久生效,不加的话机器重启之后失效
# firewall-cmd --reload				#配置修改后重新加载
# firewall-cmd --zone=public --query-port=161/udp		
									#确认配置是否生效:输出yes表示生效

おすすめ

転載: blog.csdn.net/m0_37862262/article/details/107178327