Ubuntu에서의 SNMP 액세스

Ubuntu에서의 SNMP 액세스

SNMP를 사용하여 컴퓨터 자체를 로컬에서 원격으로 모니터링하려고 합니다. 이것은 snmpd.conf(Ubuntu 8.04.1)입니다:

#       sec.name  source          comunity
com2sec readonly  1.2.3.4    nicenandtight
com2sec readonly  5.6.7.8   reallysafe

group MyROGroup v1         readonly
group MyROGroup v2c        readonly
group MyROGroup usm        readonly

view all    included  .1                               
view system included  .iso.org.dod.internet.mgmt.mib-2.system

access MyROGroup ""      any       noauth    exact  all    none   none

syslocation my house
syscontact me <[email protected]>

exec .1.3.6.1.4.1.2021.7890.1 distro /usr/bin/distro
smuxpeer .1.3.6.1.4.1.674.10892.1

includeAllDisks 95%

1.2.3.4는 로컬 시스템 IP이며 모든 것이 로컬에서 작동합니다. 5.6.7.8은 원격 시스템이고 처음에는 원격 시스템에서 snmpwalk를 사용하여 SNMPD를 터치하려고 했습니다.

snmpwalk -v 2c -c reallysafe 1.2.3.4
Timeout: No Response from 1.2.3.4

나는 첫 번째 규칙으로 iptables에 추가했습니다.

-A INPUT -p udp -m udp --dport 161 -j ACCEPT

이렇게 느슨한 iptables 규칙을 사용하면 왜 해당 Uubuntu 시스템에서 SNMPD를 건드릴 수 없는지 알 수 없습니다. 표 아래에 더 구체적인 규칙이 있지만 연결할 수 없으므로 위의 내용을 추가했습니다. TCPDump는 들어오는 UDP 패킷을 보여줍니다. 여기서 무엇이 잘못될 수 있습니까?

답변1

좋은 아침이에요. 들어오는 연결을 허용하도록 snmpd(방화벽 아님)가 구성되어 있습니까? 노력하다:

nestat -nlpu|grep snmp

127.0.0.1 또는 0.0.0.0에서 수신 대기 중입니까? 구성 snmpd:

/etc/snmp/snmpd.conf

8.0.4 우분투에 대해서는 잘 모르겠지만 10+에서는 추가해야 합니다.

agentAddress udp:0.0.0.0:161

개정판 2

방화벽은 출력에서도 열려야 합니다.

iptables -A OUTPUT -p udp -m udp --sport 161 -j ACCEPT

인터넷이나 동일한 네트워크를 통해 시스템에 액세스하려고 합니다.

답변2

이것은 저에게 새로운 것입니다. SNMPD는 /etc/hosts.allow와 iptables 내에서 제한되었습니다. 나는 단순히 원격 호스트의 IP를 목록에 추가했고 이제 모든 것이 작동하고 있습니다.

도움을 주신 모든 분들께 감사드립니다. 여러분 모두는 하나만 남을 때까지 가능한 각 길의 십자가를 도왔습니다. 그런데 호기심에서 벗어나면 TCP 덤프는 네트워크 체인에서 iptables 이전이나 이후 어디에 위치합니까? 아마도 그 이후에 패킷이 iptable에 도달하기 전에 패킷을 볼 수 있습니까?

답변3

tcpdump호스트로 다시 전송된 반환 UDP 트래픽도 표시 됩니까 ? (다음과 같이 시도해 보세요 tcpdump host other.host.address and udp)

그렇다면 OUTPUT 방화벽 규칙이 UDP 트래픽이 다른 호스트로 돌아가는 것을 막고 있는 것일까요? 의 출력을 게시할 수 있습니까 iptables -nL?

답변4

나는 또한 ubuntu10.4에서 이 문제를 만났고이 게시물많이 도와주세요:

  • localhost에서만 폴링하려는 경우에는 완료된 것입니다. 그러나 네트워크를 통해 SNMP를 사용하려면... /etc/default/snmpd를 편집하고 이를 127.0.0.1에만 바인딩하는 행을 변경해야 합니다.
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -g snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'

SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -g snmp -I -smux -p /var/run/snmpd.pid'

관련 정보