PasswordAuthentication noそして公開鍵による証明書を設定しない状態でsshによるログインを試みると、なぜかパスワードでの認証(Challenge Response Authenticaion)によりログインできてしまいます。
ChallengeResponseAuthentication no
いろいろと試してみると、これらのキーワードに関するコメントによる説明があるところで記述しないといけないようです。具体的には以下のようなコメントになっていました。
# Change to yes to enable built-in password authentication.ここを以下のように変更すると、望みのように公開鍵による証明書での認証のみになりました。
#PasswordAuthentication no
#PermitEmptyPasswords no
# Change to no to disable PAM authentication
#ChallengeResponseAuthentication yes
# Change to yes to enable built-in password authentication.デフォルトで「PasswordAuthentication no」となっているので、この部分は改めて記述する必要がありませんが、設定を明示するために記述しています。
#PasswordAuthentication no
#PermitEmptyPasswords no
PasswordAuthentication no
# Change to no to disable PAM authentication
#ChallengeResponseAuthentication yes
ChallengeResponseAuthentication no
推測ですが、この先にある「UsePAM yes」の設定より先に記述する必要があるのかもしれません。なので、sshd_configの設定は、キーワードに関するコメントによる説明付近で記述するとを基本にしたほうがよいようです。
man ssh_configの先頭で付近で「For each parameter, the first obtained value will be used.」と記述があるので、先に書いた設定のほうが優先なのかもしれません。