[Debian] snmpd sockets alleen voor localhost?

Pagina: 1
Acties:

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Ik heb een snmp daemon draaien voor mrtg, maar de listening sockets luisteren naar alle IP addressen en ik wil hem graag alleen naar localhost laten luisteren.
Ook weet ik niet of zowel TCP als UDP nodig zijn, anders zou ik er graag maar een hebben.

code:
1
2
3
# netstat -nlp|grep snmp
tcp        0      0 0.0.0.0:199             0.0.0.0:*               LISTEN     643/snmpd           
udp        0      0 0.0.0.0:161             0.0.0.0:*                          643/snmpd
# man snmpd
By default, snmpd listens for incoming SNMP requests only on UDP port 161. However, it is possible to modify this
behaviour by specifying one or more listening addresses as arguments to snmpd. A listening address takes the form:

[<transport-specifier>:]<transport-address>
code:
1
2
# ps aux|grep snmp
root      5190  0.0  0.3  5384 3280 ?        S    Sep09   0:07 /usr/sbin/snmpd -Lsd -Lf /dev/null -p /var/run/snmpd.pid

Ik weet dus niet waarom die ook op TCP luistert.
Waar is dit aan te passen?
En waarom is de default blijkbaar niet localhost?

[ Voor 4% gewijzigd door Olaf van der Spek op 16-09-2004 19:38 ]


  • Osiris
  • Registratie: Januari 2000
  • Niet online
Ik neem aan dat snmpd wel een conf-bestand heeft? :?

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Uiteraard:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# cat /etc/default/snmpd 
# This file controls the activity of snmpd and snmptrapd

# MIB directories.  /usr/share/snmp/mibs is the default, but
# including it here avoids some strange problems.
export MIBDIRS=/usr/share/snmp/mibs

# snmpd control (yes means start daemon).
SNMPDRUN=yes

# snmpd options (use syslog, close stdin/out/err).
SNMPDOPTS='-Lsd -Lf /dev/null -p /var/run/snmpd.pid localhost'

# snmptrapd control (yes means start daemon).  As of net-snmp version
# 5.0, master agentx support must be enabled in snmpd before snmptrapd
# can be run.  See snmpd.conf(5) for how to do this.
TRAPDRUN=no

# snmptrapd options (use syslog).
TRAPDOPTS='-Lsd -p /var/run/snmptrapd.pid'

Dat localhost heb ik net toegevoegd en resulteert in localhost UDP, maar nog steeds worldwide TCP:
code:
1
2
3
# netstat -nlp|grep snmp
tcp        0      0 0.0.0.0:199             0.0.0.0:*               LISTEN     2444/snmpd          
udp        0      0 127.0.0.1:161           0.0.0.0:*                          2444/snmpd

  • Osiris
  • Registratie: Januari 2000
  • Niet online
Probeer achter localhost eens udp:161 te plakken? Of als dat niet werkt, tcp:0 ofzo?

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Met SNMPDOPTS='-Lsd -Lf /dev/null -p /var/run/snmpd.pid udp:localhost tcp:localhost:0'
krijg ik:
code:
1
2
3
4
# netstat -nlp|grep snmp
tcp        0      0 127.0.0.1:161           0.0.0.0:*               LISTEN     2679/snmpd          
tcp        0      0 0.0.0.0:199             0.0.0.0:*               LISTEN     2679/snmpd          
udp        0      0 127.0.0.1:161           0.0.0.0:*                          2679/snmpd
Pagina: 1