解決策 1:
Match
を試す sshd_config
で :
Match User user1,user2,user3,user4
PasswordAuthentication no
またはグループごと:
Match Group users
PasswordAuthentication no
または、コメントで述べたように、否定によって:
Match User !root
PasswordAuthentication no
一致は「別の一致行またはファイルの終わりまで」有効であることに注意してください。 (インデントは重要ではありません)
解決策 2:
Match
sshd_config
で うまくいきます。 Match all
を使用する必要があります openssh 6.5p1 以降を使用している場合は、マッチ ブロックを終了します。例:
PasswordAuthentication no
Match User root
PasswordAuthentication yes
Match all
解決策 3:
これを行うにはいくつかの方法があります - 最初に、2 つ目の sshd デーモンを別のポートで別の設定で実行することが考えられます - これはちょっとしたハックですが、chroot 作業を行えば問題なく動作するはずです。
また、パスワード認証を許可し、1 人のユーザーを除くすべてのパスワードをロックすることもできます。ロックされたパスワードを持つユーザーは、公開鍵で認証することができます。