SSHを使用するときに証明書がユーザーのホームディレクトリにある場合にのみパスワード認証を防ぐことはできますか?

SSHを使用するときに証明書がユーザーのホームディレクトリにある場合にのみパスワード認証を防ぐことはできますか?

パブリックサーバーを起動し、リモートアクセス用にSSHを実行しています。すべての標準人間ユーザーは、認証に証明書を使用します。

ただし、自動化されたソフトウェアがログインに使用するシステムの機能アカウントは非常に制限されていますが、認証のための証明書の使用はサポートしていません。

私はSSHdが証明書を含むすべてのユーザーアカウントに対してパスワード認証を試みることを拒否し、そうでないユーザーアカウントに対してパスワード認証を許可するようにしたいと思います。

答え1

ユーザーが自分の証明書を直接変更できる場合は、時々誰かが間違えて既存の証明書を削除することがあります。これにより、アカウントがパスワード認証に戻ると、ユーザーはそれを知って意図的に悪用する可能性があります。

代わりに、証明書認証のみを許可するようにデフォルト値を設定し、/etc/ssh/sshd_configそのMatch Userユーザーのパスワード認証のみを許可するようにデフォルト値をオーバーライドするブロックを構成ファイルの末尾に作成します。または、パスワード認証を使用する他のユーザーがいる可能性がある場合は、それをブロックし、Match GroupSSHアクセスにパスワード認証を必要とするユーザーを追加するカスタムグループを作成します。

関連情報