Infelizmente, pode haver várias coisas, a primeira coisa que eu faço é ativar o registro ssh no servidor ssh para 'DEBUG'.
Além disso, suponho que você esteja usando o check_ssh para monitorar o servidor ssh nas caixas. Dentro de nagios, existem algumas coisas que você pode fazer para ver qual comando está sendo executado exatamente. Se você tiver acesso ssh ao servidor nagios, você pode apenas fazer o login e olhar para o nagios services.cfg, para encontrar exatamente o que o plugin nagios está sendo chamado, com exatamente quais switches.
Então olhe para commands.cfg para ver o que está sendo executado. Em seguida, tente usar esse comando para testar o servidor ssh manualmente a partir da linha de comando.
A outra maneira é usar a interface do nagios. Na barra de navegação à esquerda, na parte inferior há um link de configuração. Clique nele, em seguida, usando o menu suspenso, vá para serviços e encontre exatamente qual plug-in está sendo chamado para esse serviço. Em seguida, usando a expansão do comando dropdown goto e obtenha o comando dessa forma. Em seguida, verifique manualmente.
Por fim, verifique se o SELinux está habilitado. Nesse caso, o contexto do selinux provavelmente precisa ser alterado no arquivo. Se você estiver usando algo como fantoche ou chef, é possível que ele esteja brigando pelo arquivo sendo consertado e depois quebrado. Etc.
ATUALIZAÇÃO:
Eu tentaria adicionar -E e / ou -S ao comando check_by_ssh. Às vezes a saída ssh estranha pode atrapalhar a conexão se ela acha que deveria estar esperando. Além disso, adicionar -v dará uma indicação do que está acontecendo.