拙作でアレなんですが、Net::Scan::SSH::Server::SupportedAuth を使うといいかも。
同梱しているsample/scan-sshauth.plを使うと、
$ scan-sshauth.pl 10.6.25.0/24 HOST : SSH2 SSH1 (K=publickey, P=password) =================================== 10.6.25.0 : 2=-- 1=-- 10.6.25.1 : 2=K- 1=-- 10.6.25.2 : 2=K- 1=K- 10.6.25.3 : 2=K- 1=K- 10.6.25.4 : 2=-- 1=-- 10.6.25.5 : 2=-- 1=-- 10.6.25.6 : 2=-- 1=-- 10.6.25.7 : 2=-- 1=-- (snip)
的なことができます。
この例の場合、
- 10.6.25.1はSSHv2の公開鍵認証だけを受け入れている
- 10.6.25.2はSSHv2の公開鍵認証と、SSHv1の公開鍵認証を受け入れている
となります。
scan-sshauth.plをいじってYAMLを吐くようにしてPlaggerでNotify::*するとか、Assurer のAssurer::Plugin::Test::SSH::SupportedAuthとかして、continuousにチェックするといいんではないかと思うす。
だれがいったか忘れましたが、「初期構成状態の継続的確認=監視」というのを思い出しました。