Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
パスワードなしの ssh ログインが設定されているかどうかを python スクリプトでテストします。通常の ssh コマンドを実行すると、パスワードを受け入れるまでしばらく待機します。ssh がパスワードを要求するとすぐに ssh コマンドがエラーを返す方法はありますか。
これを達成することは可能ですか?
ssh コマンドは非常に多くのオプション セットを受け入れるため、Python コードがシェル コマンドを呼び出していると仮定すると、次のようになります。
ssh -oNumberOfPasswordPrompts=0 <host> "echo hello"
これは、キーが設定されていない場合は即座に失敗し、設定されている場合は即座に完了します。これが、コマンドがホストに渡される理由です。これにより、簡単なテストが得られます。