소개
NSClient++은 Windows와 Linux에서 동작하는 모니터링 에이전트입니다. Nagios, Icinga 같은 시스템에서 출발해 NSCA, NRDP, Checkmk, Prometheus 등 다양한 모니터링 스택에 연결할 수 있도록 설계되었으며, 호스트 상태 질의, 결과 전송, 이벤트 기반 작업 실행의 세 가지 핵심 역할을 수행합니다.
상세정보
다중 프로토콜 지원
NRPE(능동 폴링), NSCA/NSCA-NG/NRDP/Icinga 2 API(수동 푸시), Checkmk(TCP 6556 에이전트 덪프), Prometheus OpenMetrics 스크레이핑을 지원합니다. Graphite, Syslog, SMTP 클라이언트를 통한 결과 전송과 REST API를 통한 사용자 정의 통합도 가능합니다.
시스템 검사
CPU, 메모리, 디스크, 서비스, 프로세스, 이벤트 로그, Windows 성능 카운터(PDH) 등 시스템 상태를 검사하고 Nagios 스타일의 상태 코드와 성능 데이터를 반환합니다. 모든 검사는 동일한 필터/임계값/성능 데이터 엔진을 공유하여 일관된 표현식으로 구성할 수 있습니다.
네트워크 검사
ping, TCP 포트, HTTP, DNS 등 네트워크 상태를 확인하는 검사를 제공합니다. check_http는 JSON 응답 본문에서 지정한 경로의 값을 추출하여 임계값 비교와 성능 데이터로 활용할 수 있습니다.
보안 상태 검사 (CheckSecurity)
호스트의 보안 상태를 점검하는 모듈입니다. 인증서 만료(check_certificate), 방화벽 프로필(check_firewall), 백신 상태(check_antivirus), BitLocker 암호화(check_bitlocker), Secure Boot(check_secureboot), NLA(Network Location Awareness)(check_nla), 로그온 사용자(check_users) 검사를 포함합니다. check_certificate와 check_users는 모든 플랫폼에서 동작하며, 나머지는 Windows 전용입니다.
확장 기능
PowerShell, 배치, 셸 스크립트를 그대로 활용하는 ExternalScripts, 추가 런타임 없이 인-프로세스로 실행되는 LuaScripts, 호스트에 Python이 설치된 경우 사용하는 PythonScripts, C++ 플러그인 API, 스크립트와 설정을 번들로 배포하는 Zip 모듈 등 다양한 확장 방식을 지원합니다.
어떤 모니터링 시스템과 연동할 수 있나요?
Nagios, Icinga, Naemon, Op5, Checkmk, Prometheus 등 NRPE, NSCA, NRDP, REST 등 다양한 프로토콜을 사용하는 시스템과 연동할 수 있습니다.
Windows에 어떻게 설치하나요?
winget을 사용하는 경우 winget install --id Mickem.NSClient --exact 명령으로 설치할 수 있습니다. MSI 인스톨러를 다운로드해 대화형 또는 무음 설치로 진행할 수도 있습니다.
Linux에서도 동작하나요?
Ubuntu 24.04 LTS, Rocky Linux/RHEL/AlmaLinux 9 및 10용 패키지가 제공됩니다. 일부 모듈은 Windows 전용이므로 필요한 기능의 플랫폼 지원 여부를 확인해야 합니다.
시스템 요구사항
- Windows 10/11 또는 Windows Server 2016/2019/2022/2025 (x64/x86/ARM64) - Linux: Ubuntu 24.04 LTS, Rocky Linux/RHEL/AlmaLinux 9 또는 10 (x86_64/aarch64) - Windows에서 설치 시 winget 패키지 관리자 또는 MSI 인스톨러 - Python 스크립트 사용 시 호스트에 Python 설치 필요 - 모니터링 서버(Nagios, Icinga, Naemon 등)와의 통신 네트워크 경로


