배경
다음 명령을 실행 중입니다.
내 노트북에는 모든 최신 업데이트가 포함된 최신 버전의 아치 리눅스가 있습니다. 이 노트북에서 Raspberry Pi의 SNMP 스택을 쿼리합니다.
$ uname -a Linux 4.20.13-arch1-1-ARCH #1 SMP PREEMPT Wed Feb 27 19:10:28 UTC 2019 x86_64 GNU/Linux
라즈베리 파이에서는 모든 최신 업데이트로 Raspian을 실행하고 있습니다.
$ uname -a Linux raspberrypi 4.14.98-v7+ #1200 SMP Tue Feb 12 20:27:48 GMT 2019 armv7l GNU/Linux
Raspberry Pi에서는 다음과 같이 구성된 SNMP 스택을 실행하고 있습니다.
$ sudo apt-get install -y snmp snmpd
$ snmpd -v
NET-SNMP version: 5.7.3
/etc/snmp/snmp.conf 파일이 비어 있습니다.
/etc/snmp/snmpd.conf 파일의 내용은 아래에 붙여넣어집니다.
문제 설명
snmpstatus
WAN에서 명령을 받을 수 없습니다 . 즉, 자리를 비운 동안 인터넷을 통해 LAN에 원격으로 액세스할 수 없습니다. WAN 측에서는 작동하지 않지만 LAN 측에서는 작동하는 명령은 다음과 같습니다.
snmpstatus -v1 -c public my_dydns.org:1234
(이 명령을 실행한 후에는 아무것도 표시되지 않습니다.)
라우터의 LAN 측에서 동일한 명령이 예상대로 작동하여
snmpstatus -v1 -c public my_dydns.org:1234
다음과 같은 올바른 출력을 제공합니다.
[UDP: [94.94.94.94]:1234->[0.0.0.0]:40866]=>[Linux raspberrypi 4.14.98-v7+ #1200 SMP Tue Feb 12 20:27:48 GMT 2019 armv7l] Up: 15:33:34.58
외부 WAN이 포트 1234를 향하고 포트가 Rasp Pi의 SNMP 스택인 192.168.1.30 포트 161로 전달되도록 홈 라우터를 설정했습니다.
WAN에서 액세스되는 동일한 LAN에 있는 프린터의 SNMP 상태를 가져오는 데 사용되는 동일한 snmpstatus 명령이 유사한 포트 전달 체계를 사용하여 제대로 작동하기 때문에 dydns 및 포트 전달이 제대로 작동하고 있다는 것을 알고 있습니다.
다음은 내 Rasp Pi에서 사용하는 snmpd.conf 파일입니다.
snmp.conf 파일이 존재하지만 비어 있습니다.
/etc/snmp/snmpd.conf의 내용은 아래에 붙여넣어집니다.
agentAddress udp:161,udp6:[::1]:161
# below allows any ip in the range 192.168.1.0 to 192.168.1.254 access to this SNMP, including the router at 192.168.1.1
rocommunity public 192.168.1.0/24
# allows port forwarding through the router from the WAN (ie the outside side of the router)
rocommunity public me.my_dydns.org
답변1
SNMP 파일의 IP 주소가 잘못되었습니다. 그러나 주석에 "라우터 포함"이 올바르게 언급되어 있으므로 192.168.0/24에는 이미 포함되어 있습니다. 예를 들어 다음 줄을 주석 처리할 수 있습니다.rocommunity public me.my_dydns.org
그러나 보안상의 이유로 인터넷 공용 인터페이스에서 SNMP 서비스를 제공하는 것은 권장되지 않습니다. 인증이 암호화되지 않은 v1/v2 인증을 사용하는 SNMP는 말할 것도 없습니다.
VPN을 통한 SNMP 통신을 허용하도록 VPN을 설정하는 것이 좋습니다.
그러나 내가 아는 한 NAT 친화적이지 않은 일부 프로토콜이 있으며 SNMP는 가장 NAT 친화적인 프로토콜 중 하나가 아닙니다. 예를 들어 SNMP는 NAT에서는 제대로 작동하지 않습니다. 작동할 수도 있고 작동하지 않을 수도 있으며, 어떤 경우에는 작동하지 않을 수도 있습니다.
인터넷을 통한 SNMP 통신을 위해 VPN을 설정하는 것이 좋습니다.
Cisco 장비를 예로 들어 보겠습니다.
네트워크 주소 변환 > NAT 문제
표 4-1 Cisco NAT에서 지원하는 IP 트래픽 유형/애플리케이션
지원되지 않는 SNMP 트래픽 유형/애플리케이션
추신. 기업 장치에는 NAT를 통해 작동하도록 SNMP 패킷을 다시 작성하는 검사자/전문 에이전트가 있습니다.