Nagios Plugins 2.1.2 Released

The Nagios Plugins Development Team is proud to announce that nagios-plugins 2.1.2 has been released and is available for download.

Enhancements:
– check_snmp’s performance data now also includes warning/critical thresholds
– New check_snmp “-N” option to specify SNMPv3 context name
– New check_nt “-l” parameters: seconds|minutes|hours|days
– New check_mailq -s option which tells the plugin to use sudo
– New -W/-C option for check_ldap to check number of entries
– The check_http -S/–ssl option now accepts the arguments “1.1” and “1.2” to force TLSv1.1 and TLSv1.2 connections, respectively
– The check_http -S/–ssl option now allows for specifying the desired protocol with a “+” suffix to also accept newer versions
– New check_disk “-v” option to show troubled partition in verbose mode
– Added a parameter -w (–max_warning) to check_log.sh defining upper value to return a warning code
– Add support for LDAP URIs in check_ldap
– Provide performance data in check_file_age
– Added –hostname support to check_by_ssh
– Add check_ifstatus option to ignore interfaces by name
– Introduce support for SNMPv3 context using “-N” option in check_snmp:
– Added IPv6 support to check_snmp.c
– Added support for checking SSL-Websites through Proxies to check_http

Fixes:
– check_dig can now also use “drill” instead of “dig”
– check_dig now honors the -4 and -6 switches
– Fix check_jabber to work with Openfire servers
– Fix “-n” and “-u” options in ifstatus.pl to ignore if either is set, not just both
– Fix perfdata to comply with perfdata UOM definition in check_mrtgtraf
– Change warning to critical for protocal/version errors in check_ssh
– Make header_value() and chunked-encoding decoding more robust in check_http
– Fix Host header if explicitly set with -k in check_http
– Enable check_proc to monitor processes in PID name-spaced environments.
– Prevent large tide values from truncation in check_disk
– Timeticks are now being parsed correctly before performance data in check_snmp
– Fixed mailer names in check_mailq.pl
– Improved output when swap space has zero size incheck_swap
– Check if OpenSSL supports SSLv3
– Optimize output if SSL certificate expires in less then 24 hours
– Increased MAX_RE_SIZE from 256 to 2048 in check_http
– Changed the ps command to allow for longer output in check_procs
– Allow a server to reply using only ‘HTTP/1.x 200 OK’ and a body, with no headers in check_http
– Other more minor fixes

 

Download Nagios-Plugins 2.1.2 here.

Thanks to all who have contributed toward this release. If you need assistance installing or using the plugins, please visit our general support forum. Bug reports, feature requests, and additional comments are welcome and may be posted to our plugin development forum.

Nagios Plugins 2.1.1 Released

The Nagios Plugins Development Team is proud to announce that nagios-plugins 2.1.1 has been released and is available for download.

Dang release gremlins.

FIXES
lib/utils_cmd.c – Reverted to fix check_procs segfault (abrist)

Download Nagios-Plugins 2.1.1 here.

Thanks to all who have contributed toward this release. If you need assistance installing or using the plugins, please visit our general support forum. Bug reports, feature requests, and additional comments are welcome and may be posted to our plugin development forum.

Nagios Plugins 2.1.0 Released

The Nagios Plugins Development Team is proud to announce that nagios-plugins 2.1.0 has been released and is available for download.

As promised, both the findbin and timeout_state branches have included in this release. The nasty awk script for perl plugin paths has been removed and replaced with the functionality of FindBin.  Enhancements to the timeout (-t) switch were included in the timeout_state branch.  See below for details:

-t <interval>:<state>

Interval is a positive integer.
State is case insensitive and one of:
State name: ok/warning/critical/unknown
Or stateid: 0/1/2/3

For example:
-t 5:0 = 5 seconds timeout with state ok
-t :warning = default timeout with state warning
-t 5 = 5 second timeout with default state

Additionally, check_http now supports chunked-encoded pages, check_radius now supports the FreeRADIUS Client library, and  check_snmp now support IPv6.

There were many other small fixes from coverity and our fantastic community, as well as a large number of smaller enhancements,  bug fixes, localization fixes, and typo corrections.

Download Nagios-Plugins 2.1.0 here.

A full list of included enhancements and fixes are listed below:

SECURITY FIXES
ssl_utils.c – Disable SSLv3 & SSLv2 autonegotiation by default to limit poodle and other weak cipher attacks (sreinhardt)

ENHANCEMENTS
Timeout States Implemented – Plugins that support a timeout state will now also support specifying the exit state in case of timeout with the syntax -t <timeout>:<state> (abrist)
Perl plugins now use FindBin for path discovery, obsoleting the nasty AWK script (evgeni, abrist)
check_http.c – Added support for chunked transfer-encoding (koenwtje, dermoth, sreinhardt)
check_radius.c – Added support for the FreeRADIUS Client library (weiss)
check_snmp.c – Added thresholds to performance data (seemuellera)
check_snmp.c – Added new option (-N) for SNMPv3 context (Johannes Engel)
check_snmp.c – Added IPv6 support (abrist)
check_ldap.c – Added a new option (-U) for LDAP URI support (qris)
check_ifstatus.pl – Added new option (-n) to exclude interfaces (peelman, weiss)
check_file_age.pl – Performance data output added (hggh)
check_mailq.pl – Now supports sudo (Christopher Schultz, weiss)
check_log.sh – Added a new option (-w) defining upper value to return a warning code (arvanus)

Download Nagios-Plugins 2.1.0 here.

FIXES
check_by_ssh.c – Added –hostname support (sni)
check_dbi.c – Spelling corrections (sreinhardt)
check_dig.c – Fixed to work with dig/drill tools and ip version switch is now respected (abgandar)
check_disk.c – Fix for hanging filesystems (Gerhard Lausser)
check_disk.c – Partitions in problem state now reported in verbose mode (waja)
check_disk.c – Prevent large tide values from truncation (JesperForsberg)
check_dns.c – Server specific fixes and other cleanup (sreinhardt)
check_http.c – Some small changes for readability (koenwtje)
check_mrtgtraf.c – Added verbose output (sreinhardt)
check_mrtgtraf.c – Perfdata now complies with UOM definition (Bobzikwick)
check_ntp_peer.c – No longer uses uninitialized results for max state (sni)
check_procs.c – Rare race condition fixed (Mikael Falkvidd)
check_ssh.c – Now exits with CRITICAL when version/protocol string check fails to match (sni)
check_tcp.c – Help description of escape characters now correct (Sebastian Herbszt)
check_tcp.c – Fix to support Openfire servers with check_jabber (weiss)
check_ups.c – Spelling corrections (sreinhardt)
pst3.c – Fix for unclosed file handle in pst3 on Solaris (jwinkle01)
plugins-scripts/*.sh – Trusted path fixes (waja)
netutils.h – Decreased max path to 104 bytes to compensate for BSD paths (sreinhardt)
configure.ac – Fix for HP-UX ps command (Tontonitch)
lib/utils_cmd.c – Fix for potential segfault when ulimits are set to unlimited (nafets)
lib/parse_ini.c – Many small fixes from coverity scans and the community (sreinhardt, weiss)
lib/util_base.c – Code cleanup (sreinhardt)
lib/utils_base.c – Add EIUD to state retention path for multi-user permissions support (sreinhardt)
po/* – Spelling corrections (sreinhardt)
Multiple resource leaks fixed (sreinhardt)
Many other small fixes and cleanup caught by coverity (multiple contributors)

Download Nagios-Plugins 2.1.0 here.

TESTS
Many small fixes to tests (multiple contributors)

LOCALIZATION
Many small fixes for locales and localizations (multiple contributors)

Thanks to all who have contributed toward this release. If you need assistance installing or using the plugins, please visit our general support forum. Bug reports, feature requests, and additional comments are welcome and may be posted to our plugin development forum.

Download Nagios-Plugins 2.1.0 here.

Nagios Plugins 2.0.3 Released

The Nagios Plugins Development Team is proud to announce that nagios-plugins 2.0.3 has been released and is available for download.

This release is mostly small bug fixes and additional protections against the SUID vulnerability discovered by Dawid Golunski. As we are now using coverity to scan for small bugs, there will be a number of small commits in the near future.

The mailq autodetection commits were reverted as there were issues with parsing performed by the awk script. We decided to use FindBin in lieu of shimming the awk regex. You can try out the proposed FindBin changes in the branch “findbin”.  Expect the branches findbin and timeout_state to be merged into the next major release (2.1.0).

A full list of included enhancements and fixes are listed below:

SECURITY FIXES

  • parse_ini.c – Additional fixes for the SUID plugins vulnerabilities (sreinhardt)
  • Added Gnulib module idpriv-droptemp (weiss)

FIXES

  • check_dns.c – Resolved issues with reverse lookup (sreinhardt)
  • check_dns.c – Changed query types from ALL to ANY (sreinhardt)
  • common.h – Include fixes for esoteric AIX compile issues (emislivec)
  • negate.c – Small fixes from coverity (66479) (66480) (sreinhardt)
  • check_dhcp.c – Small fix from coverity (66488) (sreinhardt)
  • check_http.c – Potential memory leak and overflow fixed from coverity (66514) (sreinhardt)
  • check_ntp.c – Small fix from coverity (66524) (sreinhardt)
  • utils_cmd.c – Small file descriptor fix from coverity (66502) (sreinhardt)
  • check_apt.c – Small fix for from coverity (66531) (sreinhardt)

REVERTS

  • check_mailq – Reverted autodetection commits to avoid awk parsing issues. Autodetection will return in version 2.1.0 as part of the changes in the FindBin branch (abrist)

Thanks to all who have contributed toward this release. If you need assistance installing or using the plugins, please visit our general support forum. Bug reports, feature requests, and additional comments are welcome and may be posted to our plugin development forum.

Nagios Plugins 2.0.2 Released

The Nagios Plugins Development Team is proud to announce that nagios-plugins 2.0.2 has been released and is available for download.

This release was prompted a bit earlier than originally expected by a newly discovered security vulnerability reported by Dawid Golunski on exploit-db. It concerned an arbitrary file access vulnerability with the SUID binaries (check_icmp, check_dhcp) and the extra-opts configure flag (which is enabled by default).  Fixes were applied globally, so the new restrictions on fopen should apply to all plugins.

Additionally, a few plugins were updated to successfully build on windows under cygwin, and some small changes were made to plugin output and verbosity.

A full list of included enhancements and fixes are listed below:

SECURITY FIXES

  • Fixed file access vulnerability with SUID binaries (check_icmp, check_dhcp) and extra-opts.  Fixes were applied globally, so the new resrictions on fopen should apply to all plugins. Special thanks to Dawid Golunski for the submission. More information: http://www.exploit-db.com/exploits/33387/  (sreinhardt) (emislivec)

ENHANCEMENTS

  • check_disk – Now compiles in cygwin on windows (Gunnar Beutner)
  • check_ping – Now compiles in cygwin on windows (Gunnar Beutner)
  • check_users – Now compiles in cygwin on windows (Gunnar Beutner)
  • netutils.c – Connection error verbosity increased. C plugins will now differentiate file socket errors from connection errors (Davide Madrisan)

FIXES

  • check_nt.c – Changed ‘Mb’ to ‘MB’ in MEMUSE output for clarity (abrist)

Thanks to all who have contributed toward this release. If you need assistance installing or using the plugins, please visit our general support forum. Bug reports, feature requests, and additional comments are welcome and may be posted to our plugin development forum.

Nagios Plugins 2.0.1 Released

The Nagios Plugins Development Team is proud to announce that nagios-plugins 2.0.1 has been released and is available for download. This is mostly a maintenance release, focusing on check_dns stability and some bugs in the new check_uptime plugin. A full list of included enhancements and fixes are listed below:

ENHANCEMENTS

  • check_snmp.c – Added thresholds to performance data (jccomputing)
  • check_http.c – Added */* MIME support (Alex Gottschalk)
  • check_mailq.pl – Added autodetection for mailq implementation (evgeni)
  • check_mailq.pl – Added autodetected version to output (evgeni)

FIXES

  • check_dns.c – Record type corrections for default check (sreinhardt)
  • utils.c – Changed comment type – now supported by AIX and should no longer fail compile (hkpatv)
  • check_uptime.c – Fixed timeout option (abrist)
  • check_uptime.c – Fixed help output and updated verbose usage (abrist)
  • check_uptime.c – Removed executable permissions on check_uptime.c (abrist)
  • check_uptime.c – Removed old code (madrisian)
  • check_pgsql.c – Fixed help output (weiss)
  • lib/Makefile.am – Avoid deprecated includes (madrasian)
  • lib/tests/Makefile.am – Avoid deprecated includes (madrasian)
  • plugins/Makefile.am – Avoid deprecated includes (madrasian)
  • check_apt.c – Removed the verbose flag suggestion (skottler)
  • check_oracle.c – Changed regex to compensate for tns string match edge cases (waja)
  • check_snmp.c – Always privides the security name when noAuthPriv is specified (catharsis)

Thanks to all who have contributed toward this release. If you need assistance installing or using the plugins, please visit our general support forum. Bug reports, feature requests, and additional comments are welcome and may be posted to our plugin development forum.

Nagios Plugins 2.0 Released

The Nagios Plugins Development Team is proud to announce that nagios-plugins 2.0 has been released and is available for download.  In addition to numerous bug fixes and new options, we have included a new plugin – check_uptime (only supported on Linux at the moment – more platforms to follow in the future).

ADDITIONS

  • check_uptime – New plugin (only supports Linux due to dependency on clock.gettime()).  More supported platforms to follow.

ENHANCEMENTS

  • check_mysql_query – Added performance data (sreinhardt)
  • check_file_age – New option -i/–ignore-missing which returns OK if file is missing (waja)
  • check_nt – Added performance data to UPTIME -l seconds|minutes|hours|days (abrist)
  • check_hpjd – New -p option for port specification (abrist)
  • check_disk – new -n option for multi-line output (tmcnag)
  • check_mysql_query – New -f/-g options for reading for mysql options file (awiddersheim)
  • check_mailq – New -M option for nullmailer support in the mailserver (Luca Corti)
  • check_dig – New -r option for specifying number of retries (abrist)
  • check_ntp_peer – Added state output for each checked metric (abrist)
  • check_dns – Warning and critical thresholds added to perfdata (jccomputing) (abrist)
  • check_dns – New -q options for several query types (AAAA,TXT,SRV,MX) (sreinhardt)
  • check_tcp – Status output now includes hostname when host_specified is set (madrisan)
  • check_mysql – New -n/–ignore_auth option to ignore authentication failure (Julius Kriukas)
  • check_ssh – New -P/–remote-protocol option to monitor the ssh protocol version (monitoring-user)
  • check_ntp – New -o/–time-offset option to compensate for the ntp server’s offset relative to the local server (monitoring-user)
  • configure.ac – Added support for –disable-maintainer-mode (weiss)

FIXES

  • check_http – The -C option no longer resets SSL version if e.g. -S 1 -C 5 is specified
  • check_ide_smart – Now defaults to nagios-compatible output (sreinhardt)
  • Fixed misleading timeout message for non-network plugins (sreinhardt)
  • check_swap – Now fails with 100% usage and a new status output when swap is disabled or missing (abrist)
  • check_ifstatus – Removed commas from perfdata – should now output valid perfdata in nagios format (waja)
  • check_ping – Now gracefully handle the “time of day goes back” error.  This issue is rare, most will not notice the change (waja)
  • check_disk – Help output was clarified that it supports mount paths or partitions instead of just paths and partitions (waja)
  • check_ide_smart – Fixed attribute comparison (waja)
  • check_ntp_time – Fixed average time calculation (larsi)
  • NPTest.cache – Empty or Missing file no longer blocks writing to the file (dermoth)
  • parse.ini – Fixed newlines in output (dermoth)
  • check_dig – Fixed wrong IPv6 arguments order (Stéphane Bortzmeyer)
  • check_dig – Now honors timeout value specified by switch -t (Jethro Carr) (abrist)
  • configure.in – Renamed to configure.ac to avoid deprecation warning (abrist)
  • configure.ac – The option –enable-extra-opts is now enabled by default (dermoth)
  • check_snmp – Now handles negative values properly (Stephane Lapie)

WARNINGS

  • check_procs – Now ignores its parent process to avoid unexpected results when invoked via certain shells
  • utils.sh – No longer defines ECHO (weiss)
  • check_ide_smart now default to nagios output, -n kept for legacy support (sreinhardt)
  • check_ntp_peer – Status output changed, now includes individual state for offset, truechimers, stratum, and jitter (abrist)
  • check_tcp – Status output has changed, now includes hostname (madrisan)

TESTS

  • check_procs – Performance data tests added (dermoth)
  • check_snmp – Added tests for negative thresholds (dermoth)
  • check_hpjd – Added tests for port options (abrist)
  • check_dns – Added new tests for query types (abrist)
  • check_pop – Added option to enable ssl for the test (abrist)
  • check_jabber – Fixed status output tests to account for hostname (abrist)
  • check_procs – Tests no longer fail if uid 501 is not present (sni)
  • check_mysql – Test prompts clarified (dermoth)
  • check_file_age – Added tests for –ignore-missing (waja)

OTHER

  • Numerous small typos fixed.
  • Help output has been changed in many places for clarity and verbosity.

Thanks to all who have contributed toward this release. If you need assistance installing or using the plugins, please visit our general support forum. Bug reports, feature requests, and additional comments are welcome and may be posted to our plugin development forum.

Introducing the Nagios-Plugins Security Team Lead — Spenser Reinhardt

We would like to introduce the second team member in charge of maintaining the Nagios-Plugins Project — Spenser Reinhardt.  Spenser has been named the Nagios-Plugins Security Team Lead and has already begun contributing to critical bug fixes and plugin improvements.

Like our Project Team Lead Andy Brist, we also subjected Spenser to a rigorous interview in order to give community members an inside look at the latest addition to the Nagios-Plugins Development Team.  View the interview below and get to know the new Nagios-Plugins Security Lead — Spenser Reinhardt:

Introducing the Nagios-Plugins Team Lead — Andy Brist

As you may have heard, there have been some changes to the Nagios-Plugins Development Team.  The greatest of which comes in the form of new project maintainers.  Both Andy Brist and Spencer Reinhardt will be heading the Nagios Plugins project moving forward and have the knowledge and expertise to do so.

We thought that the best way to introduce the new team members to the community was to subject them to a grueling interview process.  This short video introduces Andy Brist, the New Nagios-Plugins Team Lead, and sheds some light on his Nagios credentials as well as his personal interests.

Uncomfortable Info On The Plugin Team Changes

Change isn’t always easy, but sometimes its necessary. Recently, the Nagios Plugins website and team have undergone some changes, and for good reason.  There have been a few people who have caused a stir about the changes, and there’s been some misunderstanding as to the reasons behind those changes, so we thought we’d share some relevant info with the community.

The changes were made because there was an organized effort by some individuals to undermine the project and move people to another solution.  Some of the previous team members decided “recently” to switch development to a new project after we started to employ some changes.  Except their decision to switch wasn’t recent – they made it months ago.  This can be evidenced in part by their Git commits which show them beginning to make a switch as early as last September.  You’ll notice the screenshot below showing a change that was made to start transitioning the Nagios plugins project to a new domain and project (original URL).

plugin-swtich

In addition to this and other similar changes, some of the previous team members started promoting competitors of Nagios in an effort to move people away from the project.  Our attempts to get a response from the previous team lead on multiple occasions to clarify what was happening was met with silence.  So we acted.

We stepped in to prevent these individuals from subverting the project.  We’ll do what we need to do to preserve the various Nagios projects from people and companies with ulterior motives.

Its been an interesting study to watch what some people try to get away with in order to promote their ulterior motives.  One example of this is the outright lies and FUD promoted by Michael Friedrich, as can be seen in his calls for the Fedora/RedHat maintainers to automatically switch Nagios users to a competing solution.  Not surprising that Michael works for Netways GmbH – the same company that recently wrongfully filed Nagios trademark and domain registrations in secret in order to undermine Nagios and the community.  Only after we shamed them by publicly disclosing the details, did Netways finally return the trademarks and domains they were leveraging.  I think its safe to say that words like honesty, integrity, and ethics aren’t valued or even understood by Netways and its employees.

We understand that it can get uncomfortable for individuals when evidence is presented that shows they acted less than honorably.  We at Nagios believe that who you work with is just as important as what it is that you’re working on.  We will always chose to work with individuals with high ethical standards and a great attitude.  If you have skills, but you don’t have values, you won’t be on our team.  Period.

– Ethan Galstad, Nagios Founder and Defender