on host running nagios (assuming you're running centos or some redhat derived system) as root yum install gmp gmp-devel gmp-static perl-Math-GMP -y use perl's cpan to install Net::SSH::Perl, Nagios::Plugin perl -MCPAN -e shell cpan> install edit your commands.cfg file (from RPM install, the file is /etc/nagios/objects/commands.cfg) add lines # 'check_FS_ssh' command definition define command{ command_name check_FS_ssh command_line /usr/bin/perl $USER1$/check_FS_ssh -H \ $HOSTADDRESS$ "$ARG1$" "$ARG2$" } in the host definition file, add lines like: define service{ use generic-service host_name HOST.SOME.NET service_description FS-c90-w80 check_command check_FS_ssh!" -w 80 -c 90" notifications_enabled 1 } make sure to set the host name to the correct value this would check all the file systems on host.some.net with a warning level of 80% and critical level of 90%. save copy the perl script check_FS_ssh to plugin dir (on centos using rpms, the path is /usr/lib64/nagios/plugins) and set executable perms as nagios user: ssh-keygen -t dsa on system to be monitored: as root create nagios user copy nagios@(host running nagios):~nagios/.ssh/id_dsa.pub to ~nagios/.ssh/authorized_keys make sure perms on .ssh dir are set to 700 and authorized_keys file to 600 restart nagios on your monitor host and you should now be monitoring file system sizes over ssh. important caveats: these scripts rely on nagios user having a usable shell and home directory on both the system doing the monitoring and the system being monitored. you'll also need a posix compliant df program availabel to the nagios user. it might not be clear from the script/documentation, but the values you set for critical and warning apply to ALL file systems. if you use the ignore option, it's somewhat akin to a regex. so using -i var would stop monitoring (assuming they were filesystems on your machine) /var, /var/tmp, /var/lib/mysql and /var/lib/pgsql.