Snmp

linux snmptrapd,如何寫入自定義日誌文件,或執行自定義命令

  • February 19, 2021

Ubuntu 18.04 和 20.04,snmptrapd,5.7.3 左右的版本。

陷阱事件進入系統日誌。偉大的。

除了 syslog 之外,如何使日誌文件轉到自定義位置?

許多網際網路答案和教程中看到的 logoption 或 logOption 在 snmptrapd.conf 中不起作用。

您可以將 logoption 放在 snmp.conf 中,但是所有 snmp 日誌都會放在那裡,而不僅僅是陷阱。例如,執行 snmpwalk 時的錯誤消息。我找不到任何方法來創建僅由 snmptrapd 接收的 snmp 陷阱的日誌文件。

我認為一個偷偷摸摸的解決方法是執行和陷阱句柄,只需將腳本寫入磁碟。但是 traphandle 似乎沒有傳遞參數?

就像是 :

authCommunity log,execute trap-dat
traphandle default /usr/local/bin/logger.rb

所以你想讓 snmptrapd 做點什麼。你如何傳遞論點?你如何讓這個東西寫入自定義日誌文件?

編寫自定義日誌文件有一種令人討厭的方法:更改或覆蓋 snmptrapd 的啟動單元,例如:/lib/systemd/system/snmptrapd.service 或 /etc/whatever 中的覆蓋

像這樣 :

ExecStart=/usr/sbin/snmptrapd -Ln -f -Lf /var/log/snmptrapd.log

systemd 啟動單元/服務是唯一的方法。

ExecStart=/usr/sbin/snmptrapd -Ln -f -Lf /var/log/snmptrapd.log

引用自:https://serverfault.com/questions/1052006