느리지만 단단한 IT 인프라 이야기

Server/Rocky

[RHEL/Rocky] 리눅스에서 SNMP 사용하기

바둑이 아저씨 2025. 6. 5. 17:57

 

SNMP 통신의 원리 -wikipedia.org

SNMP란?

SNMP(Simple Network Management Protocol)는 네트워크 장비(서버, 라우터, 스위치 등)를 모니터링하고 관리하기 위한 표준 프로토콜입니다.


1990년 IETF에서 표준화되어 TCP/IP 네트워크 상에서 장비 정보를 주고받는 데 사용됩니다.

SNMP 구성 요소

구성 요소 설명
SNMP 매니저 장비를 관리하는 주체. 예: SNMPc, Zabbix 서버 등
SNMP 에이전트 장비 내부에 설치된 SNMP 응답용 소프트웨어. 정보 제공자 역할
MIB 장비 정보(이름, 트래픽, 상태 등)를 계층 구조로 정리한 데이터베이스
SNMP 프로토콜 매니저와 에이전트 간 통신 형식 및 절차 정의 (RFC 기반)  

 

통신 방식: Polling vs Trap

  • Polling: 매니저가 주기적으로 정보를 요청 (일반적인 방식)
  • Trap: 에이전트가 이상 발생 시 매니저에게 알림 전송 (비정기적, 경보용)

1.  SNMP 및 SNMP 에이전트 설치

sudo dnf install net-snmp net-snmp-utils -y

 

2. 설정 파일 수정

rocommunity public은 읽기 전용 커뮤니티 이름입니다.


운영 환경에서는 public 대신 복잡한 문자열로 변경하는 것이 좋습니다.

vim /etc/snmp/snmpd.conf

# 아래 항목 수정 및 추가
rocommunity public
sysLocation ServerRoom
sysContact admin@example.com
agentAddress udp:161


3. 서비스 시작 및 부팅시 자동 실행 설정

systemctl enable snmpd
systemctl start snmpd


4. 방화벽 설정

firewall-cmd --add-port=161/udp --permanent
firewall-cmd --reload


5. 동작 테스트

snmpwalk -v2c -c public localhost

해당 명령어 사용 시 오류 없이 정상적으로 내용이 출력된다면 설정에 이상이 없는 것 입니다.


Red Hat 기반 시스템에서도 SNMP 설정은 간단하며,
Zabbix 같은 시스템 모니터링 도구와 연동하면 네트워크 및 시스템 상태를 효율적으로 감시할 수 있습니다.

또한 아래의 방법으로 보안을 조금 더 강화해서 사용 할 수 있습니다.

  • rocommunity는 반드시 공개되지 않은 문자열로 설정
  • 필요 시 rwcommunity 대신 SNMPv3 (암호화 지원) 사용 권장
  • 방화벽 및 ACL 설정으로 접근 제어

감사합니다.

 

'Server > Rocky' 카테고리의 다른 글

[RHEL/Rocky] Firewalld 포트 포워딩  (0) 2025.05.28