본문으로 바로가기
728x90
반응형

SNMP는 장비간에 모니터링을 하기위해서 많이 사용합니다.

개발자들이 협의를 하여 인터페이스를 정의할 수 있지만, SNMP를 사용하면 기본적인 값들은 다 만들어져 있습니다.

예를 들면 CPU, MEMORY, DISK, NETWORK 등 에 대한 모든 정보들을 손쉽게 알 수 있습니다.

SNMP에는 MIB과 OID의 개념이 있습니다.


MIB(Management Information Base)는 시스템에서 관리되는 객체들의 계층적인 구조를 정의한 데이터베이스입니다.

즉, 필요한 값들을 MIB에 정의해두고, MIB을 이용하여 각각의 값들을 불러올 수 있습니다.

MIB은 기본 MIB을 사용할 수도 있고, 사용자가 필요할 경우 MIB을 추가할 수 있습니다.

OID(Object ID)는 각각의 값에 대한 아이디라고 보시면됩니다.

OID는 1.3.6.1.2.1.1.1 이런식으로 되어 있고, 계층적인 구조로 되어 있습니다.

OID를 통해서 특정 값들을 가져올 수 있습니다.

예를 들면 1.3.6.1.2.1.1.1이란 OID는 시스템 설명 정보를 나타냅니다.


SNMP는 3가지 버전이 있습니다.

v1, v2, v3 3가지이고, 아무래도 가장 최신 버전을 많이 사용합니다.

v1, v2는 많이 사용하지 않으니 넘어가고 v3에 대해서 간단히 설명드리겠습니다.

SNMPv3의 특징은 다음과 같습니다.

1. 인증 : SNMP 통신의 무결성을 보장하기 위해 인증을 제공합니다.

2. 암호화 : 패킷을 보호하기 위해서 데이터를 암호화할 수 있습니다.

3. 보안 프로토콜 : 인증을 위해 MD5 또는 SHA 알고리즘을 사용합니다.

암호화를 위해서는 DES 또는 AES 알고리즘을 사용합니다.

4. 보안레벨 : NoAuthNoPriv(인증X암호화X), authNoPriv(인증O암호화X), authPriv(인증O,암호화O) 총 3가지 보안레벨이 있습니다.

5. 액세스 컨트롤 : 사용자에 대한 정책을 적용할 수 있습니다.

v1, v2 보다는 보안적으로 강화가 되었습니다.

 

snmp의 경우 리눅스에서 snmpwalk, snmpget, snmpset 등의 명령어를 사용할 수 있습니다.

ex) 
snmpwalk/snmpget/snmpset -v 3 -u [사용자 이름] -l [보안 레벨] -a [인증 프로토콜] -A [인증 비밀번호] -x [암호화 프로토콜] -X [암호화 비밀번호] [호스트] [OID]

]# snmpwalk -v 3 -u username -l authPriv -a SHA -A password -x AES -X password localhost 1.3.6.1.2.1.1.1

]# snmpget -v 3 -u username -l NoauthNoPriv localhost 1.3.6.1.2.1.1.1

]# snmpset -v 3 -u username -l authNoPriv -a SHA -A password localhost 1.3.6.1.2.1.1.1 "test@test.com"

위와 같이 사용할 수 있습니다.

오늘 포스팅은 여기까지하겠습니다.

728x90
반응형