NSClient++

NSClient++ 0.25.0

A simple, secure and powerful monitoring agent for Windows.

  • By MySolutions NORDIC
  • Open Source
  • Updated Oct 12, 2026
Download for Windows

About NSClient++

NSClient++ (a.k.a. NSCP) is a free and open-source monitoring agent originally
built for Nagios/Icinga and now usable with most modern monitoring systems.
It exposes a wide range of system, performance and event-log checks via NRPE,
NSCA, NRDP, REST and Prometheus-compatible endpoints, and can run external
scripts in PowerShell, Python, Lua, Visual Basic and many more languages.

What's new in 0.25.0

The agent reports configuration it ignores, and a robustness pass over scripting and concurrency

0.25.0 makes misconfiguration visible: a section or key nothing reads is now logged, shown in the web UI and reported by nscp settings --validate. Collector-backed checks gain a warmup-state option, kill tree finally works on Linux, and the rest of the release is the harvest of a stress harness, a concurrency audit and a full test of the Lua and Python APIs: a Lua crash under concurrent calls, socket requests stuck behind unrelated slow checks, duplicated events and client payloads, and a long list of smaller fixes.

✨ Highlights

  • 🔍 Configuration nothing reads is reported. A misspelled section, a section without its leading /, or a key above the first section used to be ignored without a word. The agent now warns about each one at startup and on every reload, the web UI shows a *Configuration problems* banner, and nscp settings --validate exits with 1 when it finds any (#647, #1657).
  • ⏱️ warmup-state for collector-backed checks. check_cpu, check_load and, on Linux and macOS, check_memory, check_pagefile and check_network can report ok (or any other status) instead of UNKNOWN while the collector takes its first sample, so a restart need not raise alerts. A collector that is disabled or failing now says so instead of reporting zeros (#1621).
  • 🐧 kill tree works on Linux. The script runs in a session of its own and a timeout signals the whole process group, so backgrounded helpers die with it; unloading CheckExternalScripts now ends running scripts (#1629).
  • 🔒 Lua and Python scripting hardened. A Lua check running twice at once could crash the agent; listing scripts over REST ran every check; and a test of every documented API fixed a dozen bindings that did nothing or crashed (#1642, #1636, #1632).
  • 📡 Socket servers no longer queue behind slow checks. About one NRPE, NSCA, check_mk or NSClient request in a few hundred waited for an unrelated long-running check, which showed up as an occasional Socket timeout (#1642).
  • 🔒 OpenSSL 3.5.9 in the Windows builds, from the 29 September 2026 upstream security release (#1666).

⚠️ Upgrade notes

The full list is on the upgrading page, and the security fixes on the
security notices page.
…

Full release notes »

Technical details

PublisherMySolutions NORDIC
AuthorMichael Medin
Version0.25.0
Release date2026-10-12
LicenseApache-2.0 OR GPL-2.0-only
Installer typewix
Architecturex64, x86
Package IDMickem.NSClient

Links & install command

Install NSClient++ from the command line with Windows Package Manager (winget):

winget install --id=Mickem.NSClient -e

nagiosicinganaemonmonitoringnrpenscanrdpprometheusagentsysadmin

Older versions

  • 0.24.1
  • 0.24.0
  • 0.22.0
  • 0.21.0
  • 0.19.0
  • 0.18.1
  • 0.17.0
  • 0.16.4
  • 0.14.1.0