1. SNMP (Simple Network Management Protocol) 란?
TCP/IP 네트워크 상에서 관리자가 원격으로 네트워크상 각 호스트로부터 정기적으로 관리 정보를 자동으로 수집하거나 실시간으로 감시하고 관리할 수 있도록 해주는 기술이다.
SNMP는 프로토콜일 뿐이며 이를 관리하기 위해서 는 NMS 프로그램이 필요하다.
Application 계층 프로토콜이며 단순 요청 응답 형식의 프로토콜에 의해 교환되기 때문에161(Agent),162(Manager) UDP 프로토콜을 사용한다.
NMS 란?
네트워크상의 자원들을 모니터링하고 제어하기 위한 도구로, 전체 시스템에서 관리하는 네트워크 요소의각 지점과 특정한 속성에 주소와 이름을 지정하고 주기적으로 각 요소가 가진 정보를 중앙 제어 센터에 제공하는 Manager-Agent 구조를 가지고 있다.
2. SNMP 동작과 구성요소
Manager
Agent에 필요한 정보를 요청하는 역할을 수행한다.
Agent
Agent가 설치된 시스템의 정보나 네트워크 정보등을 수집하여 MIB 형태로 보관하고 Manager에게 전달해 주는 역할을 수행한다.
SNMP통신을 하기 위해서는 SNMP 버전, Community String, PDU 3가지가 일치해야 한다.
Community String의 경우 Default 값을 사용하지 않고 사용자가 임의로 설정하여 사용해야한다.
PDU 타입
Get Request: NMS가 Agent로 원하는 객체의 특정 정보를 요청
Get Next Request: NMS가 Agent로 이미 요청한 정보의 다음 정보를 요청
Set Request: NMS가 Agent로 특정한 값을 설정하기위해 사용
Get Response: 대행자가 NMS에게 해당 변수 값을 전송
Trap: Agent가 NMS에게 비동기적으로 알리기 위해 사용, 콜백 함수와 같은 역할 수행 (162/UDP)
(SNMPv2)Get Bulk Request: 요청할 객체 범위를 지정하여 한번에 요청 (DRDoS에 악용될 수 있다.)
SNMP 데이터 수집 방식
기본적으로 Manager가 요청하면 Agent가 응답한다.
Polling 방식
정보를 얻고자 하는 쪽에서 먼저 요청하는 방식 (기본 통신 방식)
Interrupt 방식 (Trap 방식)
문제, 이벤트 등의 상황시 반대로 Agent가 Manager에게 전달하는 방식 (Manager의 요청이 없더라도 전달)
3. SNMP 프레임워크의 구성요소
NMS에서 SMI로 변수를 만들어내고 이를 하나의 객체(MIB)로 취급
MIB를 통해 다른 시스템끼리라도, 상위 시스템에서 처리가 가능해짐 → SNMP
MIB(Management Information Base)
관리 되어야할 정보, 자원을 객체라고 하고 이 객체들을 모아놓은 집합체이다.
SMI를 통해 생성된 객체를 유형에 연결한다.
SMI (Structure of Management Information)
객체에 이름을 붙이고 객체 유형을 정의
MIB 정보가 어떻게 정의되어야 하는지를 기술
ISO 추상 표기법이라고 하는 DDL기반으로 표현
SNMP(Simple Network Management Protocol)
SNMP Agent와 NMS 간의 정보교환을 정의
전송 매핑은 TCP/IP, IPX 같은 네트워크 기술을 통해 정의
4. SNMP 접근제한 설정
버전별 특징
SNMPv1: 보안 기능이 없으며 Community String만 일치하면 정보를 얻을 수 있다.
SNMPv2: 전송하는 정보에 대해 DES암호화 및 MD5해시 기능을 추가했으나 송신처 인증 기능은 없다.
SNMPv2c: SNMPv2에서 보안기능을 제거한 버전으로 보안상으로 취약하다.
SNMPv3: 보안기능(데이터 인증, 암호 기능, 재사용 방지)를 제공한다.
커뮤니티 스트링 (Community String)
매니저가 에이전트로부터 데이터를 요청하기위해 사용하는 패스워드이다.
아래 두가지 모두 사용할 수 있지만 쓰기 권한이 있을 경우 중요 설정을 수정할 수 있는 심각한 보안문제를 유발할 수 있으므로 사용 자제를 권고한다.
읽기 전용(read-only) 스트링: 매니저가 MIB에 보관된 데이터를 읽을 수 있음
읽기-쓰기(read-write) 스트링: 매니저가 데이터를 읽고 쓸 수 있음
SNMPv3 보안 서비스
비인가 사용자에 대한 데이터의 변경(무결성) 도청(기밀성) 재사용 공격에 대응하는 기능을 제공하는 사용자 기반 모델(USM)과 인가된 사용자의 MIB 접근 통제 기능을 제공하는 뷰기반 접근통제 모델(VACM)에 의해 제공된다.
보안매개변수
필드 | 설명 |
Authoriactive 엔진ID Authoriactive 엔진부트횟수 Authoriactive 엔진시각 |
재전송 공격 방지 |
사용자 인증 매개변수 |
위장 공격, 메시지 위 변조 공격 방지 |
암호 매개변수 |
도청/스니핑 공격, 정보노출 방지 |
'Network > Network Theory' 카테고리의 다른 글
FTP (File Transfer Protocol) 란? (6) | 2022.10.19 |
---|---|
DNS (Domain Name System)란? (3) | 2022.10.03 |
DHCP(Dynamic Host Configuration Protocol) 란? (0) | 2020.08.19 |
[Network] ARP, RARP,GARP 개념 (0) | 2020.02.11 |
[Network] ICMP(Internet Control Message Protocol) 란? (0) | 2019.11.20 |
공부&일상 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요! 질문은 언제나 환영입니다😊