Sem descrição

Jon Schipp 795602bd9f Merge pull request #43 from liberodark/master há 7 anos atrás
.gitignore 29232e4f99 add .gitignore há 12 anos atrás
LICENSE 3451ba2e85 Initial commit há 12 anos atrás
README.md d723d6c97a support arguments in crashplan script há 11 anos atrás
check_arista.py a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_bhr_queue_size.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_bro.sh 60a63613e8 Update check_bro.sh há 9 anos atrás
check_connections.sh c277bc0261 check_connections: increased default threshold and improved output há 9 anos atrás
check_crashplan.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_crashplan_backup.py a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_enq.sh c899d341ec check_enq.sh: fix bug when more than two queues are specified há 12 anos atrás
check_file_growth.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_filesystem_stat.sh ba5cf0778a add filesystem stat script há 12 anos atrás
check_fs_write.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_load.sh a4789ea1f4 add float value supprot to check_load há 8 anos atrás
check_memory.sh dcf85c1939 check_memory.sh: add plugin to check memory usage on Linux há 12 anos atrás
check_nfs_stale d51a15a89f add new plug-in check_nfs_stale há 12 anos atrás
check_ossec.py a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_ossec.sh 9c216e2d0e check_ossec.sh: add option to exclude multiple services há 12 anos atrás
check_osx_raid.sh 7e667cdcaa Report a rebuilding array as a warning rather than OK há 10 anos atrás
check_osx_smart.sh c725c68344 First commit, including plugins in repository há 12 anos atrás
check_osx_temp.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_pid.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_pps.sh d3df576bb8 check_pps.sh: warning and exit when sysfs and procfs are not present há 12 anos atrás
check_proc_pmem 79043dd38c Nagios plugin to check process group memory consumption há 9 anos atrás
check_rsyslog.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_sagan.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_service.sh 034c2d19f9 Update check_service.sh há 7 anos atrás
check_status_code.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_traffic.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
check_volume.sh a7d1adb3dd add more nagios-plugins i've written há 10 anos atrás
negate.sh 29569d9087 rename check_status_code.sh to negate.sh há 12 anos atrás

README.md

nagios-plugins

A collection of Nagios Plugins I've written for production unix environments.

A few of the scripts like check_service.sh and check_volume.sh are designed to be run in heterogenous unix environments and should work on Linux, OSX, AIX, and the BSD's provided a bash or bash-compatible shell to interpret them.

Each script has detailed usage presentable via the -h option and some of scripts include extended usage examples within the top commented section of the script.

One way to run the plugins requiring elevated privileges is to configure sudo on each monitored machine to allow the nagios user to execute the plug-ins in the plug-in directory as root:

$ visudo # Use visudo to edit the sudoers file , or :
$ echo ’Defaults:nagios !requiretty ’ >> /etc/sudoers
$ echo ’nagios ALL=(root) NOPASSWD:/usr/local/nagios/libexec/∗’ >> /etc/sudoers

If that is the case be sure to limit write permissions for the scripts so that one cannot simply update the scripts with malicious code.

Plugins:

Heterogenous Unix (Unices):

check_load.sh - Check a system's load (run queue) via ``uptime''.

check_service.sh - Check the status of a system service.

check_volume.sh - Check free space for a volume or partition.

check_file_growth.sh - Check whether a file is growing in size (e.g. Monitor for stale log files).

check_filesystem_stat.sh - Recursively checks for filesystem input/output errors by directory using stat.

check_traffic.sh - Check rate of traffic type by bpf using tcpdump for interface

negate.sh - Checks exit code of another program and returns a custom Nagios status code based on the result.

OSX only:

check_osx_raid.sh - Check RAID status of a disk. (Find degraded and failing arrays).

check_osx_smart.sh - Check S.M.A.R.T status of a disk. (Find failing disks).

check_osx_temp.sh - Check temperature of system components. (Find systems running hot).

Linux only:

check_connections.sh - Check number of connections/sockets in a given state. Requires iproute2. (Find 10000+ EST connections)

check_pps.sh - Check PPS, BPS, or percentage of line-rate on a networking interface (Find periods of heavy traffic)

Application specific:

check_ossec.sh - Perform multiple checks for a OSSEC server (e.g. Find a disconnected agent).

check_bro.sh - Perform multiple checks for a Bro cluster (e.g. Find stopped workers).

check_enq.sh - Check status of a printer queue on AIX (Find queues in DOWN state)

check_rsyslog.sh - Check for rsyslog disk queue buffers (Find when logs are buffered)

check_crashplan_backup.py - Check latest backup times for crashplan server (uses API), notifies if backups hasn't been completed in 48 hours by default

  1. Add credentials to text file which script will read: printf 'user = admin@company.com\npassword = ChangeMe\n' > /root/crashplan-credentials-for-nagios.txt
  2. Use a. Check all hosts: check_crashplan_backup.py /root/crashplan_creds.txt crashplan.company.com:4285 b. Check single host: check_crashplan_backup.py /root/crashplan_creds.txt crashplan.company.com:4285 server1.company.com
  3. Use sudo when exucuting script with nagios if you put credentials in a file not readable by nagios user
  4. You can edit the max_backup_time variable in the script to adjust the max number of days w/o backup for critical