Windows 10 에서 SNMP 기능 켜기
일반 사용자의 윈도우 10은 자동으로 업데이트를 다운 받아 자동으로 업데이트가 되는 구조로 동작합니다. NMS(Network Management System)에서 관리 해야 할 클라이언트 중 윈도우10 이 있는 경우는 윈도우의 SNMP 기능을 ON 시켜 줌으로서 윈도우 10 클라이언트의 상태정보(CPU, 메모리, 프로세스, 네트워크 등)를 NMS에서 수집 할 수 있습니다.
몇년전까지만 해도 윈도우 10 에서 SNMP를 ON 시키기 위해서는 [Window 기능 켜기/끄기]에서 snmp 기능을 찾아 선택하기만 하면 되었었는데 윈도우 업데이트로 인해서 SNMP 기능은 더 이상 [Window 기능 켜기/끄기] 에서 제공되지 않습니다.
그럼 윈도우 10 에서 SNMP를 사용 못하는 걸까요? 아닙니다.
윈도우 10 에서 SNMP 기능을 사용하기 위해서는 윈도우 [설정]_앱 및 기능 에서 그 기능을 추가 할 수 있습니다.
바탕화면 윈도우 메뉴바에서 윈도우 모양을 선택하면
윈도우 설정 창이 생성 됩니다.
윈도우 설정창의 우측 메뉴 중에 [앱 및 기능] 메뉴를 선택하면 위와 같은 화면이 나타나고 위 화면 중앙(파란색 글씨)의 선택적 기능을 클릭해 줍니다.
그 다음 선택적 기능 창에서 맨 위에 [기능 추가]를 클릭해 주고 아래 처럼 SNMP 라고 타이핑 해주면 2가지의 추가기능이 나옵니다.
아래 SNMP 및 WMI SNMP 공급자를 선택하고 설치를 눌러 주시면 됩니다. 설치가 진행되고 설치가 완료 되면 해당 PC는 SNMP 클라이언트로 동작 할 수 있는 기본 요건을 갖추게 됩니다.
사실 SNMP 서비스가 설치 되었다고 모든 것이 끝나는 것은 아니고 SNMP를 통해 해당 PC를 관리하는 NMS서버와의 통신을 위한 설정들이 필요 합니다.
SNMP 통신은 UDP 기반의 통신이며 포트넘버 161 (SNMP Polling, 서버가 클라이언트에 상태값을 요청하고 결과 값을 받는 포트), 포트넘버 162 (SNMP 클라이언트가 미리 정의된 이벤트 발생 시 서버로부터 상태 요청이 없더라도 SNMP TRAP 정보를 보내는 포트)로 구성 됩니다.
대부분 NMS는 내부망에 위치하기에 위 UDP 161, 162 포트에 대해서 NMS 서버와 통신이 가능 해야 합니다. (제 글 중에 "PortQry를 사용하여 TCP/UDP 열린 포트 확인(포트 스캐너)" 참고)
그리고 SNMP의 보안성을 높이기 위해 SNMP 통신시 Community Name을 통해서 보안성을 체크 합니다. 일반적으로 기본 값은 public (읽기전용), private (읽기/쓰기 전용)이 많이 사용되나 보안을 위해 커뮤니티 네임은 수정해 주는게 맞습니다.
이제 윈도우에서 SNMP 서비스가 정상 동작인지 확인해 보고 SNMP 서비스 세팅에 대해서 알아 보겠습니다.
[윈도우키 + R] 눌러서 윈도우 실핼창에서 서비스 관리 페이지를 불러 옵니다.
서비스 창에서 SNMP 관련 서비스 항목을 찾아 보면 아래 그림과 같이 SNMP 서비스가 정상 동작 중인지를 확인 할 수 있습니다.
그러면 위에서 말씀드린대로 SNMP 서비스를 NMS서버와 통신을 하기위한 세팅을 확인 하겠습니다. SNMP 서비스를 더블클릭 하면 SNMP 서비스의 상세 화면이 표시 됩니다.
참고로 SNMP 서비스 바로 아래에 있는 SNMP 트랩 서비스는 이 PC가 SNMP 서버 처럼 다른 SNMP 클라이언트로 부터 트랩정보를 받는 서비스이므로 윈도우를 SNMP 클라이언트로 모니터링 하고자 하실때는 필요 없으니 참고하십시요.
서비스 상세 화면의 메뉴바를 보시면
- 일반 : SNMP 서비스의 일반 설정 값 (시작유형 설정, 서비스 중지/시작 등)
- 로그온, 복구, 종속성 : 윈도우 SNMP 서비스에 대한 일반 권한 정보 (타 윈도우 서비스와 동일한 내용으로 수정이나 설정 필요 없음)
- 에이전트 : NMS 서버에서 SNMP를 이용하여 이 컴퓨터의 정보를 수집 할 시 기본 MIB에 명시한 에이전트의 <연락처>, <위치> 정보 값으로 아래와 같이 필요 정보를 입력 해 주시면 됩니다.
- 트랩 : 트랩은 앞에서 정의해드린대로 클라이언트가 자신의 상태를 모니터링 하다가 정의된 이벤트 발생시 NMS 서버에 이상 메세지를 보내 줄때 사용하며 NMS서버와의 Community Name을 NMS 서버와 동일하게 맞추어 주시면 됩니다.
트랩 대상은 NMS 서버 주소이며 대규모 사이트에서는 여러대의 NMS를 보유하기때문에 필요한 IP 정보 혹은 도메인 네임을 입력해 주시면 됩니다.
- 보안 : 보안부분도 현재 이 클라이언트에 NMS 서버가 SNMP 값을 요청 했을때 사전에 정의된 서버 인지를 확인 하여 응답여부를 체크하는 메뉴라고 보시면 됩니다.
일반적인 NMS 환경에서는 Read Only용 Community Name 과 Read/Write 용 Community Name을 정의 합니다.
주의 하실점은 Read/Write에 관한 권한은 필요 유무룰 반드시 확인 하시고 설정 하셔야 합니다.
왜냐하면 SNMP 통신을 이용하여 MIB 데이터를 NMS가 수집 하거나 MIB 정보 중 Write 가능한 값을 NMS에서 변경 가능하기 때문입니다. 더 자세히 말씀드리면 네트워크 인터페이스를 업/다운 시키거나 특정 프로세스를 Kill 시켜버리거나 할 수 있으며 SNMP 장비인 경우는 설정값, 혹은 리부팅 등도 가능 합니다.
이러면 이 PC는 NMS 서버에서 관리/모니터링 할 수 있도록 세팅을 모두 맞쳤습니다.
등록이 끝났으면 테스트용 NMS서버에서 해당 PC의 정보를 수집 관리 할 수있습니다.