AccessNagios can Ping ClientNagios can reach TCP/6556 on ClientNagios can SSH to ClientClient can SSH to NagiosCan Install Software 


Host that you can only ping

Set the Agent type to Ping-Only

Make sure you have no "manual checks" that apply to ALL_HOSTS

Check_MK will follow the rules you create so it would try to fetch the data for your manual checks. Avoid this by making them apply only to the systems that have the "tcp" aux tag. 

Host that you can't ping

Create a new Agent type called noping

Create a check_dummy active check

Assign this as the host check for hosts with the "noping" Agent type.


For non-WATO users:

extra_nagios_conf += """
define command {
   command_name host_check_dummy
   command_line check_dummy 0
extra_host_conf["check_command"] = [ ( "host_check-dummy", ["no-ping"], ALL_HOSTS ), ]


Host where you can't reach port 6556

Can you reach SSH instead?

Create a new Agent type called sshpull

Use a datasource_program that calls ssh for connecting to the client

Let it use SSH Force-Command to run the agent

If you can still ping, don't modify the host check. Otherwise, create a different host check.

Host where you can't reach ssh but that could reach the nagios server

Use the mechanism of datasource_programs, i.e. if the clients can reach the nagios server via SSH, you could use check_mk_remote to push results back.

Create a new Agent type called sshpush

Create a datasource that reads in the Agent result file for sshpush

Create a different host check that interprets the result file.

Host where you can't install software but reach ssh

Modify the agent script to be run via SSH on the host - so i.e. instead of running

ssh remote-host check_mk_agent


ssh remote-host "content_of_check_mk_agent"