Wednesday, March 11, 2020

How can I setup a snmptrap receiver server on Ubuntu Server 18.04?

之前有介紹過如何在Ubuntu Server 18.04建立一個SNMP agent讓SNMP Manager可以做get request的動作,請參考此篇: How can I setup a SNMP server on Ubuntu Server 18.04

現在來補足一下如何在Ubuntu Server 18.04實作snmptrap receiver server.

Step1. 安裝snmptrapd
$ sudo apt install snmptrapd
Step2. 配置snmptrpad可以接收agent送過來的event
$ vi /etc/snmp/snmptrapd.conf
authCommunity log,execute,net public
以上,我只開啟IPv4 + snmp version 2c

Step3. 重啟snmptrapd
$ sudo systemctl restart snmptrapd

Step4. 檢查port 162 active (UDP port 162是snmptrap, 161是snmp get,getnext,set)
$ sudo netstat -tupln | grep 162
udp        0      0 0.0.0.0:162             0.0.0.0:*                           2100/snmptrapd 
Step5. 遠端送出一個snmptrap的event
這裡我用CentOS8安裝Net-SNMP的基本工具snmptrap後,送出一個snmptrap example command.
# snmptrap -d -v 2c -c public 192.168.1.151 "" UCD-SNMP-MIB::ucdStart message s "/ disk utilization exceed 90%"
 Step6. 檢查Ubuntu Server 18.04有沒有收到此event?
$ sudo tail -f /var/log/syslog | grep snmptrap
Mar 11 16:07:06 us18 snmptrapd[2100]: 2020-03-11 16:07:06 [UDP: [192.168.1.132]:51067->[192.168.1.151]:162]:#012iso.3.6.1.2.1.1.3.0 = Timeticks: (194731) 0:32:27.31#011iso.3.6.1.6.3.1.1.4.1.0 = OID: iso.3.6.1.4.1.2021.251.1#011iso.3.6.1.4.1.2021.10.1.101 = STRING: "/ disk utilization exceed 90%"
That's all!

如何讓Virtualbox下的虛擬機器透過實際無線網卡取得IP? (透通模式)

先稍微提一下會想這樣做的原因是因為愈來愈多的laptop已經不提供Etherenet port,尤其是一些比較強調輕量級的laptop,所以如果不買USB or USB Type-C轉Ethernet port的話,基本上只能透過wireless interface去連接網路。

對於一般的user來說這沒什麼大不了,所謂人人家裡都有wifi(沒有的話快去買一台Ruckus AP),但就算真的沒有wifi好了,user也可以透過手機開熱點讓laptop來連上網路。

但是對於我們這些常常需要跑VM的engineer來說是有一點困擾,因為預設上就算你設定好虛擬機器的網卡bridge到實際的wireless NIC,你還是拿不到IP address.... (至少我遇到的狀況是這樣),當然這時候可以透過NAT mode讓虛擬機器的網卡可以連上網路,但是有時候透通模式才是我們需要的。

怎麼解決呢?其實非常簡單,就是把你真實wireless NIC的MAC address設定到虛擬機器的MAC address就好了,以下我用VirtualBox在Ubuntu 18.04.4 LTS來演練一下:

Step1. 取得真實wireless NIC的MAC address:


Step2. 開啟VirtualBox -> 選擇虛擬機器 -> Settings -> Network -> Advanced -> MAC address

以上填入Step1列出的MAC address.

Step3. 開機或重新啟動虛擬機器

看到了嗎? 虛擬機器內的網卡已經透過實體的wireless NIC取得IP address並且可以連上Internet.

再來用實體機器來ping一下虛擬機器:


可以開始快樂的使用了,這個小技巧希望對大家有幫助。