13.9. Monitoring SSHD
Problem
You use the SSH daemon on all of your servers for secure remote administration, so you want to set up Nagios to monitor SSH and alert you if it becomes unavailable. You also want to be able to add new servers for monitoring easily.
Solution
Start by setting it up for one server. You'll create a command definition, a host definition, and a service definition by editing commands.cfg, hosts.cfg, and services.cfg. Then, you'll be able to add new servers simply by creating new host definitions, and adding the server names to the service definition.
The default commands.cfg does not contain a command definition for SSH, so add this to commands.cfg:
# 'check_ssh' command definition
define command{
command_name check_ssh
command_line $USER1$/check_ssh -H $HOSTADDRESS$
}Next, add a host definition to hosts.cfg, using your own hostname and IP address:
# SSH servers
define host{
use generic-host
host_name server1
alias backup server
address 192.168.1.25
check_command check-host-alive
max_check_attempts 10
check_period 24x7
notification_interval 120
notification_period 24x7
notification_options d,r
contact_groups admins
}Add your new server to an existing group, or create a new group for it, as this example shows:
define hostgroup{
hostgroup_name misc_servers
alias Servers
members server1
}Now, define the SSH service in services.cfg:
# Define a service to monitor SSH define service{ use generic-service host_name server1 service_description SSH is_volatile 0 check_period ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access