我正在嘗試在 Windows 上使用 Net-SNMP 來模擬陷阱,該陷阱應該在我們的監控系統上觸發警報。
這是設定:
- 發送陷阱的 Windows 7 用戶端
- Net-SNMP 作為發送陷阱的軟體
- Linux,使用 Adventnet ManageEngine OpManager 作為 NMS(不相關)
這就是我想要實現的目標
發送帶有 OID .1.3.6.1.4.1.5089.1.0.1 的陷阱(根據我加載到 NMS 中的 MIB)以及某種訊息,看看我是否可以在 NMS 中收到任何警報。我可以看到我實際上在防火牆中發送了一個陷阱,但我不知道它包含什麼。
到目前為止,這是我的嘗試:
snmptrap.exe -v 2c -c xxxxxxx 192.168.100.65 '' 6 0 .1.3.6.1.4.1.5089.1.0.1 s "123456"
但是,我似乎找不到任何帶有 snmptrap 範例的合理文件。基本上,我需要知道什麼:
- '' <- 為什麼我需要這個?我可以省略它,它仍然會發送陷阱
- 6 <- 我認為是企業通用陷阱。它是否正確?
- 0 <- 我不知道,我需要某種價值
- .1.3.6.1.4.1.5089.1.0.1 <- 我假設的企業特定 OID,後面是否應該跟更多數字
- s <- 表示字串
- "123456" <- 只是一個隨機測試字串...
這對我來說沒有多大意義,如果有人能解釋這一點,我將非常感激。
答案1
請嘗試以下操作:
snmptrap.exe -v 2c -c xxxxxxx 192.168.100.65
'' .1.3.6.1.4.1.5089.1.0.1 .1.3.6.1.4.1.5089.2.0.999 s "123456"
'' <- v2c trap 的第一個參數是代理正常運行時間,它是強制性的,空參數將替換為當前值
.1.3.6.1.4.1.5089.1.0.1 <- 陷阱 OID
.1.3.6.1.4.1.5089.2.0.999 <- varbind(需要在 MIB 中定義為字串值)
s <- 表示字串
"123456" <- 只是一個隨機測試字串...
這會產生一個包含以下內容的 SNMPv2c 陷阱(如wireshark所示):
variable-bindings: 3 items
1.3.6.1.2.1.1.3.0: 878104
1.3.6.1.6.3.1.1.4.1.0: 1.3.6.1.4.1.5089.1.0.1 (iso.3.6.1.4.1.5089.1.0.1)
1.3.6.1.4.1.5089.2.0.999: 31323334353 (this is 123456 octet string)
此輸出來自 Linux 上的 snmptrap,但似乎與 Windows 上的相同。
答案2
人們忘記了 Net-SNMP,使用它有很多麻煩......只需從以下位置下載 MIB 瀏覽器即可http://ireasoning.com/mibbrowser.shtml....載入一個 mib 文件,你可以看到並發送所有 SNMP 陷阱。
答案3
我也不完全理解它,但這對我有用(試誤法;)
snmptrap -v 2c -Ci -u user -c 社群主機 '' .xyzqoid 1 s string 2 s string2