~~NOCACHE~~
## 33.snmp設定
snmp設定について理解した部分を記載してみる。
今回は下記の図の設定としてみた。
{{:InfrastructureConstruction:RHEL8:pasted:20210328-170500.png?direct 800x0}}
## snmp設定
### 使用ポート
・snmpd:161(外部からMIBデータを参照される時に利用)
・snmptrapd:162(外部からTrapを受信する時に利用)
### コマンドメモ
#インストール
dnf install net-snmp net-snmp-libs net-snmp-utils
#設定変更
vi /etc/sysconfig/snmptrapd
vi /etc/sysconfig/snmpd
vi /etc/snmp/snmptrapd.conf
vi /etc/snmp/snmpd.conf
vi /etc/snmp/snmp.conf
#適用/有効化
systemctl enable snmptrapd
systemctl restart snmptrapd
systemctl enable snmpd
systemctl restart snmpd
## クライアント設定
### /etc/sysconfig/snmpd
#下記を追記(下記の記載だけでも良い)publicコミュニティに送信する設定
trapcommunity public
trapsink [送信先IPアドレス] public
## サーバ設定
### /etc/snmp/snmptrapd.conf
authCommunity log,execute,net public
#disableAuthorization yes #左記の記載はコミュニティに関係なく全てのTrapを受信する
### /etc/snmp/snmp.conf
https://changineer.info/server/monitoring/monitoring_snmp.html
# こんな感じで書くらしい、[/usr/share/snmp/private-bims]が追加MIBのディレクトリ
MIBDIRS /usr/share/snmp/mibs:/usr/share/snmp/private-bims
MIBS all
### /etc/sysconfig/snmptrapd
OPTIONS="-m +ALL -Ls6 -On -p /var/run/snmptrapd.pid" #Local6を使用してsyslog経由でメッセージをログに記録
### /etc/sysconfig/snmpd
RHEL8ではデフォルトでは何も書き出さない設定のようです。
# snmpd command line options
# '-f' is implicitly added by snmpd systemd unit file
# OPTIONS="-LS0-6d"
### /etc/rsyslog.conf
#### RULES
・messegesにsyslogサーバのログを重複させないようにする。
##### 変更前
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none /var/log/messages
##### 変更後
・[& stop]を[/var/log/messages]書き出し前に入れることで重複を回避している。
local6.* /var/log/syslog/snmptrapd.log
& stop
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none /var/log/messages
## /etc/logrotate.d/syslog設定詳細
参考までに[/etc/logrotate.d/syslog]に追記する方法でログローテの設定をしている。
#### 変更前
/var/log/cron
/var/log/maillog
/var/log/messages
/var/log/secure
/var/log/spooler
{
missingok
notifempty
sharedscripts
postrotate
/usr/bin/systemctl kill -s HUP rsyslog.service >/dev/null 2>&1 || true
endscript
}
#### 変更後
/var/log/cron
/var/log/maillog
/var/log/messages
/var/log/secure
/var/log/spooler
/var/log/syslog/snmptrapd.log
{
missingok
sharedscripts
postrotate
/usr/bin/systemctl kill -s HUP rsyslog.service >/dev/null 2>&1 || true
endscript
}
## 参考サイト
[[http://www.net-snmp.org/docs/man/snmpcmd.html|http://www.net-snmp.org/docs/man/snmpcmd.html]]
[[http://uso59634.blog63.fc2.com/blog-entry-12.html|http://uso59634.blog63.fc2.com/blog-entry-12.html]]
[[https://changineer.info/server/monitoring/monitoring_snmp.html|https://changineer.info/server/monitoring/monitoring_snmp.html]]
[[https://software.fujitsu.com/jp/manual/manualfiles/m130017/b1fw5964/05z200/b5964-a-11-00.html|https://software.fujitsu.com/jp/manual/manualfiles/m130017/b1fw5964/05z200/b5964-a-11-00.html]]
[[https://www.ilovex.co.jp/blog/system/projectandsystemdevelopment/snmpdsyslog.html|https://www.ilovex.co.jp/blog/system/projectandsystemdevelopment/snmpdsyslog.html]]
{{tag>AWS RHEL 実践的}}