Zabbixでsnmptrapをしようとしてハマった

2020年7月29日

今回はちょっと話題を変えて、Zabbixで、snmptrapを始めようとしたところ、最後の最後ではまっときのことを参考までに。

参考にしたのは、こちらのサイト。設定を終えて、最後にテストしてみたところ、

# cat /var/log/snmpd/snmptrap.log

の結果で、perlでの処理がエラーになっているとかの記載があり、
案の定、

# cat /var/log/zabbix/snmptrap.log

の中身はからの状態

ここからしばらくはまった後、

tail -100 /var/log/message

で確認したところ、以下のログが。。。

snmptrapd[22698]: 2020-07-08 13:25:54 localhost [UDP: [127.0.0.1]:33871->[127.0.0.1]:162]:#012.1.3.6.1.2.1.1.3.0 = Timeticks: (8640000) 1 day, 0:00:00.00#011.1.3.6.1.6.3.1.1.4.1.0 = OID: .1.3.6.1.6.3.1.1.5.3
snmptrapd: Cannot open [/var/log/zabbix/snmptrap.log]: 許可がありません
dbus[961]: [system] Activating service name='org.fedoraproject.Setroubleshootd' (using servicehelper)
dbus[961]: [system] Successfully activated service 'org.fedoraproject.Setroubleshootd'
setroubleshoot: SELinux is preventing snmptrapd from open access on the file /var/log/zabbix/snmptrap.log. For complete SELinux messages run: sealert -l 3bb138e0-64fe-4255-9564-4c8c1a491156
python: SELinux is preventing snmptrapd from open access on the file /var/log/zabbix/snmptrap.log.#012#012<em> Plugin catchall (100. confidence) suggests </em><strong><em>*</em></strong>#012#012If you believe that snmptrapd should be allowed open access on the snmptrap.log file by default.#012Then you should report this as a bug.#012You can generate a local policy module to allow this access.#012Do#012allow this access for now by executing:#012# ausearch -c 'snmptrapd' --raw | audit2allow -M my-snmptrapd#012# semodule -i my-snmptrapd.pp#012
systemd: Started Session 7740 of user root.

許可がありません!?
[/var/log/zabbix/snmptrap.log]の権限を再確認しても、書き込み権限があるはずなのに。。。

そこで、記載があるとおり

# ausearch -c 'snmptrapd' --raw | audit2allow -M my-snmptrapd
# semodule -i my-snmptrapd.pp

を実行してから再度テストしてみた結果、うまくいくようになりました。めでたしめでたし。