Solusi 1:
Coba Match
di sshd_config
:
Match User user1,user2,user3,user4
PasswordAuthentication no
Atau dengan grup:
Match Group users
PasswordAuthentication no
Atau, seperti yang disebutkan dalam komentar, dengan negasi:
Match User !root
PasswordAuthentication no
Perhatikan bahwa pencocokan efektif "hingga baris Pencocokan lain atau akhir file." (lekukannya tidak signifikan)
Solusi 2:
Match
di sshd_config
bekerja dengan baik. Anda harus menggunakan Match all
untuk mengakhiri blok pencocokan jika Anda menggunakan openssh 6.5p1 atau lebih tinggi. Contoh:
PasswordAuthentication no
Match User root
PasswordAuthentication yes
Match all
Solusi 3:
Ada beberapa cara untuk melakukannya - pertama, Anda dapat menjalankan daemon sshd kedua pada port yang berbeda dengan konfigurasi yang berbeda - ini sedikit meretas, tetapi dengan beberapa pekerjaan chroot seharusnya berfungsi dengan baik.
Selain itu, Anda dapat mengizinkan autentikasi kata sandi, tetapi mengunci kata sandi untuk semua kecuali satu pengguna. Pengguna dengan kata sandi terkunci masih dapat mengautentikasi dengan kunci publik.