簡體   English   中英

如何在Linux中更改net-snmp陷阱發送方端口?

[英]How to change the net-snmp trap sender port in linux?

我正在使用net-snmp來收集linux中的系統信息。 但我發現有問題。

當我通過netstat檢查Net-SNMP的端口使用情況時,我發現使用3個UDP端口的net-snmp。

這是結果。

[root@ snmp]# netstat -anp | grep snmp

tcp        0      0 127.0.0.1:199               0.0.0.0:*                   LISTEN      6392/snmpd          
udp        0      0 0.0.0.0:49005               0.0.0.0:*                               6392/snmpd          
udp        0      0 0.0.0.0:161                 0.0.0.0:*                               6392/snmpd          
udp        0      0 0.0.0.0:44837               0.0.0.0:*                               6392/snmpd    

如您所見,snmpd使用了另外兩個不帶161的udp端口。我也發現了為什么2個udp端口被snmp隨機占用。

這些端口用於發送snmp陷阱。 當我刪除tran2sink和notifysink選項時,不再顯示2個UDP端口。

這是我配置snmpd.conf的一部分

###########################################################################
# SECTION: Trap Destinations
#
#   Here we define who the agent will send traps to.

# trap2sink: A SNMPv2c trap receiver
#   arguments: host [community] [portnum]

trap2sink  192.168.1.4  

# informsink: A SNMPv2c inform (acknowledged trap) receiver
#   arguments: host [community] [portnum]

informsink  192.168.1.4 NMS_COM 

# trapcommunity: Default trap sink community to use
#   arguments: community-string

trapcommunity  NMS_COM

# authtrapenable: Should we send traps when authentication failures occur
#   arguments: 1 | 2   (1 = yes, 2 = no)

authtrapenable  1

我的程序必須使用40000〜50000 udp端口。 所以我想使用這些陷阱選項並更改端口。

如何修復端口?

您可以嘗試為指令設置端口,如下所示:
trap2sink 1.1.1.1:port_num例如trap2sink 1.1.1.1:162


希望我理解您的問題,對您有所幫助。

這些是SNMP臨時端口。 這是來自Microsoft支持頁面上的報價:

在SNMP服務運行時,可以通過netstat命令行實用程序注意到,除了眾所周知的用於發送和接收SNMP陷阱的端口(161/162)外,該服務還創建了一個隨機臨時端口。

隨機端口的使用是預期的行為,並且為了發送“管理”陷阱而打開

...

SNMP服務運行時,此端口將保留在系統中,但是除非將管理陷阱發送到外部,否則該端口不會被有效使用。 由於SNMP不會在此隨機端口上偵聽入站數據包,因此不會出現安全漏洞。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM